<?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>202599</bug_id>
          
          <creation_ts>2019-10-04 13:15:57 -0700</creation_ts>
          <short_desc>InternalFunction::createSubclassStructure should use newTarget&apos;s globalObject</short_desc>
          <delta_ts>2020-04-26 14:31:19 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=174313</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Shvayka">ashvayka</reporter>
          <assigned_to name="Alexey Shvayka">ashvayka</assigned_to>
          <cc>aperez</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1576981</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-10-04 13:15:57 -0700</bug_when>
    <thetext>Test case:
  var iframe = document.createElement(&quot;iframe&quot;)
  document.body.appendChild(iframe)
  var other = iframe.contentWindow
  var newTarget = new other.Function()
  newTarget.prototype = null
  var map = Reflect.construct(Map, [], newTarget)
  Object.getPrototypeOf(map) // ?

Expected:
  other.Map.prototype

Actual:
  Map.prototype

ECMA262:
  Step 2 of https://tc39.es/ecma262/#sec-map-iterable
    Step 2 of https://tc39.es/ecma262/#sec-ordinarycreatefromconstructor (constructor is NewTarget)
      Step 4.b of https://tc39.es/ecma262/#sec-getprototypefromconstructor

Test262:
  Tests named &quot;proto-from-ctor-realm*.js&quot;, for example: https://test262.report/browse/built-ins/Map/proto-from-ctor-realm.js

Both V8 and SpiderMonkey create subclasses with prototypes from correct realms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577062</commentid>
    <comment_count>1</comment_count>
      <attachid>380263</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-10-04 16:11:37 -0700</bug_when>
    <thetext>Created attachment 380263
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577072</commentid>
    <comment_count>2</comment_count>
      <attachid>380266</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-10-04 16:42:55 -0700</bug_when>
    <thetext>Created attachment 380266
Patch

Fix Function constructor invoked with [[Call]].</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577326</commentid>
    <comment_count>3</comment_count>
      <attachid>380319</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-10-07 06:24:00 -0700</bug_when>
    <thetext>Created attachment 380319
Patch

Tweak IntlPluralRulesConstructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588229</commentid>
    <comment_count>4</comment_count>
      <attachid>383050</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-07 08:12:32 -0800</bug_when>
    <thetext>Created attachment 383050
Patch

Drop Intl* changes and rebase patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588232</commentid>
    <comment_count>5</comment_count>
      <attachid>383052</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-07 08:19:04 -0800</bug_when>
    <thetext>Created attachment 383052
Patch

Reword ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588289</commentid>
    <comment_count>6</comment_count>
      <attachid>383052</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-11-07 10:37:09 -0800</bug_when>
    <thetext>Comment on attachment 383052
Patch

Attachment 383052 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/13223159

New failing tests:
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588625</commentid>
    <comment_count>7</comment_count>
      <attachid>383123</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-08 07:00:59 -0800</bug_when>
    <thetext>Created attachment 383123
Patch

Rebase patch and fix async functions constructors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588668</commentid>
    <comment_count>8</comment_count>
      <attachid>383123</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-11-08 09:27:28 -0800</bug_when>
    <thetext>Comment on attachment 383123
Patch

Attachment 383123 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/13226742

New failing tests:
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588703</commentid>
    <comment_count>9</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2019-11-08 10:09:11 -0800</bug_when>
    <thetext>Looks like this broke API tests. Can you look into it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588916</commentid>
    <comment_count>10</comment_count>
      <attachid>383186</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-08 17:23:19 -0800</bug_when>
    <thetext>Created attachment 383186
Patch

Mark TypedArrayConstructors tests as passing and revert Promise changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588953</commentid>
    <comment_count>11</comment_count>
      <attachid>383197</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-08 19:19:27 -0800</bug_when>
    <thetext>Created attachment 383197
Patch

Apologies for all the emails, API tests fail for me even on trunk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588973</commentid>
    <comment_count>12</comment_count>
      <attachid>383197</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-11-08 22:41:20 -0800</bug_when>
    <thetext>Comment on attachment 383197
Patch

Attachment 383197 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/13228852

New failing tests:
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589162</commentid>
    <comment_count>13</comment_count>
      <attachid>383262</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-11 04:15:41 -0800</bug_when>
    <thetext>Created attachment 383262
Patch

Bring back Promise changes and revert Array changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589180</commentid>
    <comment_count>14</comment_count>
      <attachid>383262</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-11-11 06:36:16 -0800</bug_when>
    <thetext>Comment on attachment 383262
Patch

Attachment 383262 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/13238831

New failing tests:
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589190</commentid>
    <comment_count>15</comment_count>
      <attachid>383268</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-11 07:20:10 -0800</bug_when>
    <thetext>Created attachment 383268
Patch

Revert both Array and Promise changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589262</commentid>
    <comment_count>16</comment_count>
      <attachid>383268</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-11-11 10:57:08 -0800</bug_when>
    <thetext>Comment on attachment 383268
Patch

Attachment 383268 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/13239508

New failing tests:
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605387</commentid>
    <comment_count>17</comment_count>
      <attachid>387394</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-01-10 16:35:29 -0800</bug_when>
    <thetext>Created attachment 387394
Patch

Fix API tests and add ASSERTs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605431</commentid>
    <comment_count>18</comment_count>
      <attachid>387394</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-01-10 17:28:45 -0800</bug_when>
    <thetext>Comment on attachment 387394
Patch

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

Nice. But I think this patch is not covering DFG and FTL e.g. operationCreatePromise in DFGOperations invoked by DFG::CreatePromise.

1. Add DFG / FTL handlings.
2. Can you clarify why JSGenerator / JSAsyncGenerator etc. are OK?
3. Why are Wasm constructors OK?
4. Why are Intl constructors OK?

&gt; Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:292
&gt;      }

InternalFunction::createSubclassStructure is used for `slow_path_create_generator`, `slow_path_create_async_generator` etc. Why are they OK? Can you add clarification in ChangeLog?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640897</commentid>
    <comment_count>19</comment_count>
      <attachid>396291</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-13 09:02:36 -0700</bug_when>
    <thetext>Created attachment 396291
Patch

Cover operationCreatePromise (+ add test), WASM &amp; Intl constructors, fix .prototype realm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640898</commentid>
    <comment_count>20</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-13 09:05:49 -0700</bug_when>
    <thetext>I think CreateGenerator / CreateAsyncGenerator need to be supported too, is it correct?
Can you grep InternalFunction::createSubclassStructure to ensure that all the cases are supported?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640903</commentid>
    <comment_count>21</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-13 09:12:18 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #18)
&gt; 1. Add DFG / FTL handlings.

Done (with a test).

&gt; 2. Can you clarify why JSGenerator / JSAsyncGenerator etc. are OK?
&gt; InternalFunction::createSubclassStructure is used for `slow_path_create_generator`, `slow_path_create_async_generator` etc. Why are they OK?

Done, please see ChangeLog.

&gt; 3. Why are Wasm constructors OK?
&gt; 4. Why are Intl constructors OK?

I was planning to cover those in a follow-up patch to simplify review process, but it seems like it would be better to fix all existing InternalFunction::createSubclassStructure() call sites with a single change.

5 of 8 WASM constructors are currently subclassable, all of them are fixed by updated patch. The remaining 3 would require a follow-up patch that adds InternalFunction::createSubclassStructure() with regard to correct realm.

Tests for all WASM constructors are coming in https://github.com/web-platform-tests/wpt/pull/22833. Those tests depend on &quot;wasm-module-builder.js&quot; harness which seems to be broken/outdated in WebKit trunk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640904</commentid>
    <comment_count>22</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-13 09:18:32 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #20)
&gt; I think CreateGenerator / CreateAsyncGenerator need to be supported too, is
&gt; it correct?

They use active function&apos;s (GeneratorFunctionConstructor / AsyncGeneratorFunctionConstructor) realm according to steps 23-24 of https://tc39.es/ecma262/#sec-createdynamicfunction.

&gt; Can you grep InternalFunction::createSubclassStructure to ensure that all
&gt; the cases are supported?

We support all cases in Source/JavaScriptCore except for generators and internal promises. DOM constructors were fixed in https://trac.webkit.org/r256716, HTML custom elements upgrades are also correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640919</commentid>
    <comment_count>23</comment_count>
      <attachid>396291</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-13 09:38:25 -0700</bug_when>
    <thetext>Comment on attachment 396291
Patch

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

&gt; Source/JavaScriptCore/dfg/DFGOperations.cpp:396
&gt; +    JSValue newTarget = callFrame-&gt;newTarget();

This is not correct. CallFrame is per-DFG-CodeBlock. So if your inlined function has different realm to the root DFG CodeBlock, this returns wrong result. And if the root CodeBlock is not constructor call, accessing newTarget is not OK.
I think that this modification is not necessary: globalObject is pointing proper lexical global object to `op_create_promise` bytecode.
Can you ensure this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640922</commentid>
    <comment_count>24</comment_count>
      <attachid>396291</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-13 09:40:42 -0700</bug_when>
    <thetext>Comment on attachment 396291
Patch

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

&gt;&gt; Source/JavaScriptCore/dfg/DFGOperations.cpp:396
&gt;&gt; +    JSValue newTarget = callFrame-&gt;newTarget();
&gt; 
&gt; This is not correct. CallFrame is per-DFG-CodeBlock. So if your inlined function has different realm to the root DFG CodeBlock, this returns wrong result. And if the root CodeBlock is not constructor call, accessing newTarget is not OK.
&gt; I think that this modification is not necessary: globalObject is pointing proper lexical global object to `op_create_promise` bytecode.
&gt; Can you ensure this?

Ah, maybe, some modification is required, but you cannot use `CallFrame::newTarget` here. I think you need to pass newTarget value to CreatePromise DFG node, and you need to modify DFG / FTL code too. Is my understanding correct?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640933</commentid>
    <comment_count>25</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-13 09:52:41 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #24)
&gt; Ah, maybe, some modification is required, but you cannot use
&gt; `CallFrame::newTarget` here. I think you need to pass newTarget value to
&gt; CreatePromise DFG node, and you need to modify DFG / FTL code too. Is my
&gt; understanding correct?

Yes, the stress test this change is adding was failing before DFGOperations.cpp modification.

NewTarget from another realm for Promise is an extremely rare case, maybe we should just fall back to slow path in compileCreatePromise()?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641067</commentid>
    <comment_count>26</comment_count>
      <attachid>396323</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-13 13:19:57 -0700</bug_when>
    <thetext>Created attachment 396323
Patch

Drop CallFrame::newTarget() usage in DFG operation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641069</commentid>
    <comment_count>27</comment_count>
      <attachid>396323</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-13 13:22:50 -0700</bug_when>
    <thetext>Comment on attachment 396323
Patch

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

&gt; Source/JavaScriptCore/dfg/DFGOperations.cpp:397
&gt; +    Structure* baseStructure = constructor-&gt;globalObject(vm)-&gt;promiseStructure();
&gt; +    Structure* structure = InternalFunction::createSubclassStructure(globalObject, globalObject-&gt;promiseConstructor(), constructor, baseStructure);

Oh, yeah, looks correct!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642268</commentid>
    <comment_count>28</comment_count>
      <attachid>396653</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-16 08:48:42 -0700</bug_when>
    <thetext>Created attachment 396653
Patch

Rebase patch on updated test262/expectations.yaml.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642787</commentid>
    <comment_count>29</comment_count>
      <attachid>396784</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-17 13:00:17 -0700</bug_when>
    <thetext>Created attachment 396784
Patch

Introduce getFunctionRealm().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642802</commentid>
    <comment_count>30</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-17 13:42:21 -0700</bug_when>
    <thetext>*** Bug 205669 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642917</commentid>
    <comment_count>31</comment_count>
      <attachid>396784</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-17 18:21:23 -0700</bug_when>
    <thetext>Comment on attachment 396784
Patch

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

r=me

&gt; Source/JavaScriptCore/runtime/InternalFunction.cpp:157
&gt; +    if (auto* boundFunction = jsDynamicCast&lt;JSBoundFunction*&gt;(vm, object))

Use `inherit&lt;JSBoundFunction&gt;` instead of jsDynamicCast. jsDynamicCast uses `LIKELY()` internally, which means that we are saying that this is likely a JSBoundFunction. But it is not.

&gt; Source/JavaScriptCore/runtime/InternalFunction.cpp:160
&gt; +    if (auto* proxy = jsDynamicCast&lt;ProxyObject*&gt;(vm, object)) {

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645770</commentid>
    <comment_count>32</comment_count>
      <attachid>397617</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-26 05:09:32 -0700</bug_when>
    <thetext>Created attachment 397617
Patch

Drop jsDynamicCast, handle Intl.RelativeTimeFormat and mark more tests as passing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645824</commentid>
    <comment_count>33</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-04-26 13:45:00 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #31)
&gt; Use `inherit&lt;JSBoundFunction&gt;` instead of jsDynamicCast. jsDynamicCast uses
&gt; `LIKELY()` internally, which means that we are saying that this is likely a
&gt; JSBoundFunction. But it is not.

Thank you for taking time to review this: it is quite massive.
I&apos;ve used type() == ProxyObjectType as it seems like a common way and feels a bit faster.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645837</commentid>
    <comment_count>34</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-26 14:30:43 -0700</bug_when>
    <thetext>Committed r260732: &lt;https://trac.webkit.org/changeset/260732&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 397617.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645838</commentid>
    <comment_count>35</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-26 14:31:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/62408975&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380263</attachid>
            <date>2019-10-04 16:11:37 -0700</date>
            <delta_ts>2019-10-04 16:42:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191005021136.patch</filename>
            <type>text/plain</type>
            <size>50072</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTA3NTMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTEwLTA0ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDY2IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMC0wNCAgU2Fh
bSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBbGxvdyBPU1IgZXhpdCB0
byB0aGUgTExJbnQKSW5kZXg6IEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHJldmlzaW9uIDI1
MDczNCkKKysrIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAkod29ya2luZyBjb3B5
KQpAQCAtNzA4LDkgKzcwOCw2IEBAIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxp
Y2UvdGgKIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1p
bnRlZ2VyLWxpbWl0LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioq
NTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5MDA3MTk5
MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LC
uywgw4LCqzkwMDcxOTkyNTQ3NDA5OTHDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywg
w4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZl
cl3DgsK7LCDDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVy
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQg
bm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtNzQxLDEyICs3MzgsNiBAQCB0ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvc2xpCiB0ZXN0L2J1aWx0LWlucy9BcnJh
eUl0ZXJhdG9yUHJvdG90eXBlL25leHQvZGV0YWNoLXR5cGVkYXJyYXktaW4tcHJvZ3Jlc3MuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxv
YXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5
cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvQXN5bmNGdW5jdGlv
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBBc3luY0Z1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1
bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScK
LXRlc3QvYnVpbHQtaW5zL0Jvb2xlYW4vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2ZhbHNlw4LCuywgw4LC
q2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvY3VzdG9tLXByb3RvLWFjY2Vzcy1kZXRhY2hlcy1i
dWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9y
IHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03NTYsOSArNzQ3LDYgQEAg
dGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvZGV0YWNoZWQtYnVmZmVyLgogdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvbGVuZ3RoLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9y
IHZhbHVlIHNob3VsZCBiZSAxJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3Jp
cHRvciB2YWx1ZSBzaG91bGQgYmUgMScKLXRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IERhdGFWaWV3XcOCwrssIMOCwqtbb2JqZWN0IERhdGFWaWV3XcOC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXdd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRl
TGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93
biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVF
cnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAg
LTg2MSwxOCArODQ5LDYgQEAgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVp
bgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVpbnQ4L2RldGFjaGVkLWJ1
ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
YnV0IGdvdCBhIFJhbmdlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Rh
dGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVj
dCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3Qg
T2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0temVy
by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtb
b2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9FcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXJyb3LDgsK7LCDDgsKrRXJy
b3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJvcsOCwrspIHRvIGJlIHRydWUnCiB0
ZXN0L2J1aWx0LWlucy9GaW5hbGl6YXRpb25Hcm91cC9GaW5hbGl6YXRpb25Hcm91cENsZWFudXBJ
dGVyYXRvclByb3RvdHlwZS9TeW1ib2wudG9TdHJpbmdUYWcuanM6CiAgIGRlZmF1bHQ6ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogRmluYWxpemF0aW9uR3JvdXAiCiAgIHN0
cmljdCBtb2RlOiAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IEZpbmFsaXph
dGlvbkdyb3VwIgpAQCAtMTA4Myw5ICsxMDU5LDYgQEAgdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24v
aW50ZXJuYWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0
cnVjdC9kZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNl
RXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5j
ZUVycm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwogdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvbGVuZ3RoLWV4Y2VlZHMtaW50MzIuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOC
wqsyMTQ3NDgzNjQ4w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3NDgzNjQ4w4LCuykgdG8g
YmUgdHJ1ZScKQEAgLTEyMDMsOSArMTE3Niw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3By
b3RvdHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmlu
Zy91bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRp
dmVGdW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2
MiA9IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBc
XHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCiAgIHN0cmljdCBt
b2RlOiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdm
dW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVy
biBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBc
XHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlucy9HZW5lcmF0b3JGdW5jdGlv
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKr
W29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEdlbmVyYXRv
ckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXcOCwrspIHRvIGJl
IHRydWUnCiB0ZXN0L2J1aWx0LWlucy9KU09OL3BhcnNlL3Jldml2ZWQtcHJveHkuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IHByb3h5IGZvciBhcnJheSBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogcHJveHkgZm9yIGFycmF5IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1
ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCkBAIC0xMjE1LDMwICsxMTg1LDYgQEAg
dGVzdC9idWlsdC1pbnMvSlNPTi9wYXJzZS9yZXZpdmVyLWFycmF5LQogdGVzdC9idWlsdC1pbnMv
SlNPTi9wYXJzZS9yZXZpdmVyLWFycmF5LWxlbmd0aC1nZXQtZXJyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9u
IHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBNYXBdw4LCuywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywg
w4LCq0V2YWxFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvUmFuZ2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVy
cm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVu
Y2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrUmVmZXJlbmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtS
ZWZlcmVuY2VFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3lu
dGF4RXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5
cGVFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrVHlwZUVycm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrss
IMOCwqtVUklFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1VSSUVycm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL051bWJlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9p
bnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1hcmd1
bWVudHMuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrbnVsbMOCwrssIMOCwqtbb2JqZWN0IEFyZ3VtZW50c13DgsK7KSB0byBiZSB0cnVlJwogdGVz
dC9idWlsdC1pbnMvT2JqZWN0L2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9jb25zaXN0ZW50
LXZhbHVlLWZ1bmN0aW9uLWNhbGxlci5qczoKQEAgLTEyNDksOSArMTE5NSw2IEBAIHRlc3QvYnVp
bHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3cKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9r
ZXlzL3Byb3BlcnR5LXRyYXBzLW9yZGVyLXdpdGgtcHJveGllZC1hcnJheS5qczoKICAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgWyJvd25LZXlzIiwgImdldE93blByb3BlcnR5RGVz
Y3JpcHRvciJdIGFuZCBbIm93bktleXMiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiB1bmRl
ZmluZWQnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbIm93bktleXMi
LCAiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIl0gYW5kIFsib3duS2V5cyJdIHRvIGhhdmUgdGhl
IHNhbWUgY29udGVudHMuIHVuZGVmaW5lZCcKLXRlc3QvYnVpbHQtaW5zL09iamVjdC9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvdHlwZS90b1N0cmluZy9wcm94
eS1mdW5jdGlvbi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBG
dW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
ZnVuY3Rpb24gcHJveHkgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwpAQCAtMTcxMSw5ICsxNjU0
LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvbgogdGVzdC9idWls
dC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvbm9uLWV4aXN0ZW50LXByb3BlcnR5LXZhbHVl
LWdlbmVyYWwtY2F0ZWdvcnkuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVu
dCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MjogVGhp
cyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0ZWQuJwotdGVzdC9idWlsdC1pbnMvUmVn
RXhwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrLyg/Oikvw4LCuywgw4LCqy8oPzopL8OCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9SZWdFeHAvcHJvdG90eXBlL1N5bWJvbC5tYXRjaC9idWlsdGluLWluZmVyLXVuaWNvZGUuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw6/Cv8K9
w4LCuywgw4LCq251bGzDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRv
IGJlIHRydWUnCkBAIC0xNzk4LDEyICsxNzM4LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Vu
aWNvZGVfcmVzdHJpY3RlZAogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3VuaWNvZGVfcmVzdHJpY3Rl
ZF9xdWFudGlmaWFibGVfYXNzZXJ0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBS
ZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3RlZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogUmVnRXhwKCIoPz0uKSoiLCAidSIpOiAgRXhwZWN0ZWQgYSBTeW50YXhFcnJv
ciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKLXRlc3Qv
YnVpbHQtaW5zL1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywgw4LCq1tv
YmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgU2V0XcOCwrssIMOCwqtbb2JqZWN0IFNl
dF3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvLWZyb20tY3Rv
ci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9UaHJvd1R5cGVFcnJvci9leHRlbnNpYmxlLmpzOgogICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFs
c2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKQEAg
LTE4NjksMjEgKzE4MDMsOSBAQCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2N0CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1h
cmcvbGVuZ3RoLXRvLW51bWJlci1kZXRhY2hidWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9i
dWZmZXItYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1
ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1
ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycy9jdG9ycy9sZW5ndGgtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9uby1hcmdzL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy9vYmplY3QtYXJnL2xlbmd0aC1leGNlc3NpdmUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNl
cHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy9vYmplY3QtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9kZXRhY2hlZC13aGVuLXNwZWNp
ZXMtcmV0cmlldmVkLWRpZmZlcmVudC10eXBlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBUeXBlRXJyb3IgdGhyb3duIGZvciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEg
VHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxs
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBUeXBlRXJyb3IgdGhyb3duIGZvciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCkBAIC0xOTExLDkgKzE4MzMsNiBAQCB0
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0CiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL290aGVyLWN0b3ItYnVm
ZmVyLWN0b3Itc3BlY2llcy1wcm90b3R5cGUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3Rv
cnMvdHlwZWRhcnJheS1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3NhbWUtY3Rvci1idWZm
ZXItY3Rvci1hY2Nlc3MtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKQEAgLTIwMTYsOSArMTkzNSw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvb2YvbmV3LWlu
c3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAnVHlwZUVycm9yOiBUeXBl
ZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRB
cnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3Qg
bW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBhcmd1bWVu
dCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0aCBGbG9h
dDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9XZWFrUmVmL2NvbnN0cnVjdG9yLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiB0eXBlb2YgV2Vha1JlZiBpcyBmdW5jdGlvbiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq3VuZGVmaW5lZMOCwrssIMOCwqtmdW5jdGlvbsOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiB0eXBlb2YgV2Vha1JlZiBpcyBmdW5jdGlvbiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq3VuZGVmaW5lZMOCwrssIMOCwqtmdW5jdGlvbsOCwrspIHRvIGJlIHRy
dWUnCkBAIC0yMDk3LDE1ICsyMDEzLDkgQEAgdGVzdC9idWlsdC1pbnMvV2Vha1JlZi90YXJnZXQt
bm90LW9iamVjdAogdGVzdC9idWlsdC1pbnMvV2Vha1JlZi91bmRlZmluZWQtbmV3dGFyZ2V0LXRo
cm93cy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogdHlwZW9mIFdlYWtSZWYgaXMgZnVu
Y3Rpb24gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt1bmRlZmluZWTDgsK7LCDDgsKrZnVuY3Rpb27D
gsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogdHlwZW9mIFdl
YWtSZWYgaXMgZnVuY3Rpb24gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt1bmRlZmluZWTDgsK7LCDD
gsKrZnVuY3Rpb27DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50bDQwMi9Db2xsYXRvci9taXNzaW5nLXVuaWNvZGUt
ZXh0LXZhbHVlLWRlZmF1bHRzLXRvLXRydWUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
ICJrbiIgc2hvdWxkIGJlIHJldHVybmVkIGluIGxvY2FsZS4gRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtmYWxzZcOCwrssIMOCwqt0cnVlw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6ICJrbiIgc2hvdWxkIGJlIHJldHVybmVkIGluIGxvY2FsZS4gRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqt0cnVlw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
aW50bDQwMi9Db2xsYXRvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAy
L0NvbGxhdG9yL3Byb3RvdHlwZS9jb21wYXJlL2NvbXBhcmUtZnVuY3Rpb24tbmFtZS5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgJwpA
QCAtMjEzOSw5ICsyMDQ5LDYgQEAgdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L2NvbnN0cnVj
dG9yLQogdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L251bWJlcmluZy1zeXN0ZW0tY2FsZW5k
YXItb3B0aW9ucy5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogT3B0aW9ucyB2YWx1ZSBm
b3IgcHJvcGVydHkgbnVtYmVyaW5nU3lzdGVtIGRvZXNuJ3Qgb3ZlcnJpZGUgbG9jYWxlIGV4dGVu
c2lvbiBrZXkgbnUuIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrYXJhYsOCwrssIMOCwqtsYXRuw4LC
uykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6ICJUZXN0MjYyRXJyb3I6IE9wdGlvbnMgdmFs
dWUgZm9yIHByb3BlcnR5IG51bWJlcmluZ1N5c3RlbSBkb2Vzbid0IG92ZXJyaWRlIGxvY2FsZSBl
eHRlbnNpb24ga2V5IG51LiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2FyYWLDgsK7LCDDgsKrbGF0
bsOCwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0MDIvRGF0ZVRpbWVGb3JtYXQvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90b3R5cGUv
Zm9ybWF0L2RheVBlcmlvZC1sb25nLWVuLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiAw
MDowMCwgbG9uZyBmb3JtYXQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsxMi8xMi8yMDE3w4LCuywg
w4LCq2F0IG5pZ2h0w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IDAwOjAwLCBsb25nIGZvcm1hdCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzEyLzEyLzIwMTfD
gsK7LCDDgsKrYXQgbmlnaHTDgsK7KSB0byBiZSB0cnVlJwpAQCAtMjE5OSwxOCArMjEwNiwxMiBA
QCB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3ByCiB0ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L251bWJlcmluZy1zeXN0ZW0tb3B0aW9ucy5qczoKICAgZGVmYXVsdDogIlRl
c3QyNjJFcnJvcjogT3B0aW9ucyB2YWx1ZSBmb3IgcHJvcGVydHkgbnVtYmVyaW5nU3lzdGVtIGRv
ZXNuJ3Qgb3ZlcnJpZGUgbG9jYWxlIGV4dGVuc2lvbiBrZXkgbnUuIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrYXJhYsOCwrssIMOCwqtsYXRuw4LCuykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6
ICJUZXN0MjYyRXJyb3I6IE9wdGlvbnMgdmFsdWUgZm9yIHByb3BlcnR5IG51bWJlcmluZ1N5c3Rl
bSBkb2Vzbid0IG92ZXJyaWRlIGxvY2FsZSBleHRlbnNpb24ga2V5IG51LiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq2FyYWLDgsK7LCDDgsKrbGF0bsOCwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0
MDIvTnVtYmVyRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rd
w4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L3Byb3RvdHlwZS9mb3JtYXQvZm9ybWF0LWZ1bmN0aW9uLW5hbWUuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlICcKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlICcK
IHRlc3QvaW50bDQwMi9OdW1iZXJGb3JtYXQvcHJvdG90eXBlL2Zvcm1hdC9mb3JtYXQtbmVnYXRp
dmUtbnVtYmVycy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogSW50bC5OdW1iZXJGb3Jt
YXQgaXMgZm9ybWF0dGluZyAwIGFuZCAtMCB0aGUgc2FtZSB3YXkuIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUgZmFsc2UnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBJbnRsLk51bWJlckZvcm1hdCBpcyBmb3JtYXR0aW5nIDAgYW5kIC0wIHRoZSBz
YW1lIHdheS4gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsww4LCuywgw4LCqzDDgsK7KSB0byBiZSBm
YWxzZScKLXRlc3QvaW50bDQwMi9QbHVyYWxSdWxlcy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmpl
Y3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9pbnRsNDAyL2xhbmd1YWdlLXRhZ3MtaW52YWxpZC5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogVGVzdCBkYXRhICJkZS1ncmVnb3J5LWdyZWdvcnkiIGlzIGEgY2Fub25pY2Fs
aXplZCBhbmQgc3RydWN0dXJhbGx5IHZhbGlkIGxhbmd1YWdlIHRhZy4nCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBUZXN0IGRhdGEgImRlLWdyZWdvcnktZ3JlZ29yeSIgaXMgYSBjYW5v
bmljYWxpemVkIGFuZCBzdHJ1Y3R1cmFsbHkgdmFsaWQgbGFuZ3VhZ2UgdGFnLicKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYzIEBACisyMDE5LTEw
LTA0ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1Rh
cmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSW4gW1tDb25zdHJ1Y3RdXSwgaWYgYGNvbnN0cnVjdG9yLnByb3RvdHlwZWAg
aXMgbm90IGFuIG9iamVjdCwgZGVmYXVsdCBwcm90b3R5cGUgb2YgcmVhbG0gaXMgdXNlZC4KKyAg
ICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29uc3RydWN0b3Igd2Fz
IHVzZWQgdG8gZ2V0IGEgYmFzZSBzdHJ1Y3R1cmUgZnJvbS4KKworICAgICAgICBQZXIgc3BlYyAo
Zm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLW1hcC1j
b25zdHJ1Y3RvciksIE5ld1RhcmdldCBpcyBwYXNzZWQgdG8KKyAgICAgICAgR2V0UHJvdG90eXBl
RnJvbUNvbnN0cnVjdG9yLiBUaGlzIHBhdGNoIGFsaWducyBtb3N0IG9mIHRoZSBjb25zdHJ1Y3Rv
cnMgKGV4Y2VwdCBmb3IgQXJyYXkgYW5kIFByb21pc2UsCisgICAgICAgIHdoaWNoIHdpbGwgYmUg
Zml4ZWQgaW4gYSBmb2xsb3ctdXApIHdpdGggdGhlIHNwZWMsIFY4LCBhbmQgU3BpZGVyTW9ua2V5
LgorCisgICAgICAgICogcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1l
L0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhEYXRlQ29u
c3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEZ1bmN0aW9u
U2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKToKKyAgICAgICAgKiBydW50aW1lL0ludGxDb2xsYXRv
ckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bENvbGxhdG9yKToK
KyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50
aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0
cnVjdEludGxOdW1iZXJGb3JtYXQpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRsUGx1cmFsUnVsZXMp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNv
bnN0cnVjdEFycmF5QnVmZmVyKToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVy
aWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
cjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAg
KiBydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUv
UmVnRXhwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpyZWdFeHBDcmVhdGUpOgorICAg
ICAgICAoSlNDOjpjb25zdHJ1Y3RSZWdFeHApOgorICAgICAgICAoSlNDOjplc1NwZWNSZWdFeHBD
cmVhdGUpOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoUmVnRXhwQ29uc3RydWN0b3IpOgor
ICAgICAgICAoSlNDOjpnZXRSZWdFeHBTdHJ1Y3R1cmUpOiBEZWxldGVkLgorICAgICAgICAqIHJ1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1NldENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0U2V0KToKKyAgICAgICAgKiBydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aFN0cmlu
Z0NvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtNYXApOgorICAgICAgICAqIHJ1bnRpbWUvV2Vh
a09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1Jl
Zik6CisgICAgICAgICogcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXZWFrU2V0KToKKwogMjAxOS0xMC0wNCAgVHJ1aXR0IFNhdmVsbCAgPHRz
YXZlbGxAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyNTA1
ODMuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xl
YW5Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQz
LDcgKzQzLDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAg
IFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogICAgIEpTVmFsdWUgYm9vbGVhbiA9IGpzQm9vbGVhbihleGVjLT5hcmd1bWVudCgw
KS50b0Jvb2xlYW4oZXhlYykpOwotICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1Rh
cmdldCgpLCBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9i
YWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3
VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2Jq
ZWN0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmplY3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6OmNyZWF0
ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAgICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVlKHZtLCBi
b29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDgg
KzE1Miw5IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3REYXRlKEV4ZWNTdGF0ZSogZXhlYywKICAgICAK
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhEYXRlQ29u
c3RydWN0b3IoRXhlY1N0YXRlKiBleGVjKQogeworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhl
Yy0+bmV3VGFyZ2V0KCk7CiAgICAgQXJnTGlzdCBhcmdzKGV4ZWMpOwotICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoY29uc3RydWN0RGF0ZShleGVjLCBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+
KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9iYWxPYmplY3QoZXhlYy0+dm0oKSksIGV4ZWMtPm5ld1Rh
cmdldCgpLCBhcmdzKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3REYXRl
KGV4ZWMsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdChleGVjLT52bSgpKSwgbmV3
VGFyZ2V0LCBhcmdzKSk7CiB9CiAKIC8vIEVDTUEgMTUuOS4yCkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24g
MjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zdHJ1Y3RFcgogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9
IGV4ZWMtPmFyZ3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBleGVjLT5uZXdUYXJn
ZXQoKSwganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFs
T2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBl
eGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0cnVjdHVyZSgpKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVh
dGUoZXhlYywgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBm
YWxzZSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9u
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTUyLDE5ICsxNTIsMjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tp
cHBpbmdFdmFsRQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2Jh
bE9iamVjdCogbmV3VGFyZ2V0R2xvYmFsT2JqZWN0ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKTsKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IG51bGxwdHI7CiAgICAg
c3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGUpIHsKICAgICBjYXNlIEZ1bmN0aW9uQ29u
c3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246
OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7Cisg
ICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNF
eHAobmV3VGFyZ2V0R2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpHZW5lcmF0b3I6Ci0gICAgICAgIHN0cnVj
dHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAg
ICAgc3RydWN0dXJlID0gbmV3VGFyZ2V0R2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0
cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9u
TW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNGdW5j
dGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBuZXdUYXJnZXRHbG9iYWxPYmpl
Y3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBG
dW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9yOgotICAgICAgICBzdHJ1Y3R1
cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAg
ICAgICAgc3RydWN0dXJlID0gbmV3VGFyZ2V0R2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1
bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Myw3
ICs5Myw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAv
LyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3Rp
dmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAg
IC8vIDIuIExldCBjb2xsYXRvciBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdU
YXJnZXQsICVDb2xsYXRvclByb3RvdHlwZSUpLgogICAgIC8vIDMuIFJldHVybklmQWJydXB0KGNv
bGxhdG9yKS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJ
bnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcio+KHN0YXRlLT5qc0NhbGxlZSgpKS0+Y29sbGF0b3JTdHJ1
Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IHN0YXRlLT5uZXdUYXJnZXQoKTsK
KyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKHN0YXRlLCBuZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2Jh
bE9iamVjdCh2bSktPmNvbGxhdG9yU3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxDb2xsYXRvciogY29sbGF0b3Ig
PSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQoY29sbGF0
b3IpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29u
c3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Myw3ICs5Myw4IEBAIHN0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMg
dW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBl
bHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBkYXRlVGltZUZv
cm1hdCBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVEYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZSUpLgogICAgIC8vIDMuIFJldHVybklmQWJydXB0KGRhdGVUaW1lRm9y
bWF0KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KHN0YXRlLT5qc0NhbGxlZSgpKS0+ZGF0ZVRpbWVG
b3JtYXRTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IHN0YXRlLT5uZXdU
YXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBuZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1Rhcmdl
dCktPmdsb2JhbE9iamVjdCh2bSktPmRhdGVUaW1lRm9ybWF0U3RydWN0dXJlKCkpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxEYXRl
VGltZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQgPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2
bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9y
bWF0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC05Myw3ICs5Myw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0
IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3
VGFyZ2V0LgogICAgIC8vIDIuIExldCBudW1iZXJGb3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9t
Q29uc3RydWN0b3IobmV3VGFyZ2V0LCAlTnVtYmVyRm9ybWF0UHJvdG90eXBlJSkuCiAgICAgLy8g
My4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0
ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IqPihzdGF0
ZS0+anNDYWxsZWUoKSktPm51bWJlckZvcm1hdFN0cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUg
bmV3VGFyZ2V0ID0gc3RhdGUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoc3RhdGUsIG5ld1Rh
cmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+bnVtYmVyRm9ybWF0
U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1Zh
bHVlKCkpOwogICAgIEludGxOdW1iZXJGb3JtYXQqIG51bWJlckZvcm1hdCA9IEludGxOdW1iZXJG
b3JtYXQ6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQobnVtYmVyRm9ybWF0KTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtOTAsNyArOTAsOCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zCiAKICAgICAvLyAxMy4yLjEgSW50bC5QbHVyYWxSdWxlcyAoWyBsb2Nh
bGVzIFsgLCBvcHRpb25zIF0gXSkKICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWE0
MDIvI3NlYy1pbnRsLnBsdXJhbHJ1bGVzCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShzdGF0ZSwgc3RhdGUtPm5ld1Rh
cmdldCgpLCBqc0Nhc3Q8SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IqPihzdGF0ZS0+anNDYWxs
ZWUoKSktPnBsdXJhbFJ1bGVzU3RydWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQg
PSBzdGF0ZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShzdGF0ZSwgc3RhdGUtPm5ld1Rhcmdl
dCgpLCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5wbHVyYWxSdWxlc1N0
cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1
ZSgpKTsKICAgICBJbnRsUGx1cmFsUnVsZXMqIHBsdXJhbFJ1bGVzID0gSW50bFBsdXJhbFJ1bGVz
OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgQVNTRVJUKHBsdXJhbFJ1bGVzKTsKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1
ZmZlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNzksOSArNzksOCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTR2VuZXJp
Y0FyCiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0dlbmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKiBj
b25zdHJ1Y3RvciA9IGpzQ2FzdDxKU0dlbmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKj4oZXhl
Yy0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3
VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3Qodm0pLT5hcnJheUJ1ZmZlclN0cnVj
dHVyZShzaGFyaW5nTW9kZSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFy
Z2V0KCk7CisgICAgU3RydWN0dXJlKiBhcnJheUJ1ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3Qo
bmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmlu
Z01vZGUpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgdW5z
aWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5l
cmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVj
dG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDkgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSW50ZXJuYWxGdW5jdGlvbiogZnVuY3Rp
b24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpzQ2FsbGVlKCkpOwotICAgIFN0
cnVjdHVyZSogcGFyZW50U3RydWN0dXJlID0gZnVuY3Rpb24tPmdsb2JhbE9iamVjdCh2bSktPnR5
cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5U3RvcmFnZVR5cGUpOwotICAg
IFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIHBhcmVudFN0cnVjdHVyZSk7CisgICAg
SlNWYWx1ZSBuZXdUYXJnZXQgPSBleGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHBh
cmVudFN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPnR5
cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5U3RvcmFnZVR5cGUpOworICAg
IFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBwYXJlbnRTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgc2l6ZV90IGFyZ0Nv
dW50ID0gZXhlYy0+YXJndW1lbnRDb3VudCgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC02Nyw4ICs2Nyw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGNvbnMKICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qg
PSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9iYWxPYmpl
Y3Qodm0pOwotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGdsb2JhbE9i
amVjdC0+bWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3
VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBtYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBuZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdCh2bSktPm1hcFN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIEpTVmFsdWUgaXRlcmFi
bGUgPSBleGVjLT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0
cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUsOCBAQCBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIE5hdGl2ZUVycm9yCiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAg
ICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNz
YWdlID0gZXhlYy0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5l
d1RhcmdldCgpLCBqc0Nhc3Q8TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcio+KGV4ZWMtPmpzQ2FsbGVl
KCkpLT5lcnJvclN0cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+
bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3Qo
bmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKSk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAg
QVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpT
VmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZXhlYywgZXJyb3JTdHJ1Y3R1cmUs
IG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAJKHJl
dmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNv
bnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIsNyArOTIsOCBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogICAgIGRvdWJsZSBuID0gZXhlYy0+YXJndW1lbnRDb3VudCgpID8g
ZXhlYy0+dW5jaGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIoZXhlYykgOiAwOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIFN0cnVjdHVyZSog
c3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhl
YywgZXhlYy0+bmV3VGFyZ2V0KCksIGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKS0+bnVtYmVy
T2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFy
Z2V0KCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBuZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1RhcmdldCkt
Pmdsb2JhbE9iamVjdCh2bSktPm51bWJlck9iamVjdFN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIE51bWJlck9iamVj
dCogb2JqZWN0ID0gTnVtYmVyT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9P
YmplY3RDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExOSw3ICsxMTksNiBAQCBz
dGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVjdCogY29uc3RydWN0CiB7CiAgICAgVk0mIHZtID0g
ZXhlYy0+dm0oKTsKICAgICBPYmplY3RDb25zdHJ1Y3Rvciogb2JqZWN0Q29uc3RydWN0b3IgPSBq
c0Nhc3Q8T2JqZWN0Q29uc3RydWN0b3IqPihleGVjLT5qc0NhbGxlZSgpKTsKLSAgICBKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gb2JqZWN0Q29uc3RydWN0b3ItPmdsb2JhbE9iamVjdCh2
bSk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCiAgICAgLy8g
V2UgbmVlZCB0byBjaGVjayBuZXdUYXJnZXQgY29uZGl0aW9uIGluIHRoaXMgY2FsbGVyIHNpZGUg
aW5zdGVhZCBvZiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaWRl
LgpAQCAtMTI4LDYgKzEyNyw3IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTT2JqZWN0KiBjb25z
dHJ1Y3QKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgbmVpdGhlciB1bmRlZmluZWQgbm9yIHRo
ZSBhY3RpdmUgZnVuY3Rpb24sIHRoZW4KICAgICBpZiAobmV3VGFyZ2V0ICYmIG5ld1RhcmdldCAh
PSBvYmplY3RDb25zdHJ1Y3RvcikgewogICAgICAgICAvLyBhLiBSZXR1cm4gPyBPcmRpbmFyeUNy
ZWF0ZUZyb21Db25zdHJ1Y3RvcihOZXdUYXJnZXQsICIlT2JqZWN0UHJvdG90eXBlJSIpLgorICAg
ICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKTsKICAgICAgICAgU3RydWN0dXJlKiBvYmplY3RTdHJ1Y3R1cmUgPSBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBuZXdUYXJnZXQs
IGdsb2JhbE9iamVjdC0+b2JqZWN0U3RydWN0dXJlRm9yT2JqZWN0Q29uc3RydWN0b3IoKSk7CiAg
ICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAgICByZXR1
cm4gY29uc3RydWN0RW1wdHlPYmplY3QoZXhlYywgb2JqZWN0U3RydWN0dXJlKTsKQEAgLTEzNiw2
ICsxMzYsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVjdCogY29uc3RydWN0CiAgICAg
Ly8gMi4gSWYgdmFsdWUgaXMgbnVsbCwgdW5kZWZpbmVkIG9yIG5vdCBzdXBwbGllZCwgcmV0dXJu
IE9iamVjdENyZWF0ZSglT2JqZWN0UHJvdG90eXBlJSkuCiAgICAgQXJnTGlzdCBhcmdzKGV4ZWMp
OwogICAgIEpTVmFsdWUgYXJnID0gYXJncy5hdCgwKTsKKyAgICBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0ID0gb2JqZWN0Q29uc3RydWN0b3ItPmdsb2JhbE9iamVjdCh2bSk7CiAgICAgaWYg
KGFyZy5pc1VuZGVmaW5lZE9yTnVsbCgpKQogICAgICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlP
YmplY3QoZXhlYywgZ2xvYmFsT2JqZWN0LT5vYmplY3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1
Y3RvcigpKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29u
c3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xNzcsMTQgKzE3Nyw2IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoRXhl
Y1MKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWlubGluZSBTdHJ1Y3R1cmUqIGdldFJlZ0V4cFN0
cnVjdHVyZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgbmV3VGFyZ2V0KQotewotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZ2xvYmFsT2Jq
ZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFyZ2V0ICE9IGpzVW5kZWZpbmVk
KCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgc3RydWN0dXJlKTsKLSAgICByZXR1cm4gc3RydWN0
dXJlOwotfQotCiBpbmxpbmUgT3B0aW9uU2V0PFlhcnI6OkZsYWdzPiB0b0ZsYWdzKEV4ZWNTdGF0
ZSogZXhlYywgSlNWYWx1ZSBmbGFncykKIHsKICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwpAQCAt
MjIwLDcgKzIxMiw3IEBAIHN0YXRpYyBKU09iamVjdCogcmVnRXhwQ3JlYXRlKEV4ZWNTdGF0ZSoK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUgPSBnZXRSZWdFeHBTdHJ1Y3R1cmUoZXhlYywgZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQpOwor
ICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVy
ZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICByZXR1
cm4gUmVnRXhwT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSwgcmVnRXhwKTsKIH0KQEAgLTIz
Niw3ICsyMjgsNyBAQCBKU09iamVjdCogY29uc3RydWN0UmVnRXhwKEV4ZWNTdGF0ZSogZXhlCiAg
ICAgYm9vbCBjb25zdHJ1Y3RBc1JlZ2V4cCA9IGlzUmVnRXhwKHZtLCBleGVjLCBwYXR0ZXJuQXJn
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAotICAgIGlmIChu
ZXdUYXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5p
c1VuZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdUYXJnZXQgJiYgY29uc3RydWN0QXNSZWdleHAg
JiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU1ZhbHVlIGNvbnN0cnVjdG9y
ID0gcGF0dGVybkFyZy5nZXQoZXhlYywgdm0ucHJvcGVydHlOYW1lcy0+Y29uc3RydWN0b3IpOwog
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICAgICAgaWYg
KGNhbGxlZSA9PSBjb25zdHJ1Y3RvcikgewpAQCAtMjQ3LDcgKzIzOSw3IEBAIEpTT2JqZWN0KiBj
b25zdHJ1Y3RSZWdFeHAoRXhlY1N0YXRlKiBleGUKIAogICAgIGlmIChpc1BhdHRlcm5SZWdFeHAp
IHsKICAgICAgICAgUmVnRXhwKiByZWdFeHAgPSBqc0Nhc3Q8UmVnRXhwT2JqZWN0Kj4ocGF0dGVy
bkFyZyktPnJlZ0V4cCgpOwotICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGdldFJlZ0V4
cFN0cnVjdHVyZShleGVjLCBnbG9iYWxPYmplY3QsIG5ld1RhcmdldCk7CisgICAgICAgIFN0cnVj
dHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZXhlYywgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICAgICAgaWYg
KCFmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CkBAIC0yODIsMTMgKzI3NCwxNSBAQCBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY1JlZ0V4CiAgICAgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCA9IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKTsKICAgICBKU1ZhbHVlIHBh
dHRlcm5BcmcgPSBleGVjLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIGZsYWdzQXJnID0gZXhl
Yy0+YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUo
ZXhlYywgZ2xvYmFsT2JqZWN0LCBqc1VuZGVmaW5lZCgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykp
OworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3JlYXRlKGV4ZWMsIGdsb2JhbE9i
amVjdCwgSlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOwogfQogCiBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRoUmVnRXhwQ29uc3RydWN0b3Io
RXhlY1N0YXRlKiBleGVjKQogeworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFy
Z2V0KCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdChleGVjLT52bSgpKTsKICAgICBBcmdMaXN0IGFyZ3MoZXhlYyk7
Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RSZWdFeHAoZXhlYywganNDYXN0
PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0KGV4ZWMt
PnZtKCkpLCBhcmdzLCBleGVjLT5qc0NhbGxlZSgpLCBleGVjLT5uZXdUYXJnZXQoKSkpOworICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0UmVnRXhwKGV4ZWMsIGdsb2JhbE9iamVj
dCwgYXJncywgZXhlYy0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0KSk7CiB9CiAKIHN0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxSZWdFeHBDb25zdHJ1Y3RvcihFeGVjU3RhdGUq
IGV4ZWMpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1
Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4
cENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU4LDcgKzU4
LDcgQEAgcHJpdmF0ZToKIAogc3RhdGljX2Fzc2VydChzaXplb2YoUmVnRXhwQ29uc3RydWN0b3Ip
ID09IHNpemVvZihJbnRlcm5hbEZ1bmN0aW9uKSwgIiIpOwogCi1KU09iamVjdCogY29uc3RydWN0
UmVnRXhwKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYsIEpTT2Jq
ZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVlIG5ld1RhcmdldCA9IGpzVW5kZWZpbmVkKCkp
OworSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCos
IGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdU
YXJnZXQgPSBKU1ZhbHVlKCkpOwogCiBBTFdBWVNfSU5MSU5FIGJvb2wgaXNSZWdFeHAoVk0mIHZt
LCBFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUpCiB7CkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3
MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTY3LDggKzY3LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oZXhlYy0+anNDYWxsZWUoKSktPmds
b2JhbE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJlKiBzZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBleGVjLT5uZXdUYXJnZXQoKSwg
Z2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBl
eGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+c2V0U3RydWN0dXJlKCkpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1
ZSBpdGVyYWJsZSA9IGV4ZWMtPmFyZ3VtZW50KDApOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUw
NzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDIsMTAgKzE0Miw5IEBAIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIHN0cmkKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMpCiB7CiAg
ICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKLSAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
ID0ganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFsT2Jq
ZWN0KHZtKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7Ci0KLSAg
ICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPnN0cmluZ09i
amVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGV4ZWMtPm5ld1Rhcmdl
dCgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5n
bG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBpZiAoIWV4ZWMtPmFy
Z3VtZW50Q291bnQoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtN
YXBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNjUsOCArNjUsOCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBjb25zCiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFS
RV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0g
anNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0
KHZtKTsKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBleGVjLT5uZXdUYXJnZXQoKSwgZ2xvYmFs
T2JqZWN0LT53ZWFrTWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhl
Yy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFrTWFwU3RydWN0dXJlKCkpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEpT
V2Vha01hcCogd2Vha01hcCA9IEpTV2Vha01hcDo6Y3JlYXRlKHZtLCB3ZWFrTWFwU3RydWN0dXJl
KTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gZXhlYy0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZD
b25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTY4LDggKzY4LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwog
ICAgIGlmICghZXhlYy0+YXJndW1lbnQoMCkuaXNPYmplY3QoKSkKICAgICAgICAgcmV0dXJuIHRo
cm93Vk1UeXBlRXJyb3IoZXhlYywgc2NvcGUsICJGaXJzdCBhcmd1bWVudCB0byBXZWFrUmVmIHNo
b3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0gICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oZXhlYy0+anNDYWxsZWUoKSktPmdsb2JhbE9i
amVjdCh2bSk7Ci0gICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0
KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGV4ZWMtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogV2Vha09iamVj
dFJlZlN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+
d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFs
dWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwgV2Vha09iamVjdFJlZlN0cnVj
dHVyZSwgZXhlYy0+dW5jaGVja2VkQXJndW1lbnQoMCkuZ2V0T2JqZWN0KCkpKSk7CiB9CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1
Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1LDggKzY1LDgg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9
IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwog
Ci0gICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0
aW9uKj4oZXhlYy0+anNDYWxsZWUoKSktPmdsb2JhbE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJl
KiB3ZWFrU2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha1NldFN0cnVj
dHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGV4ZWMtPm5ld1RhcmdldCgpOworICAg
IFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKS0+d2Vha1NldFN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBK
U1dlYWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVy
YWJsZSA9IGV4ZWMtPmFyZ3VtZW50KDApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380266</attachid>
            <date>2019-10-04 16:42:55 -0700</date>
            <delta_ts>2019-10-07 06:24:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191005024254.patch</filename>
            <type>text/plain</type>
            <size>50099</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTA3NTMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTEwLTA0ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDY2IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMC0wNCAgU2Fh
bSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBbGxvdyBPU1IgZXhpdCB0
byB0aGUgTExJbnQKSW5kZXg6IEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHJldmlzaW9uIDI1
MDczNCkKKysrIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAkod29ya2luZyBjb3B5
KQpAQCAtNzA4LDkgKzcwOCw2IEBAIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxp
Y2UvdGgKIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1p
bnRlZ2VyLWxpbWl0LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioq
NTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5MDA3MTk5
MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LC
uywgw4LCqzkwMDcxOTkyNTQ3NDA5OTHDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywg
w4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZl
cl3DgsK7LCDDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVy
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQg
bm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtNzQxLDEyICs3MzgsNiBAQCB0ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvc2xpCiB0ZXN0L2J1aWx0LWlucy9BcnJh
eUl0ZXJhdG9yUHJvdG90eXBlL25leHQvZGV0YWNoLXR5cGVkYXJyYXktaW4tcHJvZ3Jlc3MuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxv
YXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5
cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvQXN5bmNGdW5jdGlv
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBBc3luY0Z1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1
bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScK
LXRlc3QvYnVpbHQtaW5zL0Jvb2xlYW4vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2ZhbHNlw4LCuywgw4LC
q2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvY3VzdG9tLXByb3RvLWFjY2Vzcy1kZXRhY2hlcy1i
dWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9y
IHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03NTYsOSArNzQ3LDYgQEAg
dGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvZGV0YWNoZWQtYnVmZmVyLgogdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvbGVuZ3RoLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9y
IHZhbHVlIHNob3VsZCBiZSAxJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3Jp
cHRvciB2YWx1ZSBzaG91bGQgYmUgMScKLXRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IERhdGFWaWV3XcOCwrssIMOCwqtbb2JqZWN0IERhdGFWaWV3XcOC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXdd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRl
TGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93
biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVF
cnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAg
LTg2MSwxOCArODQ5LDYgQEAgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVp
bgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVpbnQ4L2RldGFjaGVkLWJ1
ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
YnV0IGdvdCBhIFJhbmdlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Rh
dGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVj
dCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3Qg
T2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0temVy
by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtb
b2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9FcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXJyb3LDgsK7LCDDgsKrRXJy
b3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJvcsOCwrspIHRvIGJlIHRydWUnCiB0
ZXN0L2J1aWx0LWlucy9GaW5hbGl6YXRpb25Hcm91cC9GaW5hbGl6YXRpb25Hcm91cENsZWFudXBJ
dGVyYXRvclByb3RvdHlwZS9TeW1ib2wudG9TdHJpbmdUYWcuanM6CiAgIGRlZmF1bHQ6ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogRmluYWxpemF0aW9uR3JvdXAiCiAgIHN0
cmljdCBtb2RlOiAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IEZpbmFsaXph
dGlvbkdyb3VwIgpAQCAtMTA4Myw5ICsxMDU5LDYgQEAgdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24v
aW50ZXJuYWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0
cnVjdC9kZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNl
RXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5j
ZUVycm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwogdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvbGVuZ3RoLWV4Y2VlZHMtaW50MzIuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOC
wqsyMTQ3NDgzNjQ4w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3NDgzNjQ4w4LCuykgdG8g
YmUgdHJ1ZScKQEAgLTEyMDMsOSArMTE3Niw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3By
b3RvdHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmlu
Zy91bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRp
dmVGdW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2
MiA9IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBc
XHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCiAgIHN0cmljdCBt
b2RlOiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdm
dW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVy
biBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBc
XHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlucy9HZW5lcmF0b3JGdW5jdGlv
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKr
W29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEdlbmVyYXRv
ckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXcOCwrspIHRvIGJl
IHRydWUnCiB0ZXN0L2J1aWx0LWlucy9KU09OL3BhcnNlL3Jldml2ZWQtcHJveHkuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IHByb3h5IGZvciBhcnJheSBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogcHJveHkgZm9yIGFycmF5IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1
ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCkBAIC0xMjE1LDMwICsxMTg1LDYgQEAg
dGVzdC9idWlsdC1pbnMvSlNPTi9wYXJzZS9yZXZpdmVyLWFycmF5LQogdGVzdC9idWlsdC1pbnMv
SlNPTi9wYXJzZS9yZXZpdmVyLWFycmF5LWxlbmd0aC1nZXQtZXJyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9u
IHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBNYXBdw4LCuywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywg
w4LCq0V2YWxFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvUmFuZ2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVy
cm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVu
Y2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrUmVmZXJlbmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtS
ZWZlcmVuY2VFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3lu
dGF4RXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5
cGVFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrVHlwZUVycm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrss
IMOCwqtVUklFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1VSSUVycm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL051bWJlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9p
bnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1hcmd1
bWVudHMuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrbnVsbMOCwrssIMOCwqtbb2JqZWN0IEFyZ3VtZW50c13DgsK7KSB0byBiZSB0cnVlJwogdGVz
dC9idWlsdC1pbnMvT2JqZWN0L2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9jb25zaXN0ZW50
LXZhbHVlLWZ1bmN0aW9uLWNhbGxlci5qczoKQEAgLTEyNDksOSArMTE5NSw2IEBAIHRlc3QvYnVp
bHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3cKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9r
ZXlzL3Byb3BlcnR5LXRyYXBzLW9yZGVyLXdpdGgtcHJveGllZC1hcnJheS5qczoKICAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgWyJvd25LZXlzIiwgImdldE93blByb3BlcnR5RGVz
Y3JpcHRvciJdIGFuZCBbIm93bktleXMiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiB1bmRl
ZmluZWQnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbIm93bktleXMi
LCAiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIl0gYW5kIFsib3duS2V5cyJdIHRvIGhhdmUgdGhl
IHNhbWUgY29udGVudHMuIHVuZGVmaW5lZCcKLXRlc3QvYnVpbHQtaW5zL09iamVjdC9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvdHlwZS90b1N0cmluZy9wcm94
eS1mdW5jdGlvbi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBG
dW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
ZnVuY3Rpb24gcHJveHkgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwpAQCAtMTcxMSw5ICsxNjU0
LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvbgogdGVzdC9idWls
dC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvbm9uLWV4aXN0ZW50LXByb3BlcnR5LXZhbHVl
LWdlbmVyYWwtY2F0ZWdvcnkuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVu
dCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MjogVGhp
cyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0ZWQuJwotdGVzdC9idWlsdC1pbnMvUmVn
RXhwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrLyg/Oikvw4LCuywgw4LCqy8oPzopL8OCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9SZWdFeHAvcHJvdG90eXBlL1N5bWJvbC5tYXRjaC9idWlsdGluLWluZmVyLXVuaWNvZGUuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw6/Cv8K9
w4LCuywgw4LCq251bGzDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRv
IGJlIHRydWUnCkBAIC0xNzk4LDEyICsxNzM4LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Vu
aWNvZGVfcmVzdHJpY3RlZAogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3VuaWNvZGVfcmVzdHJpY3Rl
ZF9xdWFudGlmaWFibGVfYXNzZXJ0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBS
ZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3RlZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogUmVnRXhwKCIoPz0uKSoiLCAidSIpOiAgRXhwZWN0ZWQgYSBTeW50YXhFcnJv
ciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKLXRlc3Qv
YnVpbHQtaW5zL1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywgw4LCq1tv
YmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgU2V0XcOCwrssIMOCwqtbb2JqZWN0IFNl
dF3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvLWZyb20tY3Rv
ci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9UaHJvd1R5cGVFcnJvci9leHRlbnNpYmxlLmpzOgogICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFs
c2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKQEAg
LTE4NjksMjEgKzE4MDMsOSBAQCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2N0CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1h
cmcvbGVuZ3RoLXRvLW51bWJlci1kZXRhY2hidWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9i
dWZmZXItYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1
ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1
ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycy9jdG9ycy9sZW5ndGgtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9uby1hcmdzL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy9vYmplY3QtYXJnL2xlbmd0aC1leGNlc3NpdmUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNl
cHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy9vYmplY3QtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9kZXRhY2hlZC13aGVuLXNwZWNp
ZXMtcmV0cmlldmVkLWRpZmZlcmVudC10eXBlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBUeXBlRXJyb3IgdGhyb3duIGZvciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEg
VHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxs
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBUeXBlRXJyb3IgdGhyb3duIGZvciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCkBAIC0xOTExLDkgKzE4MzMsNiBAQCB0
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0CiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL290aGVyLWN0b3ItYnVm
ZmVyLWN0b3Itc3BlY2llcy1wcm90b3R5cGUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3Rv
cnMvdHlwZWRhcnJheS1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3NhbWUtY3Rvci1idWZm
ZXItY3Rvci1hY2Nlc3MtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKQEAgLTIwMTYsOSArMTkzNSw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvb2YvbmV3LWlu
c3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAnVHlwZUVycm9yOiBUeXBl
ZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRB
cnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3Qg
bW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBhcmd1bWVu
dCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0aCBGbG9h
dDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9XZWFrUmVmL2NvbnN0cnVjdG9yLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiB0eXBlb2YgV2Vha1JlZiBpcyBmdW5jdGlvbiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq3VuZGVmaW5lZMOCwrssIMOCwqtmdW5jdGlvbsOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiB0eXBlb2YgV2Vha1JlZiBpcyBmdW5jdGlvbiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq3VuZGVmaW5lZMOCwrssIMOCwqtmdW5jdGlvbsOCwrspIHRvIGJlIHRy
dWUnCkBAIC0yMDk3LDE1ICsyMDEzLDkgQEAgdGVzdC9idWlsdC1pbnMvV2Vha1JlZi90YXJnZXQt
bm90LW9iamVjdAogdGVzdC9idWlsdC1pbnMvV2Vha1JlZi91bmRlZmluZWQtbmV3dGFyZ2V0LXRo
cm93cy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogdHlwZW9mIFdlYWtSZWYgaXMgZnVu
Y3Rpb24gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt1bmRlZmluZWTDgsK7LCDDgsKrZnVuY3Rpb27D
gsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogdHlwZW9mIFdl
YWtSZWYgaXMgZnVuY3Rpb24gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt1bmRlZmluZWTDgsK7LCDD
gsKrZnVuY3Rpb27DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50bDQwMi9Db2xsYXRvci9taXNzaW5nLXVuaWNvZGUt
ZXh0LXZhbHVlLWRlZmF1bHRzLXRvLXRydWUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
ICJrbiIgc2hvdWxkIGJlIHJldHVybmVkIGluIGxvY2FsZS4gRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtmYWxzZcOCwrssIMOCwqt0cnVlw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6ICJrbiIgc2hvdWxkIGJlIHJldHVybmVkIGluIGxvY2FsZS4gRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqt0cnVlw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
aW50bDQwMi9Db2xsYXRvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAy
L0NvbGxhdG9yL3Byb3RvdHlwZS9jb21wYXJlL2NvbXBhcmUtZnVuY3Rpb24tbmFtZS5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgJwpA
QCAtMjEzOSw5ICsyMDQ5LDYgQEAgdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L2NvbnN0cnVj
dG9yLQogdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L251bWJlcmluZy1zeXN0ZW0tY2FsZW5k
YXItb3B0aW9ucy5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogT3B0aW9ucyB2YWx1ZSBm
b3IgcHJvcGVydHkgbnVtYmVyaW5nU3lzdGVtIGRvZXNuJ3Qgb3ZlcnJpZGUgbG9jYWxlIGV4dGVu
c2lvbiBrZXkgbnUuIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrYXJhYsOCwrssIMOCwqtsYXRuw4LC
uykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6ICJUZXN0MjYyRXJyb3I6IE9wdGlvbnMgdmFs
dWUgZm9yIHByb3BlcnR5IG51bWJlcmluZ1N5c3RlbSBkb2Vzbid0IG92ZXJyaWRlIGxvY2FsZSBl
eHRlbnNpb24ga2V5IG51LiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2FyYWLDgsK7LCDDgsKrbGF0
bsOCwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0MDIvRGF0ZVRpbWVGb3JtYXQvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90b3R5cGUv
Zm9ybWF0L2RheVBlcmlvZC1sb25nLWVuLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiAw
MDowMCwgbG9uZyBmb3JtYXQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsxMi8xMi8yMDE3w4LCuywg
w4LCq2F0IG5pZ2h0w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IDAwOjAwLCBsb25nIGZvcm1hdCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzEyLzEyLzIwMTfD
gsK7LCDDgsKrYXQgbmlnaHTDgsK7KSB0byBiZSB0cnVlJwpAQCAtMjE5OSwxOCArMjEwNiwxMiBA
QCB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3ByCiB0ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L251bWJlcmluZy1zeXN0ZW0tb3B0aW9ucy5qczoKICAgZGVmYXVsdDogIlRl
c3QyNjJFcnJvcjogT3B0aW9ucyB2YWx1ZSBmb3IgcHJvcGVydHkgbnVtYmVyaW5nU3lzdGVtIGRv
ZXNuJ3Qgb3ZlcnJpZGUgbG9jYWxlIGV4dGVuc2lvbiBrZXkgbnUuIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrYXJhYsOCwrssIMOCwqtsYXRuw4LCuykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6
ICJUZXN0MjYyRXJyb3I6IE9wdGlvbnMgdmFsdWUgZm9yIHByb3BlcnR5IG51bWJlcmluZ1N5c3Rl
bSBkb2Vzbid0IG92ZXJyaWRlIGxvY2FsZSBleHRlbnNpb24ga2V5IG51LiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq2FyYWLDgsK7LCDDgsKrbGF0bsOCwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0
MDIvTnVtYmVyRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rd
w4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L3Byb3RvdHlwZS9mb3JtYXQvZm9ybWF0LWZ1bmN0aW9uLW5hbWUuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlICcKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlICcK
IHRlc3QvaW50bDQwMi9OdW1iZXJGb3JtYXQvcHJvdG90eXBlL2Zvcm1hdC9mb3JtYXQtbmVnYXRp
dmUtbnVtYmVycy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogSW50bC5OdW1iZXJGb3Jt
YXQgaXMgZm9ybWF0dGluZyAwIGFuZCAtMCB0aGUgc2FtZSB3YXkuIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUgZmFsc2UnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBJbnRsLk51bWJlckZvcm1hdCBpcyBmb3JtYXR0aW5nIDAgYW5kIC0wIHRoZSBz
YW1lIHdheS4gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsww4LCuywgw4LCqzDDgsK7KSB0byBiZSBm
YWxzZScKLXRlc3QvaW50bDQwMi9QbHVyYWxSdWxlcy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmpl
Y3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9pbnRsNDAyL2xhbmd1YWdlLXRhZ3MtaW52YWxpZC5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogVGVzdCBkYXRhICJkZS1ncmVnb3J5LWdyZWdvcnkiIGlzIGEgY2Fub25pY2Fs
aXplZCBhbmQgc3RydWN0dXJhbGx5IHZhbGlkIGxhbmd1YWdlIHRhZy4nCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBUZXN0IGRhdGEgImRlLWdyZWdvcnktZ3JlZ29yeSIgaXMgYSBjYW5v
bmljYWxpemVkIGFuZCBzdHJ1Y3R1cmFsbHkgdmFsaWQgbGFuZ3VhZ2UgdGFnLicKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYzIEBACisyMDE5LTEw
LTA0ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1Rh
cmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSW4gW1tDb25zdHJ1Y3RdXSwgaWYgYGNvbnN0cnVjdG9yLnByb3RvdHlwZWAg
aXMgbm90IGFuIG9iamVjdCwgZGVmYXVsdCBwcm90b3R5cGUgb2YgcmVhbG0gaXMgdXNlZC4KKyAg
ICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29uc3RydWN0b3Igd2Fz
IHVzZWQgdG8gZ2V0IGEgYmFzZSBzdHJ1Y3R1cmUgZnJvbS4KKworICAgICAgICBQZXIgc3BlYyAo
Zm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLW1hcC1j
b25zdHJ1Y3RvciksIE5ld1RhcmdldCBpcyBwYXNzZWQgdG8KKyAgICAgICAgR2V0UHJvdG90eXBl
RnJvbUNvbnN0cnVjdG9yLiBUaGlzIHBhdGNoIGFsaWducyBtb3N0IG9mIHRoZSBjb25zdHJ1Y3Rv
cnMgKGV4Y2VwdCBmb3IgQXJyYXkgYW5kIFByb21pc2UsCisgICAgICAgIHdoaWNoIHdpbGwgYmUg
Zml4ZWQgaW4gYSBmb2xsb3ctdXApIHdpdGggdGhlIHNwZWMsIFY4LCBhbmQgU3BpZGVyTW9ua2V5
LgorCisgICAgICAgICogcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1l
L0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhEYXRlQ29u
c3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEZ1bmN0aW9u
U2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKToKKyAgICAgICAgKiBydW50aW1lL0ludGxDb2xsYXRv
ckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bENvbGxhdG9yKToK
KyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50
aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0
cnVjdEludGxOdW1iZXJGb3JtYXQpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRsUGx1cmFsUnVsZXMp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNv
bnN0cnVjdEFycmF5QnVmZmVyKToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVy
aWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
cjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAg
KiBydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUv
UmVnRXhwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpyZWdFeHBDcmVhdGUpOgorICAg
ICAgICAoSlNDOjpjb25zdHJ1Y3RSZWdFeHApOgorICAgICAgICAoSlNDOjplc1NwZWNSZWdFeHBD
cmVhdGUpOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoUmVnRXhwQ29uc3RydWN0b3IpOgor
ICAgICAgICAoSlNDOjpnZXRSZWdFeHBTdHJ1Y3R1cmUpOiBEZWxldGVkLgorICAgICAgICAqIHJ1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1NldENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0U2V0KToKKyAgICAgICAgKiBydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aFN0cmlu
Z0NvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtNYXApOgorICAgICAgICAqIHJ1bnRpbWUvV2Vh
a09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1Jl
Zik6CisgICAgICAgICogcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXZWFrU2V0KToKKwogMjAxOS0xMC0wNCAgVHJ1aXR0IFNhdmVsbCAgPHRz
YXZlbGxAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyNTA1
ODMuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xl
YW5Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQz
LDcgKzQzLDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAg
IFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogICAgIEpTVmFsdWUgYm9vbGVhbiA9IGpzQm9vbGVhbihleGVjLT5hcmd1bWVudCgw
KS50b0Jvb2xlYW4oZXhlYykpOwotICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1Rh
cmdldCgpLCBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9i
YWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3
VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2Jq
ZWN0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmplY3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6OmNyZWF0
ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAgICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVlKHZtLCBi
b29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDgg
KzE1Miw5IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3REYXRlKEV4ZWNTdGF0ZSogZXhlYywKICAgICAK
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhEYXRlQ29u
c3RydWN0b3IoRXhlY1N0YXRlKiBleGVjKQogeworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhl
Yy0+bmV3VGFyZ2V0KCk7CiAgICAgQXJnTGlzdCBhcmdzKGV4ZWMpOwotICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoY29uc3RydWN0RGF0ZShleGVjLCBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+
KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9iYWxPYmplY3QoZXhlYy0+dm0oKSksIGV4ZWMtPm5ld1Rh
cmdldCgpLCBhcmdzKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3REYXRl
KGV4ZWMsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdChleGVjLT52bSgpKSwgbmV3
VGFyZ2V0LCBhcmdzKSk7CiB9CiAKIC8vIEVDTUEgMTUuOS4yCkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24g
MjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zdHJ1Y3RFcgogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9
IGV4ZWMtPmFyZ3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBleGVjLT5uZXdUYXJn
ZXQoKSwganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFs
T2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBl
eGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0cnVjdHVyZSgpKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVh
dGUoZXhlYywgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBm
YWxzZSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9u
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTUyLDE5ICsxNTIsMjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tp
cHBpbmdFdmFsRQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2Jh
bE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3
VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1v
ZGUpIHsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAg
ICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAo
Z2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246
OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0LCBmdW5j
dGlvbik7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2Rl
OjpHZW5lcmF0b3I6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9y
RnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFs
T2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVy
ZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1
Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5j
R2VuZXJhdG9yOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJh
dG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xv
YmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJy
ZWFrOwogICAgIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENv
bGxhdG9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Myw3ICs5Myw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVk
LCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBu
ZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBjb2xsYXRvciBiZSBPcmRpbmFy
eUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVDb2xsYXRvclByb3RvdHlwZSUpLgog
ICAgIC8vIDMuIFJldHVybklmQWJydXB0KGNvbGxhdG9yKS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBz
dGF0ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcio+KHN0YXRl
LT5qc0NhbGxlZSgpKS0+Y29sbGF0b3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1Rh
cmdldCA9IHN0YXRlLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBuZXdUYXJnZXQs
IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmNvbGxhdG9yU3RydWN0dXJl
KCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwog
ICAgIEludGxDb2xsYXRvciogY29sbGF0b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgc3Ry
dWN0dXJlKTsKICAgICBBU1NFUlQoY29sbGF0b3IpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC05Myw3ICs5Myw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMK
ICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRo
ZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0
LgogICAgIC8vIDIuIExldCBkYXRlVGltZUZvcm1hdCBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25z
dHJ1Y3RvcihuZXdUYXJnZXQsICVEYXRlVGltZUZvcm1hdFByb3RvdHlwZSUpLgogICAgIC8vIDMu
IFJldHVybklmQWJydXB0KGRhdGVUaW1lRm9ybWF0KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0
ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KHN0
YXRlLT5qc0NhbGxlZSgpKS0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1Zh
bHVlIG5ld1RhcmdldCA9IHN0YXRlLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBu
ZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmRhdGVUaW1l
Rm9ybWF0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwogICAgIEludGxEYXRlVGltZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQgPSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQoZGF0
ZVRpbWVGb3JtYXQpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51
bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Myw3ICs5Myw4IEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQg
aXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0
LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBudW1iZXJG
b3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlTnVtYmVy
Rm9ybWF0UHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0
KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsTnVt
YmVyRm9ybWF0Q29uc3RydWN0b3IqPihzdGF0ZS0+anNDYWxsZWUoKSktPm51bWJlckZvcm1hdFN0
cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gc3RhdGUtPm5ld1RhcmdldCgp
OworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoc3RhdGUsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxOdW1iZXJGb3JtYXQq
IG51bWJlckZvcm1hdCA9IEludGxOdW1iZXJGb3JtYXQ6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsK
ICAgICBBU1NFUlQobnVtYmVyRm9ybWF0KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQ
bHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTAsNyArOTAsOCBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAKICAgICAvLyAxMy4y
LjEgSW50bC5QbHVyYWxSdWxlcyAoWyBsb2NhbGVzIFsgLCBvcHRpb25zIF0gXSkKICAgICAvLyBo
dHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWE0MDIvI3NlYy1pbnRsLnBsdXJhbHJ1bGVzCi0gICAg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShzdGF0ZSwgc3RhdGUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8SW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IqPihzdGF0ZS0+anNDYWxsZWUoKSktPnBsdXJhbFJ1bGVzU3RydWN0dXJlKHZt
KSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBzdGF0ZS0+bmV3VGFyZ2V0KCk7CisgICAgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShzdGF0ZSwgc3RhdGUtPm5ld1RhcmdldCgpLCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9i
YWxPYmplY3Qodm0pLT5wbHVyYWxSdWxlc1N0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBJbnRsUGx1cmFsUnVsZXMqIHBs
dXJhbFJ1bGVzID0gSW50bFBsdXJhbFJ1bGVzOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAg
QVNTRVJUKHBsdXJhbFJ1bGVzKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24g
MjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzksOSArNzksOCBAQCBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIEpTR2VuZXJpY0FyCiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsK
ICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0dlbmVy
aWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKiBjb25zdHJ1Y3RvciA9IGpzQ2FzdDxKU0dlbmVyaWNB
cnJheUJ1ZmZlckNvbnN0cnVjdG9yKj4oZXhlYy0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1
cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxP
YmplY3Qodm0pLT5hcnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5nTW9kZSkpOworICAgIEpTVmFs
dWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBhcnJheUJ1
ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+
YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCB7IH0pOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcklu
bGluZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTA3MzQp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmll
d0NvbnN0cnVjdG9ySW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDkgQEAg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGV4
ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0g
ICAgSW50ZXJuYWxGdW5jdGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+
KGV4ZWMtPmpzQ2FsbGVlKCkpOwotICAgIFN0cnVjdHVyZSogcGFyZW50U3RydWN0dXJlID0gZnVu
Y3Rpb24tPmdsb2JhbE9iamVjdCh2bSktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpU
eXBlZEFycmF5U3RvcmFnZVR5cGUpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0
KCksIHBhcmVudFN0cnVjdHVyZSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBleGVjLT5uZXdU
YXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdCh2bSktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpU
eXBlZEFycmF5U3RvcmFnZVR5cGUpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBwYXJl
bnRTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1Zh
bHVlKCkpOwogCiAgICAgc2l6ZV90IGFyZ0NvdW50ID0gZXhlYy0+YXJndW1lbnRDb3VudCgpOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw4ICs2Nyw4IEBAIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBleGVjLT52
bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4
ZWMtPmpzQ2FsbGVlKCkpLT5nbG9iYWxPYmplY3Qodm0pOwotICAgIFN0cnVjdHVyZSogbWFwU3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywg
ZXhlYy0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOworICAgIEpT
VmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBtYXBT
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVj
LCBuZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm1hcFN0
cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1
ZSgpKTsKIAogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBleGVjLT5hcmd1bWVudCgwKTsKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NTUsNyArNTUsOCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIE5hdGl2ZUVycm9yCiAg
ICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19T
Q09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gZXhlYy0+YXJndW1lbnQoMCk7Ci0gICAg
U3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8TmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvcio+KGV4ZWMtPmpzQ2FsbGVlKCkpLT5lcnJvclN0cnVjdHVyZSh2bSkpOworICAg
IEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBl
cnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+
ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAgICBS
RUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpj
cmVhdGUoZXhlYywgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5n
LCBmYWxzZSkpKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtOTIsNyArOTIsOCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIGRvdWJsZSBu
ID0gZXhlYy0+YXJndW1lbnRDb3VudCgpID8gZXhlYy0+dW5jaGVja2VkQXJndW1lbnQoMCkudG9O
dW1iZXIoZXhlYykgOiAwOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGV4ZWMtPmxl
eGljYWxHbG9iYWxPYmplY3QoKS0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFs
dWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBuZXdU
YXJnZXQsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51bWJlck9iamVj
dFN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNW
YWx1ZSgpKTsKIAogICAgIE51bWJlck9iamVjdCogb2JqZWN0ID0gTnVtYmVyT2JqZWN0OjpjcmVh
dGUodm0sIHN0cnVjdHVyZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9P
YmplY3RDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTExOSw3ICsxMTksNiBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVjdCog
Y29uc3RydWN0CiB7CiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBPYmplY3RDb25zdHJ1
Y3Rvciogb2JqZWN0Q29uc3RydWN0b3IgPSBqc0Nhc3Q8T2JqZWN0Q29uc3RydWN0b3IqPihleGVj
LT5qc0NhbGxlZSgpKTsKLSAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gb2JqZWN0
Q29uc3RydWN0b3ItPmdsb2JhbE9iamVjdCh2bSk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogCiAgICAgLy8gV2UgbmVlZCB0byBjaGVjayBuZXdUYXJnZXQgY29u
ZGl0aW9uIGluIHRoaXMgY2FsbGVyIHNpZGUgaW5zdGVhZCBvZiBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaWRlLgpAQCAtMTI4LDYgKzEyNyw3IEBAIHN0YXRpYyBB
TFdBWVNfSU5MSU5FIEpTT2JqZWN0KiBjb25zdHJ1Y3QKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQg
aXMgbmVpdGhlciB1bmRlZmluZWQgbm9yIHRoZSBhY3RpdmUgZnVuY3Rpb24sIHRoZW4KICAgICBp
ZiAobmV3VGFyZ2V0ICYmIG5ld1RhcmdldCAhPSBvYmplY3RDb25zdHJ1Y3RvcikgewogICAgICAg
ICAvLyBhLiBSZXR1cm4gPyBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihOZXdUYXJnZXQs
ICIlT2JqZWN0UHJvdG90eXBlJSIpLgorICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKTsKICAgICAgICAgU3Ry
dWN0dXJlKiBvYmplY3RTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShleGVjLCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+b2JqZWN0U3RydWN0dXJl
Rm9yT2JqZWN0Q29uc3RydWN0b3IoKSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIG51bGxwdHIpOwogICAgICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3QoZXhlYywg
b2JqZWN0U3RydWN0dXJlKTsKQEAgLTEzNiw2ICsxMzYsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElO
RSBKU09iamVjdCogY29uc3RydWN0CiAgICAgLy8gMi4gSWYgdmFsdWUgaXMgbnVsbCwgdW5kZWZp
bmVkIG9yIG5vdCBzdXBwbGllZCwgcmV0dXJuIE9iamVjdENyZWF0ZSglT2JqZWN0UHJvdG90eXBl
JSkuCiAgICAgQXJnTGlzdCBhcmdzKGV4ZWMpOwogICAgIEpTVmFsdWUgYXJnID0gYXJncy5hdCgw
KTsKKyAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gb2JqZWN0Q29uc3RydWN0b3It
Pmdsb2JhbE9iamVjdCh2bSk7CiAgICAgaWYgKGFyZy5pc1VuZGVmaW5lZE9yTnVsbCgpKQogICAg
ICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3QoZXhlYywgZ2xvYmFsT2JqZWN0LT5vYmpl
Y3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpKTsKIApJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAkocmV2aXNp
b24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3Ry
dWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzcsMTQgKzE3Nyw2IEBAIGJvb2wgc2V0UmVn
RXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoRXhlY1MKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWlu
bGluZSBTdHJ1Y3R1cmUqIGdldFJlZ0V4cFN0cnVjdHVyZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0KQotewotICAgIFN0cnVj
dHVyZSogc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBp
ZiAobmV3VGFyZ2V0ICE9IGpzVW5kZWZpbmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgc3Ry
dWN0dXJlKTsKLSAgICByZXR1cm4gc3RydWN0dXJlOwotfQotCiBpbmxpbmUgT3B0aW9uU2V0PFlh
cnI6OkZsYWdzPiB0b0ZsYWdzKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBmbGFncykKIHsKICAg
ICBWTSYgdm0gPSBleGVjLT52bSgpOwpAQCAtMjIwLDcgKzIxMiw3IEBAIHN0YXRpYyBKU09iamVj
dCogcmVnRXhwQ3JlYXRlKEV4ZWNTdGF0ZSoKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAg
fQogCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnZXRSZWdFeHBTdHJ1Y3R1cmUoZXhlYywg
Z2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBn
bG9iYWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBudWxscHRyKTsKICAgICByZXR1cm4gUmVnRXhwT2JqZWN0OjpjcmVhdGUodm0sIHN0
cnVjdHVyZSwgcmVnRXhwKTsKIH0KQEAgLTIzNiw3ICsyMjgsNyBAQCBKU09iamVjdCogY29uc3Ry
dWN0UmVnRXhwKEV4ZWNTdGF0ZSogZXhlCiAgICAgYm9vbCBjb25zdHJ1Y3RBc1JlZ2V4cCA9IGlz
UmVnRXhwKHZtLCBleGVjLCBwYXR0ZXJuQXJnKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBudWxscHRyKTsKIAotICAgIGlmIChuZXdUYXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25z
dHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdU
YXJnZXQgJiYgY29uc3RydWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewog
ICAgICAgICBKU1ZhbHVlIGNvbnN0cnVjdG9yID0gcGF0dGVybkFyZy5nZXQoZXhlYywgdm0ucHJv
cGVydHlOYW1lcy0+Y29uc3RydWN0b3IpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBudWxscHRyKTsKICAgICAgICAgaWYgKGNhbGxlZSA9PSBjb25zdHJ1Y3RvcikgewpAQCAt
MjQ3LDcgKzIzOSw3IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoRXhlY1N0YXRlKiBleGUK
IAogICAgIGlmIChpc1BhdHRlcm5SZWdFeHApIHsKICAgICAgICAgUmVnRXhwKiByZWdFeHAgPSBq
c0Nhc3Q8UmVnRXhwT2JqZWN0Kj4ocGF0dGVybkFyZyktPnJlZ0V4cCgpOwotICAgICAgICBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSA9IGdldFJlZ0V4cFN0cnVjdHVyZShleGVjLCBnbG9iYWxPYmplY3Qs
IG5ld1RhcmdldCk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBnbG9iYWxPYmpl
Y3QtPnJlZ0V4cFN0cnVjdHVyZSgpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgbnVsbHB0cik7CiAKICAgICAgICAgaWYgKCFmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CkBA
IC0yODIsMTMgKzI3NCwxNSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY1Jl
Z0V4CiAgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmxleGljYWxHbG9i
YWxPYmplY3QoKTsKICAgICBKU1ZhbHVlIHBhdHRlcm5BcmcgPSBleGVjLT5hcmd1bWVudCgwKTsK
ICAgICBKU1ZhbHVlIGZsYWdzQXJnID0gZXhlYy0+YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUoZXhlYywgZ2xvYmFsT2JqZWN0LCBqc1VuZGVmaW5l
ZCgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
cmVnRXhwQ3JlYXRlKGV4ZWMsIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBm
bGFnc0FyZykpOwogfQogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RXaXRoUmVnRXhwQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjKQogeworICAgIEpTVmFs
dWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdChleGVjLT52bSgp
KTsKICAgICBBcmdMaXN0IGFyZ3MoZXhlYyk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShj
b25zdHJ1Y3RSZWdFeHAoZXhlYywganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0Nh
bGxlZSgpKS0+Z2xvYmFsT2JqZWN0KGV4ZWMtPnZtKCkpLCBhcmdzLCBleGVjLT5qc0NhbGxlZSgp
LCBleGVjLT5uZXdUYXJnZXQoKSkpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3Ry
dWN0UmVnRXhwKGV4ZWMsIGdsb2JhbE9iamVjdCwgYXJncywgZXhlYy0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0KSk7CiB9CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxS
ZWdFeHBDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI1MDcz
NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTU4LDcgKzU4LDcgQEAgcHJpdmF0ZToKIAogc3RhdGljX2Fzc2Vy
dChzaXplb2YoUmVnRXhwQ29uc3RydWN0b3IpID09IHNpemVvZihJbnRlcm5hbEZ1bmN0aW9uKSwg
IiIpOwogCi1KU09iamVjdCogY29uc3RydWN0UmVnRXhwKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2Jq
ZWN0KiwgY29uc3QgQXJnTGlzdCYsIEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVl
IG5ld1RhcmdldCA9IGpzVW5kZWZpbmVkKCkpOworSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChF
eGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2Fs
bGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBKU1ZhbHVlKCkpOwogCiBBTFdBWVNf
SU5MSU5FIGJvb2wgaXNSZWdFeHAoVk0mIHZtLCBFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFs
dWUpCiB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29u
c3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY3LDggKzY3LDgg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9
IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwog
Ci0gICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0
aW9uKj4oZXhlYy0+anNDYWxsZWUoKSktPmdsb2JhbE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJl
KiBzZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShleGVjLCBleGVjLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKSk7
CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBleGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1
cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZt
KS0+c2V0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGV4ZWMtPmFyZ3VtZW50KDAp
OwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0Nv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDIsMTAg
KzE0Miw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIHN0cmkKIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1
Y3RvcihFeGVjU3RhdGUqIGV4ZWMpCiB7CiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKLSAgICBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0ganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihl
eGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0KHZtKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1Rhcmdl
dCgpLCBnbG9iYWxPYmplY3QtPnN0cmluZ09iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGV4ZWMtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFy
Z2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmplY3RT
dHJ1Y3R1cmUoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFs
dWUoKSk7CiAKICAgICBpZiAoIWV4ZWMtPmFyZ3VtZW50Q291bnQoKSkKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01h
cENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsOCArNjUsOCBAQCBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZXhlYy0+dm0o
KTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0ganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVj
LT5qc0NhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0KHZtKTsKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBT
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVj
LCBleGVjLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWFrTWFwU3RydWN0dXJlKCkpOwor
ICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJl
KiB3ZWFrTWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT53ZWFrTWFwU3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEpTV2Vha01hcCogd2Vha01hcCA9IEpTV2Vha01hcDo6
Y3JlYXRlKHZtLCB3ZWFrTWFwU3RydWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gZXhl
Yy0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFr
T2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDcz
NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY4LDggKzY4LDggQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGlmICghZXhlYy0+YXJndW1lbnQoMCkuaXNP
YmplY3QoKSkKICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZXhlYywgc2NvcGUsICJG
aXJzdCBhcmd1bWVudCB0byBXZWFrUmVmIHNob3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0gICAg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4o
ZXhlYy0+anNDYWxsZWUoKSktPmdsb2JhbE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJlKiBXZWFr
T2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJl
ZlN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGV4ZWMtPm5ld1RhcmdldCgp
OworICAgIFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3
VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNy
ZWF0ZSh2bSwgV2Vha09iamVjdFJlZlN0cnVjdHVyZSwgZXhlYy0+dW5jaGVja2VkQXJndW1lbnQo
MCkuZ2V0T2JqZWN0KCkpKSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTY1LDggKzY1LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oZXhlYy0+anNDYWxsZWUoKSktPmdsb2Jh
bE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCks
IGdsb2JhbE9iamVjdC0+d2Vha1NldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGV4ZWMtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1Rhcmdl
dCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha1NldFN0cnVjdHVy
ZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0
cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGV4ZWMtPmFyZ3VtZW50KDApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380319</attachid>
            <date>2019-10-07 06:24:00 -0700</date>
            <delta_ts>2019-11-07 08:12:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191005024254-1.patch</filename>
            <type>text/plain</type>
            <size>50090</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTA3NTMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTEwLTA0ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDY2IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMC0wNCAgU2Fh
bSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBbGxvdyBPU1IgZXhpdCB0
byB0aGUgTExJbnQKSW5kZXg6IEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHJldmlzaW9uIDI1
MDczNCkKKysrIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAkod29ya2luZyBjb3B5
KQpAQCAtNzA4LDkgKzcwOCw2IEBAIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxp
Y2UvdGgKIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1p
bnRlZ2VyLWxpbWl0LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioq
NTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5MDA3MTk5
MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LC
uywgw4LCqzkwMDcxOTkyNTQ3NDA5OTHDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywg
w4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZl
cl3DgsK7LCDDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVy
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQg
bm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtNzQxLDEyICs3MzgsNiBAQCB0ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvc2xpCiB0ZXN0L2J1aWx0LWlucy9BcnJh
eUl0ZXJhdG9yUHJvdG90eXBlL25leHQvZGV0YWNoLXR5cGVkYXJyYXktaW4tcHJvZ3Jlc3MuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxv
YXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5
cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvQXN5bmNGdW5jdGlv
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBBc3luY0Z1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1
bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScK
LXRlc3QvYnVpbHQtaW5zL0Jvb2xlYW4vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2ZhbHNlw4LCuywgw4LC
q2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvY3VzdG9tLXByb3RvLWFjY2Vzcy1kZXRhY2hlcy1i
dWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9y
IHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03NTYsOSArNzQ3LDYgQEAg
dGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvZGV0YWNoZWQtYnVmZmVyLgogdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvbGVuZ3RoLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9y
IHZhbHVlIHNob3VsZCBiZSAxJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3Jp
cHRvciB2YWx1ZSBzaG91bGQgYmUgMScKLXRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IERhdGFWaWV3XcOCwrssIMOCwqtbb2JqZWN0IERhdGFWaWV3XcOC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXdd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRl
TGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93
biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVF
cnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAg
LTg2MSwxOCArODQ5LDYgQEAgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVp
bgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVpbnQ4L2RldGFjaGVkLWJ1
ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
YnV0IGdvdCBhIFJhbmdlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Rh
dGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVj
dCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3Qg
T2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0temVy
by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtb
b2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9FcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXJyb3LDgsK7LCDDgsKrRXJy
b3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJvcsOCwrspIHRvIGJlIHRydWUnCiB0
ZXN0L2J1aWx0LWlucy9GaW5hbGl6YXRpb25Hcm91cC9GaW5hbGl6YXRpb25Hcm91cENsZWFudXBJ
dGVyYXRvclByb3RvdHlwZS9TeW1ib2wudG9TdHJpbmdUYWcuanM6CiAgIGRlZmF1bHQ6ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogRmluYWxpemF0aW9uR3JvdXAiCiAgIHN0
cmljdCBtb2RlOiAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IEZpbmFsaXph
dGlvbkdyb3VwIgpAQCAtMTA4Myw5ICsxMDU5LDYgQEAgdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24v
aW50ZXJuYWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0
cnVjdC9kZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNl
RXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5j
ZUVycm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwogdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvbGVuZ3RoLWV4Y2VlZHMtaW50MzIuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOC
wqsyMTQ3NDgzNjQ4w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3NDgzNjQ4w4LCuykgdG8g
YmUgdHJ1ZScKQEAgLTEyMDMsOSArMTE3Niw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3By
b3RvdHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmlu
Zy91bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRp
dmVGdW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2
MiA9IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBc
XHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCiAgIHN0cmljdCBt
b2RlOiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdm
dW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVy
biBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBc
XHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlucy9HZW5lcmF0b3JGdW5jdGlv
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKr
W29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEdlbmVyYXRv
ckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXcOCwrspIHRvIGJl
IHRydWUnCiB0ZXN0L2J1aWx0LWlucy9KU09OL3BhcnNlL3Jldml2ZWQtcHJveHkuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IHByb3h5IGZvciBhcnJheSBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogcHJveHkgZm9yIGFycmF5IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1
ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCkBAIC0xMjE1LDMwICsxMTg1LDYgQEAg
dGVzdC9idWlsdC1pbnMvSlNPTi9wYXJzZS9yZXZpdmVyLWFycmF5LQogdGVzdC9idWlsdC1pbnMv
SlNPTi9wYXJzZS9yZXZpdmVyLWFycmF5LWxlbmd0aC1nZXQtZXJyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9u
IHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBNYXBdw4LCuywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywg
w4LCq0V2YWxFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvUmFuZ2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVy
cm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVu
Y2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrUmVmZXJlbmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtS
ZWZlcmVuY2VFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3lu
dGF4RXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5
cGVFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrVHlwZUVycm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrss
IMOCwqtVUklFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1VSSUVycm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL051bWJlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9p
bnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1hcmd1
bWVudHMuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrbnVsbMOCwrssIMOCwqtbb2JqZWN0IEFyZ3VtZW50c13DgsK7KSB0byBiZSB0cnVlJwogdGVz
dC9idWlsdC1pbnMvT2JqZWN0L2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9jb25zaXN0ZW50
LXZhbHVlLWZ1bmN0aW9uLWNhbGxlci5qczoKQEAgLTEyNDksOSArMTE5NSw2IEBAIHRlc3QvYnVp
bHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3cKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9r
ZXlzL3Byb3BlcnR5LXRyYXBzLW9yZGVyLXdpdGgtcHJveGllZC1hcnJheS5qczoKICAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgWyJvd25LZXlzIiwgImdldE93blByb3BlcnR5RGVz
Y3JpcHRvciJdIGFuZCBbIm93bktleXMiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiB1bmRl
ZmluZWQnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbIm93bktleXMi
LCAiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIl0gYW5kIFsib3duS2V5cyJdIHRvIGhhdmUgdGhl
IHNhbWUgY29udGVudHMuIHVuZGVmaW5lZCcKLXRlc3QvYnVpbHQtaW5zL09iamVjdC9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvdHlwZS90b1N0cmluZy9wcm94
eS1mdW5jdGlvbi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBG
dW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
ZnVuY3Rpb24gcHJveHkgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwpAQCAtMTcxMSw5ICsxNjU0
LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvbgogdGVzdC9idWls
dC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvbm9uLWV4aXN0ZW50LXByb3BlcnR5LXZhbHVl
LWdlbmVyYWwtY2F0ZWdvcnkuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVu
dCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MjogVGhp
cyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0ZWQuJwotdGVzdC9idWlsdC1pbnMvUmVn
RXhwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrLyg/Oikvw4LCuywgw4LCqy8oPzopL8OCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9SZWdFeHAvcHJvdG90eXBlL1N5bWJvbC5tYXRjaC9idWlsdGluLWluZmVyLXVuaWNvZGUuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw6/Cv8K9
w4LCuywgw4LCq251bGzDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRv
IGJlIHRydWUnCkBAIC0xNzk4LDEyICsxNzM4LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Vu
aWNvZGVfcmVzdHJpY3RlZAogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3VuaWNvZGVfcmVzdHJpY3Rl
ZF9xdWFudGlmaWFibGVfYXNzZXJ0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBS
ZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3RlZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogUmVnRXhwKCIoPz0uKSoiLCAidSIpOiAgRXhwZWN0ZWQgYSBTeW50YXhFcnJv
ciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKLXRlc3Qv
YnVpbHQtaW5zL1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywgw4LCq1tv
YmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgU2V0XcOCwrssIMOCwqtbb2JqZWN0IFNl
dF3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvLWZyb20tY3Rv
ci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9UaHJvd1R5cGVFcnJvci9leHRlbnNpYmxlLmpzOgogICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFs
c2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKQEAg
LTE4NjksMjEgKzE4MDMsOSBAQCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2N0CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1h
cmcvbGVuZ3RoLXRvLW51bWJlci1kZXRhY2hidWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9i
dWZmZXItYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1
ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1
ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycy9jdG9ycy9sZW5ndGgtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9uby1hcmdzL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7LCDDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy9vYmplY3QtYXJnL2xlbmd0aC1leGNlc3NpdmUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNl
cHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy9vYmplY3QtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3DgsK7LCDDgsKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9kZXRhY2hlZC13aGVuLXNwZWNp
ZXMtcmV0cmlldmVkLWRpZmZlcmVudC10eXBlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBUeXBlRXJyb3IgdGhyb3duIGZvciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEg
VHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxs
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBUeXBlRXJyb3IgdGhyb3duIGZvciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCkBAIC0xOTExLDkgKzE4MzMsNiBAQCB0
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0CiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL290aGVyLWN0b3ItYnVm
ZmVyLWN0b3Itc3BlY2llcy1wcm90b3R5cGUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3Rv
cnMvdHlwZWRhcnJheS1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3NhbWUtY3Rvci1idWZm
ZXItY3Rvci1hY2Nlc3MtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKQEAgLTIwMTYsOSArMTkzNSw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvb2YvbmV3LWlu
c3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAnVHlwZUVycm9yOiBUeXBl
ZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRB
cnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3Qg
bW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBhcmd1bWVu
dCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0aCBGbG9h
dDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9XZWFrUmVmL2NvbnN0cnVjdG9yLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiB0eXBlb2YgV2Vha1JlZiBpcyBmdW5jdGlvbiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq3VuZGVmaW5lZMOCwrssIMOCwqtmdW5jdGlvbsOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiB0eXBlb2YgV2Vha1JlZiBpcyBmdW5jdGlvbiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq3VuZGVmaW5lZMOCwrssIMOCwqtmdW5jdGlvbsOCwrspIHRvIGJlIHRy
dWUnCkBAIC0yMDk3LDE1ICsyMDEzLDkgQEAgdGVzdC9idWlsdC1pbnMvV2Vha1JlZi90YXJnZXQt
bm90LW9iamVjdAogdGVzdC9idWlsdC1pbnMvV2Vha1JlZi91bmRlZmluZWQtbmV3dGFyZ2V0LXRo
cm93cy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogdHlwZW9mIFdlYWtSZWYgaXMgZnVu
Y3Rpb24gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt1bmRlZmluZWTDgsK7LCDDgsKrZnVuY3Rpb27D
gsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogdHlwZW9mIFdl
YWtSZWYgaXMgZnVuY3Rpb24gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt1bmRlZmluZWTDgsK7LCDD
gsKrZnVuY3Rpb27DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50bDQwMi9Db2xsYXRvci9taXNzaW5nLXVuaWNvZGUt
ZXh0LXZhbHVlLWRlZmF1bHRzLXRvLXRydWUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
ICJrbiIgc2hvdWxkIGJlIHJldHVybmVkIGluIGxvY2FsZS4gRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtmYWxzZcOCwrssIMOCwqt0cnVlw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6ICJrbiIgc2hvdWxkIGJlIHJldHVybmVkIGluIGxvY2FsZS4gRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqt0cnVlw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
aW50bDQwMi9Db2xsYXRvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAy
L0NvbGxhdG9yL3Byb3RvdHlwZS9jb21wYXJlL2NvbXBhcmUtZnVuY3Rpb24tbmFtZS5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgJwpA
QCAtMjEzOSw5ICsyMDQ5LDYgQEAgdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L2NvbnN0cnVj
dG9yLQogdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L251bWJlcmluZy1zeXN0ZW0tY2FsZW5k
YXItb3B0aW9ucy5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogT3B0aW9ucyB2YWx1ZSBm
b3IgcHJvcGVydHkgbnVtYmVyaW5nU3lzdGVtIGRvZXNuJ3Qgb3ZlcnJpZGUgbG9jYWxlIGV4dGVu
c2lvbiBrZXkgbnUuIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrYXJhYsOCwrssIMOCwqtsYXRuw4LC
uykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6ICJUZXN0MjYyRXJyb3I6IE9wdGlvbnMgdmFs
dWUgZm9yIHByb3BlcnR5IG51bWJlcmluZ1N5c3RlbSBkb2Vzbid0IG92ZXJyaWRlIGxvY2FsZSBl
eHRlbnNpb24ga2V5IG51LiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2FyYWLDgsK7LCDDgsKrbGF0
bsOCwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0MDIvRGF0ZVRpbWVGb3JtYXQvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90b3R5cGUv
Zm9ybWF0L2RheVBlcmlvZC1sb25nLWVuLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiAw
MDowMCwgbG9uZyBmb3JtYXQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsxMi8xMi8yMDE3w4LCuywg
w4LCq2F0IG5pZ2h0w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IDAwOjAwLCBsb25nIGZvcm1hdCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzEyLzEyLzIwMTfD
gsK7LCDDgsKrYXQgbmlnaHTDgsK7KSB0byBiZSB0cnVlJwpAQCAtMjE5OSwxOCArMjEwNiwxMiBA
QCB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3ByCiB0ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L251bWJlcmluZy1zeXN0ZW0tb3B0aW9ucy5qczoKICAgZGVmYXVsdDogIlRl
c3QyNjJFcnJvcjogT3B0aW9ucyB2YWx1ZSBmb3IgcHJvcGVydHkgbnVtYmVyaW5nU3lzdGVtIGRv
ZXNuJ3Qgb3ZlcnJpZGUgbG9jYWxlIGV4dGVuc2lvbiBrZXkgbnUuIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrYXJhYsOCwrssIMOCwqtsYXRuw4LCuykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6
ICJUZXN0MjYyRXJyb3I6IE9wdGlvbnMgdmFsdWUgZm9yIHByb3BlcnR5IG51bWJlcmluZ1N5c3Rl
bSBkb2Vzbid0IG92ZXJyaWRlIGxvY2FsZSBleHRlbnNpb24ga2V5IG51LiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq2FyYWLDgsK7LCDDgsKrbGF0bsOCwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0
MDIvTnVtYmVyRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rd
w4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L3Byb3RvdHlwZS9mb3JtYXQvZm9ybWF0LWZ1bmN0aW9uLW5hbWUuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlICcKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlICcK
IHRlc3QvaW50bDQwMi9OdW1iZXJGb3JtYXQvcHJvdG90eXBlL2Zvcm1hdC9mb3JtYXQtbmVnYXRp
dmUtbnVtYmVycy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogSW50bC5OdW1iZXJGb3Jt
YXQgaXMgZm9ybWF0dGluZyAwIGFuZCAtMCB0aGUgc2FtZSB3YXkuIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrMMOCwrssIMOCwqsww4LCuykgdG8gYmUgZmFsc2UnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBJbnRsLk51bWJlckZvcm1hdCBpcyBmb3JtYXR0aW5nIDAgYW5kIC0wIHRoZSBz
YW1lIHdheS4gRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqsww4LCuywgw4LCqzDDgsK7KSB0byBiZSBm
YWxzZScKLXRlc3QvaW50bDQwMi9QbHVyYWxSdWxlcy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmpl
Y3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9pbnRsNDAyL2xhbmd1YWdlLXRhZ3MtaW52YWxpZC5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogVGVzdCBkYXRhICJkZS1ncmVnb3J5LWdyZWdvcnkiIGlzIGEgY2Fub25pY2Fs
aXplZCBhbmQgc3RydWN0dXJhbGx5IHZhbGlkIGxhbmd1YWdlIHRhZy4nCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBUZXN0IGRhdGEgImRlLWdyZWdvcnktZ3JlZ29yeSIgaXMgYSBjYW5v
bmljYWxpemVkIGFuZCBzdHJ1Y3R1cmFsbHkgdmFsaWQgbGFuZ3VhZ2UgdGFnLicKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYzIEBACisyMDE5LTEw
LTA0ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1Rh
cmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSW4gW1tDb25zdHJ1Y3RdXSwgaWYgYGNvbnN0cnVjdG9yLnByb3RvdHlwZWAg
aXMgbm90IGFuIG9iamVjdCwgZGVmYXVsdCBwcm90b3R5cGUgb2YgcmVhbG0gaXMgdXNlZC4KKyAg
ICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29uc3RydWN0b3Igd2Fz
IHVzZWQgdG8gZ2V0IGEgYmFzZSBzdHJ1Y3R1cmUgZnJvbS4KKworICAgICAgICBQZXIgc3BlYyAo
Zm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLW1hcC1j
b25zdHJ1Y3RvciksIE5ld1RhcmdldCBpcyBwYXNzZWQgdG8KKyAgICAgICAgR2V0UHJvdG90eXBl
RnJvbUNvbnN0cnVjdG9yLiBUaGlzIHBhdGNoIGFsaWducyBtb3N0IG9mIHRoZSBjb25zdHJ1Y3Rv
cnMgKGV4Y2VwdCBmb3IgQXJyYXkgYW5kIFByb21pc2UsCisgICAgICAgIHdoaWNoIHdpbGwgYmUg
Zml4ZWQgaW4gYSBmb2xsb3ctdXApIHdpdGggdGhlIHNwZWMsIFY4LCBhbmQgU3BpZGVyTW9ua2V5
LgorCisgICAgICAgICogcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1l
L0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhEYXRlQ29u
c3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEZ1bmN0aW9u
U2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKToKKyAgICAgICAgKiBydW50aW1lL0ludGxDb2xsYXRv
ckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bENvbGxhdG9yKToK
KyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50
aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0
cnVjdEludGxOdW1iZXJGb3JtYXQpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRsUGx1cmFsUnVsZXMp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNv
bnN0cnVjdEFycmF5QnVmZmVyKToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVy
aWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
cjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAg
KiBydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUv
UmVnRXhwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpyZWdFeHBDcmVhdGUpOgorICAg
ICAgICAoSlNDOjpjb25zdHJ1Y3RSZWdFeHApOgorICAgICAgICAoSlNDOjplc1NwZWNSZWdFeHBD
cmVhdGUpOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoUmVnRXhwQ29uc3RydWN0b3IpOgor
ICAgICAgICAoSlNDOjpnZXRSZWdFeHBTdHJ1Y3R1cmUpOiBEZWxldGVkLgorICAgICAgICAqIHJ1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1NldENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0U2V0KToKKyAgICAgICAgKiBydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aFN0cmlu
Z0NvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtNYXApOgorICAgICAgICAqIHJ1bnRpbWUvV2Vh
a09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1Jl
Zik6CisgICAgICAgICogcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXZWFrU2V0KToKKwogMjAxOS0xMC0wNCAgVHJ1aXR0IFNhdmVsbCAgPHRz
YXZlbGxAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyNTA1
ODMuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xl
YW5Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQz
LDcgKzQzLDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAg
IFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogICAgIEpTVmFsdWUgYm9vbGVhbiA9IGpzQm9vbGVhbihleGVjLT5hcmd1bWVudCgw
KS50b0Jvb2xlYW4oZXhlYykpOwotICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1Rh
cmdldCgpLCBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9i
YWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3
VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2Jq
ZWN0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmplY3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6OmNyZWF0
ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAgICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVlKHZtLCBi
b29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDgg
KzE1Miw5IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3REYXRlKEV4ZWNTdGF0ZSogZXhlYywKICAgICAK
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhEYXRlQ29u
c3RydWN0b3IoRXhlY1N0YXRlKiBleGVjKQogeworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gZXhl
Yy0+bmV3VGFyZ2V0KCk7CiAgICAgQXJnTGlzdCBhcmdzKGV4ZWMpOwotICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoY29uc3RydWN0RGF0ZShleGVjLCBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+
KGV4ZWMtPmpzQ2FsbGVlKCkpLT5nbG9iYWxPYmplY3QoZXhlYy0+dm0oKSksIGV4ZWMtPm5ld1Rh
cmdldCgpLCBhcmdzKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3REYXRl
KGV4ZWMsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdChleGVjLT52bSgpKSwgbmV3
VGFyZ2V0LCBhcmdzKSk7CiB9CiAKIC8vIEVDTUEgMTUuOS4yCkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24g
MjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zdHJ1Y3RFcgogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9
IGV4ZWMtPmFyZ3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBleGVjLT5uZXdUYXJn
ZXQoKSwganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+Z2xvYmFs
T2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBl
eGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0cnVjdHVyZSgpKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVh
dGUoZXhlYywgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBm
YWxzZSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9u
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTUyLDE5ICsxNTIsMjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tp
cHBpbmdFdmFsRQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2Jh
bE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3
VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1v
ZGUpIHsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAg
ICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAo
Z2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246
OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0LCBmdW5j
dGlvbik7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2Rl
OjpHZW5lcmF0b3I6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9y
RnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFs
T2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVy
ZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1
Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5j
R2VuZXJhdG9yOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJh
dG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xv
YmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJy
ZWFrOwogICAgIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENv
bGxhdG9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Myw3ICs5Myw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVk
LCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBu
ZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBjb2xsYXRvciBiZSBPcmRpbmFy
eUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVDb2xsYXRvclByb3RvdHlwZSUpLgog
ICAgIC8vIDMuIFJldHVybklmQWJydXB0KGNvbGxhdG9yKS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBz
dGF0ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcio+KHN0YXRl
LT5qc0NhbGxlZSgpKS0+Y29sbGF0b3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1Rh
cmdldCA9IHN0YXRlLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBuZXdUYXJnZXQs
IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmNvbGxhdG9yU3RydWN0dXJl
KCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwog
ICAgIEludGxDb2xsYXRvciogY29sbGF0b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgc3Ry
dWN0dXJlKTsKICAgICBBU1NFUlQoY29sbGF0b3IpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC05Myw3ICs5Myw4IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMK
ICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRo
ZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0
LgogICAgIC8vIDIuIExldCBkYXRlVGltZUZvcm1hdCBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25z
dHJ1Y3RvcihuZXdUYXJnZXQsICVEYXRlVGltZUZvcm1hdFByb3RvdHlwZSUpLgogICAgIC8vIDMu
IFJldHVybklmQWJydXB0KGRhdGVUaW1lRm9ybWF0KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0
ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KHN0
YXRlLT5qc0NhbGxlZSgpKS0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1Zh
bHVlIG5ld1RhcmdldCA9IHN0YXRlLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBu
ZXdUYXJnZXQsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmRhdGVUaW1l
Rm9ybWF0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwogICAgIEludGxEYXRlVGltZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQgPSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQoZGF0
ZVRpbWVGb3JtYXQpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51
bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Myw3ICs5Myw4IEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQg
aXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0
LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBudW1iZXJG
b3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlTnVtYmVy
Rm9ybWF0UHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0
KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKHN0YXRlLCBzdGF0ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsTnVt
YmVyRm9ybWF0Q29uc3RydWN0b3IqPihzdGF0ZS0+anNDYWxsZWUoKSktPm51bWJlckZvcm1hdFN0
cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gc3RhdGUtPm5ld1RhcmdldCgp
OworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoc3RhdGUsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxOdW1iZXJGb3JtYXQq
IG51bWJlckZvcm1hdCA9IEludGxOdW1iZXJGb3JtYXQ6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsK
ICAgICBBU1NFUlQobnVtYmVyRm9ybWF0KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQ
bHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTAsNyArOTAsOCBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAKICAgICAvLyAxMy4y
LjEgSW50bC5QbHVyYWxSdWxlcyAoWyBsb2NhbGVzIFsgLCBvcHRpb25zIF0gXSkKICAgICAvLyBo
dHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWE0MDIvI3NlYy1pbnRsLnBsdXJhbHJ1bGVzCi0gICAg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShzdGF0ZSwgc3RhdGUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8SW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IqPihzdGF0ZS0+anNDYWxsZWUoKSktPnBsdXJhbFJ1bGVzU3RydWN0dXJlKHZt
KSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBzdGF0ZS0+bmV3VGFyZ2V0KCk7CisgICAgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShzdGF0ZSwgbmV3VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT5wbHVyYWxSdWxlc1N0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBJbnRsUGx1cmFsUnVsZXMqIHBsdXJhbFJ1bGVz
ID0gSW50bFBsdXJhbFJ1bGVzOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgQVNTRVJUKHBs
dXJhbFJ1bGVzKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlC
dWZmZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzksOSArNzksOCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIEpTR2VuZXJpY0FyCiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBhdXRv
IHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0dlbmVyaWNBcnJheUJ1
ZmZlckNvbnN0cnVjdG9yKiBjb25zdHJ1Y3RvciA9IGpzQ2FzdDxKU0dlbmVyaWNBcnJheUJ1ZmZl
ckNvbnN0cnVjdG9yKj4oZXhlYy0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIGFycmF5
QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3Qodm0p
LT5hcnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5nTW9kZSkpOworICAgIEpTVmFsdWUgbmV3VGFy
Z2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBhcnJheUJ1ZmZlclN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5l
d1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+YXJyYXlCdWZm
ZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCB7IH0pOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBl
ZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVj
dG9ySW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDkgQEAgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSW50ZXJu
YWxGdW5jdGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpz
Q2FsbGVlKCkpOwotICAgIFN0cnVjdHVyZSogcGFyZW50U3RydWN0dXJlID0gZnVuY3Rpb24tPmds
b2JhbE9iamVjdCh2bSktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5
U3RvcmFnZVR5cGUpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIHBhcmVu
dFN0cnVjdHVyZSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBleGVjLT5uZXdUYXJnZXQoKTsK
KyAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmds
b2JhbE9iamVjdCh2bSktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5
U3RvcmFnZVR5cGUpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBwYXJlbnRTdHJ1Y3R1
cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwog
CiAgICAgc2l6ZV90IGFyZ0NvdW50ID0gZXhlYy0+YXJndW1lbnRDb3VudCgpOwpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3Ry
dWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw4ICs2Nyw4IEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QgPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGV4ZWMtPmpzQ2Fs
bGVlKCkpLT5nbG9iYWxPYmplY3Qodm0pOwotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3
VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBtYXBTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBuZXdUYXJn
ZXQsIGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm1hcFN0cnVjdHVyZSgp
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAog
ICAgIEpTVmFsdWUgaXRlcmFibGUgPSBleGVjLT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUs
OCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIE5hdGl2ZUVycm9yCiAgICAgVk0mIHZt
ID0gZXhlYy0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7
CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gZXhlYy0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJl
KiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGV4ZWMsIGV4ZWMtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8TmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
cio+KGV4ZWMtPmpzQ2FsbGVlKCkpLT5lcnJvclN0cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUg
bmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5l
d1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JTdHJ1
Y3R1cmUoZXJyb3JUeXBlKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAgICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAgICBSRUxFQVNFX0FO
RF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZXhl
YywgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkp
KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJD
b25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIsNyAr
OTIsOCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIGRvdWJsZSBuID0gZXhlYy0+
YXJndW1lbnRDb3VudCgpID8gZXhlYy0+dW5jaGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIoZXhl
YykgOiAwOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkp
OwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGV4ZWMtPmxleGljYWxHbG9i
YWxPYmplY3QoKS0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFy
Z2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBuZXdUYXJnZXQsIGFz
T2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51bWJlck9iamVjdFN0cnVjdHVy
ZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
IAogICAgIE51bWJlck9iamVjdCogb2JqZWN0ID0gTnVtYmVyT2JqZWN0OjpjcmVhdGUodm0sIHN0
cnVjdHVyZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25z
dHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
T2JqZWN0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTExOSw3ICsxMTksNiBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVjdCogY29uc3RydWN0
CiB7CiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBPYmplY3RDb25zdHJ1Y3Rvciogb2Jq
ZWN0Q29uc3RydWN0b3IgPSBqc0Nhc3Q8T2JqZWN0Q29uc3RydWN0b3IqPihleGVjLT5qc0NhbGxl
ZSgpKTsKLSAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gb2JqZWN0Q29uc3RydWN0
b3ItPmdsb2JhbE9iamVjdCh2bSk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogCiAgICAgLy8gV2UgbmVlZCB0byBjaGVjayBuZXdUYXJnZXQgY29uZGl0aW9uIGlu
IHRoaXMgY2FsbGVyIHNpZGUgaW5zdGVhZCBvZiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZSBzaWRlLgpAQCAtMTI4LDYgKzEyNyw3IEBAIHN0YXRpYyBBTFdBWVNfSU5M
SU5FIEpTT2JqZWN0KiBjb25zdHJ1Y3QKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgbmVpdGhl
ciB1bmRlZmluZWQgbm9yIHRoZSBhY3RpdmUgZnVuY3Rpb24sIHRoZW4KICAgICBpZiAobmV3VGFy
Z2V0ICYmIG5ld1RhcmdldCAhPSBvYmplY3RDb25zdHJ1Y3RvcikgewogICAgICAgICAvLyBhLiBS
ZXR1cm4gPyBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihOZXdUYXJnZXQsICIlT2JqZWN0
UHJvdG90eXBlJSIpLgorICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKTsKICAgICAgICAgU3RydWN0dXJlKiBv
YmplY3RTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShleGVjLCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+b2JqZWN0U3RydWN0dXJlRm9yT2JqZWN0
Q29uc3RydWN0b3IoKSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxw
dHIpOwogICAgICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3QoZXhlYywgb2JqZWN0U3Ry
dWN0dXJlKTsKQEAgLTEzNiw2ICsxMzYsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVj
dCogY29uc3RydWN0CiAgICAgLy8gMi4gSWYgdmFsdWUgaXMgbnVsbCwgdW5kZWZpbmVkIG9yIG5v
dCBzdXBwbGllZCwgcmV0dXJuIE9iamVjdENyZWF0ZSglT2JqZWN0UHJvdG90eXBlJSkuCiAgICAg
QXJnTGlzdCBhcmdzKGV4ZWMpOwogICAgIEpTVmFsdWUgYXJnID0gYXJncy5hdCgwKTsKKyAgICBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gb2JqZWN0Q29uc3RydWN0b3ItPmdsb2JhbE9i
amVjdCh2bSk7CiAgICAgaWYgKGFyZy5pc1VuZGVmaW5lZE9yTnVsbCgpKQogICAgICAgICByZXR1
cm4gY29uc3RydWN0RW1wdHlPYmplY3QoZXhlYywgZ2xvYmFsT2JqZWN0LT5vYmplY3RTdHJ1Y3R1
cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUwNzM0
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNzcsMTQgKzE3Nyw2IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3Ry
dWN0b3JNdWx0aWxpbmUoRXhlY1MKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWlubGluZSBTdHJ1
Y3R1cmUqIGdldFJlZ0V4cFN0cnVjdHVyZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0KQotewotICAgIFN0cnVjdHVyZSogc3Ry
dWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFy
Z2V0ICE9IGpzVW5kZWZpbmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgc3RydWN0dXJlKTsK
LSAgICByZXR1cm4gc3RydWN0dXJlOwotfQotCiBpbmxpbmUgT3B0aW9uU2V0PFlhcnI6OkZsYWdz
PiB0b0ZsYWdzKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBmbGFncykKIHsKICAgICBWTSYgdm0g
PSBleGVjLT52bSgpOwpAQCAtMjIwLDcgKzIxMiw3IEBAIHN0YXRpYyBKU09iamVjdCogcmVnRXhw
Q3JlYXRlKEV4ZWNTdGF0ZSoKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCi0gICAg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnZXRSZWdFeHBTdHJ1Y3R1cmUoZXhlYywgZ2xvYmFsT2Jq
ZWN0LCBuZXdUYXJnZXQpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBnbG9iYWxPYmpl
Y3QtPnJlZ0V4cFN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBu
dWxscHRyKTsKICAgICByZXR1cm4gUmVnRXhwT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSwg
cmVnRXhwKTsKIH0KQEAgLTIzNiw3ICsyMjgsNyBAQCBKU09iamVjdCogY29uc3RydWN0UmVnRXhw
KEV4ZWNTdGF0ZSogZXhlCiAgICAgYm9vbCBjb25zdHJ1Y3RBc1JlZ2V4cCA9IGlzUmVnRXhwKHZt
LCBleGVjLCBwYXR0ZXJuQXJnKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxs
cHRyKTsKIAotICAgIGlmIChuZXdUYXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25zdHJ1Y3RBc1Jl
Z2V4cCAmJiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdUYXJnZXQgJiYg
Y29uc3RydWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBK
U1ZhbHVlIGNvbnN0cnVjdG9yID0gcGF0dGVybkFyZy5nZXQoZXhlYywgdm0ucHJvcGVydHlOYW1l
cy0+Y29uc3RydWN0b3IpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxs
cHRyKTsKICAgICAgICAgaWYgKGNhbGxlZSA9PSBjb25zdHJ1Y3RvcikgewpAQCAtMjQ3LDcgKzIz
OSw3IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoRXhlY1N0YXRlKiBleGUKIAogICAgIGlm
IChpc1BhdHRlcm5SZWdFeHApIHsKICAgICAgICAgUmVnRXhwKiByZWdFeHAgPSBqc0Nhc3Q8UmVn
RXhwT2JqZWN0Kj4ocGF0dGVybkFyZyktPnJlZ0V4cCgpOwotICAgICAgICBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSA9IGdldFJlZ0V4cFN0cnVjdHVyZShleGVjLCBnbG9iYWxPYmplY3QsIG5ld1Rhcmdl
dCk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPnJlZ0V4
cFN0cnVjdHVyZSgpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0
cik7CiAKICAgICAgICAgaWYgKCFmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CkBAIC0yODIsMTMg
KzI3NCwxNSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY1JlZ0V4CiAgICAg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3Qo
KTsKICAgICBKU1ZhbHVlIHBhdHRlcm5BcmcgPSBleGVjLT5hcmd1bWVudCgwKTsKICAgICBKU1Zh
bHVlIGZsYWdzQXJnID0gZXhlYy0+YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVu
Y29kZShyZWdFeHBDcmVhdGUoZXhlYywgZ2xvYmFsT2JqZWN0LCBqc1VuZGVmaW5lZCgpLCBwYXR0
ZXJuQXJnLCBmbGFnc0FyZykpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3Jl
YXRlKGV4ZWMsIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykp
OwogfQogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRo
UmVnRXhwQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjKQogeworICAgIEpTVmFsdWUgbmV3VGFy
Z2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdChleGVjLT52bSgpKTsKICAgICBB
cmdMaXN0IGFyZ3MoZXhlYyk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RS
ZWdFeHAoZXhlYywganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxlZSgpKS0+
Z2xvYmFsT2JqZWN0KGV4ZWMtPnZtKCkpLCBhcmdzLCBleGVjLT5qc0NhbGxlZSgpLCBleGVjLT5u
ZXdUYXJnZXQoKSkpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0UmVnRXhw
KGV4ZWMsIGdsb2JhbE9iamVjdCwgYXJncywgZXhlYy0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0KSk7
CiB9CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxSZWdFeHBDb25z
dHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI1MDczNCkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTU4LDcgKzU4LDcgQEAgcHJpdmF0ZToKIAogc3RhdGljX2Fzc2VydChzaXplb2Yo
UmVnRXhwQ29uc3RydWN0b3IpID09IHNpemVvZihJbnRlcm5hbEZ1bmN0aW9uKSwgIiIpOwogCi1K
U09iamVjdCogY29uc3RydWN0UmVnRXhwKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgY29u
c3QgQXJnTGlzdCYsIEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGpzVW5kZWZpbmVkKCkpOworSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChFeGVjU3RhdGUq
LCBKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVs
bHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBKU1ZhbHVlKCkpOwogCiBBTFdBWVNfSU5MSU5FIGJv
b2wgaXNSZWdFeHAoVk0mIHZtLCBFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUpCiB7Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNTA3MzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
ZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY3LDggKzY3LDggQEAgc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGV4ZWMtPnZt
KCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oZXhl
Yy0+anNDYWxsZWUoKSktPmdsb2JhbE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJlKiBzZXRTdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBl
eGVjLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNW
YWx1ZSBuZXdUYXJnZXQgPSBleGVjLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMs
IG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+c2V0U3Ry
dWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVl
KCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGV4ZWMtPmFyZ3VtZW50KDApOwpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDIsMTAgKzE0Miw5IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIHN0cmkKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3RvcihFeGVj
U3RhdGUqIGV4ZWMpCiB7CiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKLSAgICBKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0ID0ganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0Nh
bGxlZSgpKS0+Z2xvYmFsT2JqZWN0KHZtKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIGV4ZWMtPm5ld1RhcmdldCgpLCBnbG9i
YWxPYmplY3QtPnN0cmluZ09iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGV4ZWMtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgbmV3VGFyZ2V0LCBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUo
KSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAK
ICAgICBpZiAoIWV4ZWMtPmFyZ3VtZW50Q291bnQoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24g
MjUwNzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsOCArNjUsOCBAQCBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBh
dXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0ID0ganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihleGVjLT5qc0NhbGxl
ZSgpKS0+Z2xvYmFsT2JqZWN0KHZtKTsKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShleGVjLCBleGVjLT5u
ZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWFrTWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFs
dWUgbmV3VGFyZ2V0ID0gZXhlYy0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiB3ZWFrTWFw
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhl
YywgbmV3VGFyZ2V0LCBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFr
TWFwU3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogICAgIEpTV2Vha01hcCogd2Vha01hcCA9IEpTV2Vha01hcDo6Y3JlYXRlKHZt
LCB3ZWFrTWFwU3RydWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gZXhlYy0+YXJndW1l
bnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVm
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTY4LDggKzY4LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogICAgIGlmICghZXhlYy0+YXJndW1lbnQoMCkuaXNPYmplY3QoKSkK
ICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZXhlYywgc2NvcGUsICJGaXJzdCBhcmd1
bWVudCB0byBXZWFrUmVmIHNob3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0gICAgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oZXhlYy0+anND
YWxsZWUoKSktPmdsb2JhbE9iamVjdCh2bSk7Ci0gICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVm
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhl
YywgZXhlYy0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0cnVjdHVy
ZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGV4ZWMtPm5ld1RhcmdldCgpOworICAgIFN0
cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9S
RVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwg
V2Vha09iamVjdFJlZlN0cnVjdHVyZSwgZXhlYy0+dW5jaGVja2VkQXJndW1lbnQoMCkuZ2V0T2Jq
ZWN0KCkpKSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MDczNCkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTY1LDggKzY1LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Y29ucwogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpz
Q2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oZXhlYy0+anNDYWxsZWUoKSktPmdsb2JhbE9iamVjdCh2
bSk7Ci0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZXhlYywgZXhlYy0+bmV3VGFyZ2V0KCksIGdsb2JhbE9i
amVjdC0+d2Vha1NldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGV4ZWMt
Pm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGV4ZWMsIG5ld1RhcmdldCwgYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha1NldFN0cnVjdHVyZSgpKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dl
YWtTZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0cnVjdHVyZSk7
CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGV4ZWMtPmFyZ3VtZW50KDApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383050</attachid>
            <date>2019-11-07 08:12:32 -0800</date>
            <delta_ts>2019-11-07 08:18:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191107181230.patch</filename>
            <type>text/plain</type>
            <size>40726</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIxODMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTA3ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDU4IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wNiAgTWFy
ayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgSlNHbG9iYWxPYmplY3Q6OmZp
cmVXYXRjaHBvaW50QW5kTWFrZUFsbEFycmF5U3RydWN0dXJlc1Nsb3dQdXQoKSBzaG91bGQgZmly
ZSBpdHMgd2F0Y2hwb2ludCBhcyB0aGUgbGFzdCBzdGVwLgpJbmRleDogSlNUZXN0cy90ZXN0MjYy
L2V4cGVjdGF0aW9ucy55YW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3Rh
dGlvbnMueWFtbAkocmV2aXNpb24gMjUyMTgwKQorKysgSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0
aW9ucy55YW1sCSh3b3JraW5nIGNvcHkpCkBAIC02MjEsMTUgKzYyMSw2IEBAIHRlc3QvYW5uZXhC
L2xhbmd1YWdlL3N0YXRlbWVudHMvZm9yLW9mL2kKIHRlc3QvYnVpbHQtaW5zL0FycmF5L29mL3Jl
dHVybi1hYnJ1cHQtZnJvbS1kYXRhLXByb3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3
YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90by1mcm9tLWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L0FycmF5L3Byb3RvdHlwZS9maWx0ZXIvdGFyZ2V0LWFycmF5LXdpdGgtbm9uLXdyaXRhYmxlLXBy
b3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVHlwZUVycm9yOiBBdHRlbXB0ZWQgdG8gYXNzaWduIHRv
IHJlYWRvbmx5IHByb3BlcnR5LicKICAgc3RyaWN0IG1vZGU6ICdUeXBlRXJyb3I6IEF0dGVtcHRl
ZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuJwpAQCAtNzA1LDkgKzY5Niw2IEBAIHRl
c3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxpY2UvdGgKIHRlc3QvYnVpbHQtaW5zL0Fy
cmF5L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1pbnRlZ2VyLWxpbWl0LmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5MDA3MTk5MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1
ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LCuywgw4LCqzkwMDcxOTkyNTQ3NDA5OTHD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywgw4LCq1tvYmplY3QgQXJyYXlCdWZmZXJd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7LCDDgsKrW29iamVjdCBBcnJh
eUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlv
biB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24g
YXQgYWxsJwpAQCAtNzM4LDE1ICs3MjYsOSBAQCB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvc2xpCiB0ZXN0L2J1aWx0LWlucy9BcnJheUl0ZXJhdG9yUHJvdG90eXBlL25leHQv
ZGV0YWNoLXR5cGVkYXJyYXktaW4tcHJvZ3Jlc3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdh
cyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwotdGVzdC9idWlsdC1pbnMvQXN5bmNGdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0u
anM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrss
IMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0
IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9j
b25zdHJ1Y3Rvci1pbnRlZ2VyLmpzOgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUg
aW50ZWdlcicKICAgc3RyaWN0IG1vZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwot
dGVzdC9idWlsdC1pbnMvQm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKr
ZmFsc2XDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9jdXN0b20tcHJvdG8tYWNjZXNzLWRldGFjaGVzLWJ1
ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24g
YnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTc1Niw5ICs3MzgsNiBAQCB0
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9kZXRhY2hlZC1idWZmZXIuCiB0ZXN0L2J1aWx0LWlucy9E
YXRhVmlldy9sZW5ndGguanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3Ig
dmFsdWUgc2hvdWxkIGJlIDEnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBkZXNjcmlw
dG9yIHZhbHVlIHNob3VsZCBiZSAxJwotdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXddw4LC
uykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBEYXRhVmlld13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13D
gsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVM
ZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3du
IGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVy
cm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAt
ODYxLDE4ICs4NDAsNiBAQCB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWlu
CiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWludDgvZGV0YWNoZWQtYnVm
ZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBi
dXQgZ290IGEgUmFuZ2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwotdGVzdC9idWlsdC1pbnMvRGF0
ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0
IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBP
YmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRv
IGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJv
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2Jq
ZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL0Vycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJv
csOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq0Vycm9yw4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRl
c3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2NhbGwtYmluZC10aGlzLXJlYWxtLXVuZGVmLmpzOgogICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IGdsb2JhbF3DgsK7LCDDgsKrW29iamVjdCBVbmRlZmluZWRdw4LCuykg
dG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgZ2xvYmFsXcOCwrssIMOCwqtbb2Jq
ZWN0IFVuZGVmaW5lZF3DgsK7KSB0byBiZSB0cnVlJwpAQCAtODkxLDkgKzg1OCw2IEBAIHRlc3Qv
YnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0
aW9uL2ludGVybmFscy9Db25zdHJ1Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVhbG0u
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3Ig
YnV0IGdvdCBhIFJlZmVyZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10ZXN0
L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rp
b24gKCkgeycKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1l
eGNlZWRzLWludDMyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCqzDDgsK7LCDDgsKrMjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKr
MjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCkBAIC0xMDExLDM2ICs5NzUsOSBAQCB0ZXN0L2J1
aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlv
bi9wcm90b3R5cGUvdG9TdHJpbmcvdW5pY29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJv
cjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9
LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9u
IFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJu
IGI7IH0pIgogICBzdHJpY3QgbW9kZTogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZl
RnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIg
PSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1
MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1p
bnMvR2VuZXJhdG9yRnVuY3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9y
RnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JG
dW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBNYXBdw4LCuywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9y
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9y
w4LCuywgw4LCq0V2YWxFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRp
dmVFcnJvcnMvUmFuZ2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtS
YW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9S
ZWZlcmVuY2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrUmVmZXJlbmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlw
ZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrss
IMOCwqtSZWZlcmVuY2VFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRp
dmVFcnJvcnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDD
gsKrU3ludGF4RXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJy
b3JzL1R5cGVFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrVHlwZUVycm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFy
Z2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJv
csOCwrssIMOCwqtVUklFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1VSSUVycm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRl
c3QvYnVpbHQtaW5zL051bWJlci9iaWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5
cGVFcnJvcjogQ29udmVyc2lvbiBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxv
d2VkLiIKICAgc3RyaWN0IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50
JyB0byAnbnVtYmVyJyBpcyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOC
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93
blByb3BlcnR5L2NvbnNpc3RlbnQtdmFsdWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKr
W29iamVjdCBBcmd1bWVudHNdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVj
dC9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1j
YWxsZXIuanM6CkBAIC0xMDU3LDkgKzk5NCw2IEBAIHRlc3QvYnVpbHQtaW5zL09iamVjdC9rZXlz
L3Byb3h5LW5vbi1lbnUKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9rZXlzL3Byb3h5LW5vbi1lbnVt
ZXJhYmxlLXByb3AtaW52YXJpYW50LTIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJv
d24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBl
RXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10
ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOC
wrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09i
amVjdC9wcm90b3R5cGUvdG9TdHJpbmcvcHJveHktZnVuY3Rpb24uanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKQEAgLTEwOTksOSArMTAzMyw2IEBAIHRlc3QvYnVpbHQtaW5zL1Byb21pc2Uv
ZXhlY3V0b3ItZnVuY3Rpb24KIHRlc3QvYnVpbHQtaW5zL1Byb21pc2UvZXhlY3V0b3ItZnVuY3Rp
b24tbm9uY29uc3RydWN0b3IuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrdHJ1ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7
LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBQcm9taXNlXcOCwrssIMOCwqtbb2JqZWN0IFByb21pc2Vd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBQcm9taXNlXcOCwrssIMOCwqtbb2JqZWN0IFByb21pc2Vd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9pbnZva2UtcmVz
b2x2ZS1nZXQtZXJyb3ItY2xvc2UuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsxw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsx
w4LCuykgdG8gYmUgdHJ1ZScKQEAgLTE0ODYsOSArMTQxNyw2IEBAIHRlc3QvYnVpbHQtaW5zL1Jl
Z0V4cC9wcm9wZXJ0eS1lc2NhcGVzL24KIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm9wZXJ0eS1l
c2NhcGVzL25vbi1leGlzdGVudC1wcm9wZXJ0eS12YWx1ZS1nZW5lcmFsLWNhdGVnb3J5LmpzOgog
ICBkZWZhdWx0OiAnVGVzdDI2MjogVGhpcyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0
ZWQuJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjI6IFRoaXMgc3RhdGVtZW50IHNob3VsZCBub3Qg
YmUgZXZhbHVhdGVkLicKLXRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
Lyg/Oikvw4LCuywgw4LCqy8oPzopL8OCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86
KS/DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3RvdHlwZS9TeW1i
b2wubWF0Y2gvYnVpbHRpbi1pbmZlci11bmljb2RlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOCwqtudWxsw4LCuykgdG8g
YmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrw6/Cv8K9w4LCuywgw4LCq251bGzDgsK7KSB0byBiZSB0cnVlJwpAQCAtMTU3MywxMiAr
MTUwMSw2IEBAIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC91bmljb2RlX3Jlc3RyaWN0ZWQKIHRlc3Qv
YnVpbHQtaW5zL1JlZ0V4cC91bmljb2RlX3Jlc3RyaWN0ZWRfcXVhbnRpZmlhYmxlX2Fzc2VydGlv
bi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogUmVnRXhwKCIoPz0uKSoiLCAidSIpOiAg
RXhwZWN0ZWQgYSBTeW50YXhFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMg
dGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFJlZ0V4cCgiKD89
LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1aWx0LWlucy9TZXQvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgU2V0XcOCwrssIMOCwqtbb2JqZWN0IFNldF3DgsK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IFNldF3DgsK7LCDDgsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL1N0cmluZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvVGhyb3dU
eXBlRXJyb3IvZXh0ZW5zaWJsZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1ZcOC
wrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCkBAIC0xNzkxLDE1ICsxNzEzLDYgQEAgdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9vZgogdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy9vZi9uZXctaW5zdGFuY2UtdXNpbmctY3VzdG9tLWN0b3IuanM6
CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWlyZXMgaXRzIHRoaXMg
YXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9yIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBUeXBlZEFycmF5
Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRBcnJheSBj
b25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMv
V2Vha01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrTWFwXcOCwrssIMOCwqtbb2Jq
ZWN0IFdlYWtNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrTWFwXcOCwrssIMOCwqtbb2Jq
ZWN0IFdlYWtNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL1dlYWtSZWYvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJn
ZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3Qg
V2Vha1JlZl3DgsK7LCDDgsKrW29iamVjdCBXZWFrUmVmXcOCwrspIHRvIGJlIHRydWUnCi0gIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7LCDDgsKrW29iamVj
dCBXZWFrUmVmXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrU2V0L3Byb3Rv
LWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuywgw4LCq1tvYmplY3QgV2Vha1NldF3D
gsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuywgw4LCq1tvYmplY3QgV2Vha1NldF3D
gsK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAyL0JpZ0ludC9wcm90b3R5cGUvdG9Mb2NhbGVT
dHJpbmcvZGUtREUuanM6CiAgIGRlZmF1bHQ6ICdSYW5nZUVycm9yOiB0b1N0cmluZygpIHJhZGl4
IGFyZ3VtZW50IG11c3QgYmUgYmV0d2VlbiAyIGFuZCAzNicKICAgc3RyaWN0IG1vZGU6ICdSYW5n
ZUVycm9yOiB0b1N0cmluZygpIHJhZGl4IGFyZ3VtZW50IG11c3QgYmUgYmV0d2VlbiAyIGFuZCAz
NicKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUyMTgwKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU3
IEBACisyMDE5LTExLTA3ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4K
KworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91
bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gW1tDb25zdHJ1Y3RdXSwgaWYgYGNvbnN0cnVjdG9y
LnByb3RvdHlwZWAgaXMgbm90IGFuIG9iamVjdCwgZGVmYXVsdCBwcm90b3R5cGUgb2YgcmVhbG0g
aXMgdXNlZC4KKyAgICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29u
c3RydWN0b3Igd2FzIHVzZWQgdG8gZ2V0IHRoZSBiYXNlIHN0cnVjdHVyZSBmcm9tLiBQZXIgc3Bl
YworICAgICAgICAoZm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMvZWNtYTI2
Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvciksIE5ld1RhcmdldCBpcyBwYXNzZWQgdG8KKyAgICAgICAg
R2V0UHJvdG90eXBlRnJvbUNvbnN0cnVjdG9yLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxpZ25z
IGFsbCBFQ01BLTI2MiBjb25zdHJ1Y3RvcnMgd2l0aCB0aGUgc3BlYywgVjgsIGFuZCBTcGlkZXJN
b25rZXkuCisKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdFdpdGhCb29sZWFuQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1
bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcDoKKyAgICAgICAgKEpTQzo6U0xPV19QQVRIX0RFQ0wp
OgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Y29uc3RydWN0RGF0ZSk6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6Y29uc3RydWN0RXJyb3JDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RnVu
Y3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2spOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJh
eUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNHZW5lcmljQXJyYXlCdWZm
ZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNvbnN0cnVjdEFycmF5QnVmZmVyKToKKyAgICAg
ICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAg
ICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpTQzo6SlNHbG9i
YWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbiBj
b25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChK
U0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3RvcjxlcnJvclR5cGU+
Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL051
bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVtYmVyQ29uc3Ry
dWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAgKiBydW50aW1l
L1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhwU3RydWN0dXJl
KToKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpTQzo6ZXNTcGVj
UmVnRXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6Cisg
ICAgICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0
cnVjdFNldCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVu
dGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFr
TWFwKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha1Nl
dENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1NldCk6CisKIDIw
MTktMTEtMDYgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92
ZSByZW1uYW50cyBvZiBzdXBwb3J0IGNvZGUgZm9yIGFuIHVwd2FyZHMgZ3Jvd2luZyBzdGFjay4K
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDMsNyAr
NDMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIGJvb2xlYW4gPSBqc0Jvb2xlYW4oY2FsbEZyYW1lLT5h
cmd1bWVudCgwKS50b0Jvb2xlYW4oZ2xvYmFsT2JqZWN0KSk7Ci0gICAgU3RydWN0dXJlKiBib29s
ZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCksIGdsb2JhbE9iamVjdC0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNl
U3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+Ym9vbGVh
bk9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmpl
Y3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6OmNyZWF0ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAg
ICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVlKHZtLCBib29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNsb3dQYXRocy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAkocmV2aXNpb24g
MjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhz
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjczLDcgKzI3Myw4IEBAIFNMT1dfUEFUSF9ERUNMKHNs
b3dfcGF0aF9jcmVhdGVfcHJvbWlzZSkKICAgICAgICAgQ0hFQ0tfRVhDRVBUSU9OKCk7CiAgICAg
ICAgIHJlc3VsdCA9IEpTSW50ZXJuYWxQcm9taXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAg
ICAgfSBlbHNlIHsKLSAgICAgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+
cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVjdG9yQXNPYmplY3QsIGdsb2JhbE9iamVjdC0+
cHJvbWlzZVN0cnVjdHVyZSgpKTsKKyAgICAgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0g
Y29uc3RydWN0b3JBc09iamVjdC0+Z2xvYmFsT2JqZWN0KHZtKS0+cHJvbWlzZVN0cnVjdHVyZSgp
OworICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29u
c3RydWN0b3IoKSwgY29uc3RydWN0b3JBc09iamVjdCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgICAg
IENIRUNLX0VYQ0VQVElPTigpOwogICAgICAgICByZXN1bHQgPSBKU1Byb21pc2U6OmNyZWF0ZSh2
bSwgc3RydWN0dXJlKTsKICAgICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE0Myw3ICsxNDMsOCBAQCBKU09iamVjdCogY29uc3RydWN0RGF0ZShKU0dsb2JhbE9i
amVjdCogCiAgICAgICAgIHZhbHVlID0gbWlsbGlzZWNvbmRzRnJvbUNvbXBvbmVudHMoZ2xvYmFs
T2JqZWN0LCBhcmdzLCBXVEY6OkxvY2FsVGltZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgbnVsbHB0cik7CiAKLSAgICBTdHJ1Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9i
amVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgZ2xvYmFsT2JqZWN0LT5kYXRlU3Ry
dWN0dXJlKCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdCh2bSktPmRhdGVTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUq
IGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1Rhcmdl
dCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0
cik7CiAKICAgICByZXR1cm4gRGF0ZUluc3RhbmNlOjpjcmVhdGUodm0sIGRhdGVTdHJ1Y3R1cmUs
IHZhbHVlKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3Ry
dWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vy
cm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTcs
NyArNTcsOSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEVyCiAgICAg
Vk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RI
Uk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50
KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5lcnJvclN0cnVjdHVyZSgp
KTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAg
U3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2Jq
ZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFT
RV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRl
KGdsb2JhbE9iamVjdCwgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3Ro
aW5nLCBmYWxzZSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1
bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIxODApCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTUyLDE5ICsxNTIsMjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0
aW9uU2tpcHBpbmdFdmFsRQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBK
U0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVj
dGlvbk1vZGUpIHsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246
Ci0gICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1
bmNFeHAoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVu
Y3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0
LCBmdW5jdGlvbik7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rp
b25Nb2RlOjpHZW5lcmF0b3I6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2Vu
ZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJl
R2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVh
azsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0
cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAg
ICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1
cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6
OkFzeW5jR2VuZXJhdG9yOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0
dXJlR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAg
ICAgIGJyZWFrOwogICAgIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29u
c3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03OSw5ICs3OSw5IEBAIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgSlNHZW5lcmljQXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3Qt
PnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAg
SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvciogY29uc3RydWN0b3IgPSBqc0Nhc3Q8SlNH
ZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0K
LSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKS0+
YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpKTsKKyAgICBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJl
ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+YXJyYXlCdWZmZXJTdHJ1
Y3R1cmUoc2hhcmluZ01vZGUpOworICAgIFN0cnVjdHVyZSogYXJyYXlCdWZmZXJTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZp
ZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCShy
ZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVy
aWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
MTEsOSArMjExLDkgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQog
ICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFS
RV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBJbnRlcm5hbEZ1bmN0aW9uKiBmdW5jdGlvbiA9IGpz
Q2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsKLSAgICBTdHJ1
Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGZ1bmN0aW9uLT5nbG9iYWxPYmplY3QoKS0+dHlwZWRB
cnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7Ci0gICAgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKSwgcGFyZW50U3RydWN0dXJlKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3
Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIHNpemVf
dCBhcmdDb3VudCA9IGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJ
KHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xv
YmFsT2JqZWN0SW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDEsNyArMTAxLDEwIEBAIEFM
V0FZU19JTkxJTkUgYm9vbCBKU0dsb2JhbE9iamVjdDo6aXNTZXQKIAogQUxXQVlTX0lOTElORSBT
dHJ1Y3R1cmUqIEpTR2xvYmFsT2JqZWN0OjphcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1
cmluZ0FsbG9jYXRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSW5kZXhpbmdUeXBl
IGluZGV4aW5nVHlwZSwgSlNWYWx1ZSBuZXdUYXJnZXQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xv
YmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgYXJyYXlTdHJ1Y3R1cmVG
b3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKGluZGV4aW5nVHlwZSkpOworICAgIFZNJiB2
bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAgICBKU0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xv
YmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKSA6IGdsb2JhbE9iamVjdDsKKyAgICBTdHJ1Y3R1cmUqIGFycmF5U3RydWN0dXJlID0gc3Ry
dWN0dXJlR2xvYmFsT2JqZWN0LT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0Fs
bG9jYXRpb24oaW5kZXhpbmdUeXBlKTsKKyAgICByZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmFycmF5Q29u
c3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBhcnJheVN0cnVjdHVyZSk7CiB9CiAKIGlubGluZSBKU0Z1
bmN0aW9uKiBKU0dsb2JhbE9iamVjdDo6dGhyb3dUeXBlRXJyb3JGdW5jdGlvbigpIGNvbnN0IHsg
cmV0dXJuIGpzQ2FzdDxKU0Z1bmN0aW9uKj4obGlua1RpbWVDb25zdGFudChMaW5rVGltZUNvbnN0
YW50Ojp0aHJvd1R5cGVFcnJvckZ1bmN0aW9uKSk7IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjE4MCkK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjcsNyArNjcsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8g
c2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGds
b2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2Fs
bEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5tYXBTdHJ1Y3R1cmUoKTsKKyAgICBT
dHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQs
IGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
YXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTU1LDcgKzU1LDkgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBOYXRp
dmVFcnJvcgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZy
YW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxOYXRpdmVFcnJv
ckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZXJyb3JTdHJ1Y3R1cmUodm0p
KTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAg
U3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2Jq
ZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9y
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVy
ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAg
ICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUs
IEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJv
clN0cnVjdHVyZSwgbWVzc2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Miw3ICs5Miw5IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgZG91YmxlIG4gPSBjYWxsRnJhbWUtPmFy
Z3VtZW50Q291bnQoKSA/IGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIo
Z2xvYmFsT2JqZWN0KSA6IDA7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5udW1iZXJPYmplY3RT
dHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCkt
Pmdsb2JhbE9iamVjdCh2bSktPm51bWJlck9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVy
ZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVj
dHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7
CiAKICAgICBOdW1iZXJPYmplY3QqIG9iamVjdCA9IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBz
dHJ1Y3R1cmUpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29u
c3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L09iamVjdENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xMjcsNyArMTI3LDggQEAgc3RhdGljIEFMV0FZU19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVj
dAogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFj
dGl2ZSBmdW5jdGlvbiwgdGhlbgogICAgIGlmIChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9i
amVjdENvbnN0cnVjdG9yKSB7CiAgICAgICAgIC8vIGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRl
RnJvbUNvbnN0cnVjdG9yKE5ld1RhcmdldCwgIiVPYmplY3RQcm90b3R5cGUlIikuCi0gICAgICAg
IFN0cnVjdHVyZSogb2JqZWN0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0
LCBnbG9iYWxPYmplY3QtPm9iamVjdFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOwor
ICAgICAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5n
bG9iYWxPYmplY3Qodm0pLT5vYmplY3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpOwor
ICAgICAgICBTdHJ1Y3R1cmUqIG9iamVjdFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5l
d1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIG51bGxwdHIpOwogICAgICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3Qodm0sIG9i
amVjdFN0cnVjdHVyZSk7CiAgICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNzIsMTAgKzE3Miw5IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JN
dWx0aWxpbmUoSlNHbG8KIAogaW5saW5lIFN0cnVjdHVyZSogZ2V0UmVnRXhwU3RydWN0dXJlKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0KQogewotICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAg
ICBpZiAobmV3VGFyZ2V0ICE9IGpzVW5kZWZpbmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xv
YmFsT2JqZWN0LT5yZWdFeHBDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZSk7Ci0g
ICAgcmV0dXJuIHN0cnVjdHVyZTsKKyAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7Cisg
ICAgSlNHbG9iYWxPYmplY3QqIHN0cnVjdHVyZUdsb2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFz
T2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9iYWxPYmplY3Q7CisgICAg
cmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVj
dHVyZUdsb2JhbE9iamVjdC0+cmVnRXhwU3RydWN0dXJlKCkpOwogfQogCiBpbmxpbmUgT3B0aW9u
U2V0PFlhcnI6OkZsYWdzPiB0b0ZsYWdzKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZmxhZ3MpCkBAIC0yMjksNyArMjI4LDcgQEAgSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4
cChKU0dsb2JhbE9iamVjdAogICAgIGJvb2wgY29uc3RydWN0QXNSZWdleHAgPSBpc1JlZ0V4cCh2
bSwgZ2xvYmFsT2JqZWN0LCBwYXR0ZXJuQXJnKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBudWxscHRyKTsKIAotICAgIGlmIChuZXdUYXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25z
dHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdU
YXJnZXQgJiYgY29uc3RydWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewog
ICAgICAgICBKU1ZhbHVlIGNvbnN0cnVjdG9yID0gcGF0dGVybkFyZy5nZXQoZ2xvYmFsT2JqZWN0
LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3Rvcik7CiAgICAgICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAgICBpZiAoY2FsbGVlID09IGNvbnN0cnVjdG9y
KSB7CkBAIC0yNzQsNyArMjczLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1Nw
ZWNSZWdFeAogewogICAgIEpTVmFsdWUgcGF0dGVybkFyZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCk7CiAgICAgSlNWYWx1ZSBmbGFnc0FyZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7Ci0gICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUoZ2xvYmFsT2JqZWN0LCBqc1VuZGVm
aW5lZCgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVjdCwgSlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBmbGFn
c0FyZykpOwogfQogCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY0lzUmVnRXhw
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rv
ci5oCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9S
ZWdFeHBDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC01OCw3ICs1OCw3IEBAIHByaXZh
dGU6CiAKIHN0YXRpY19hc3NlcnQoc2l6ZW9mKFJlZ0V4cENvbnN0cnVjdG9yKSA9PSBzaXplb2Yo
SW50ZXJuYWxGdW5jdGlvbiksICIiKTsKIAotSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0ds
b2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwg
SlNWYWx1ZSBuZXdUYXJnZXQgPSBqc1VuZGVmaW5lZCgpKTsKK0pTT2JqZWN0KiBjb25zdHJ1Y3RS
ZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25zdCBBcmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9
IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0ID0gSlNWYWx1ZSgpKTsKIAogQUxXQVlTX0lOTElO
RSBib29sIGlzUmVnRXhwKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSB2YWx1ZSkKIHsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcs
NyArNjcsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAg
Vk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RI
Uk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogc2V0U3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUt
PmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+c2V0U3Ry
dWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5n
bG9iYWxPYmplY3Qodm0pLT5zZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAg
SlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCShy
ZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdD
b25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0NCw3ICsxNDQsOSBAQCBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2Jq
ZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAot
ICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+c3RyaW5nT2JqZWN0U3RydWN0dXJlKCkpOwor
ICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1
Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgaWYgKCFj
YWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgw
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSog
d2Vha01hcFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rh
cmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtNYXBTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBu
ZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0
cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtNYXBT
dHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+
anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dlYWtNYXAqIHdlYWtNYXAg
PSBKU1dlYWtNYXA6OmNyZWF0ZSh2bSwgd2Vha01hcFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBp
dGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5j
cHAJKHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY4LDcgKzY4LDkg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGlmICghY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKS5pc09iamVjdCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5
cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRmlyc3QgYXJndW1lbnQgdG8gV2Vha1JlZiBz
aG91bGQgYmUgYW4gb2JqZWN0Il9zKTsKIAotICAgIFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBn
bG9iYWxPYmplY3QtPndlYWtPYmplY3RSZWZTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdU
YXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVj
dHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtPYmplY3RS
ZWZTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNh
bGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FO
RF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2
bSwgV2Vha09iamVjdFJlZlN0cnVjdHVyZSwgY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgw
KS5nZXRPYmplY3QoKSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjUsNyArNjUsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8g
c2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha1Nl
dFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgp
LCBnbG9iYWxPYmplY3QtPndlYWtTZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJn
ZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVy
ZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtTZXRTdHJ1Y3R1
cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtTZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dl
YWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJs
ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383052</attachid>
            <date>2019-11-07 08:19:04 -0800</date>
            <delta_ts>2019-11-08 07:00:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191107181902.patch</filename>
            <type>text/plain</type>
            <size>40639</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIxODMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTA3ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDU4IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wNiAgTWFy
ayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgSlNHbG9iYWxPYmplY3Q6OmZp
cmVXYXRjaHBvaW50QW5kTWFrZUFsbEFycmF5U3RydWN0dXJlc1Nsb3dQdXQoKSBzaG91bGQgZmly
ZSBpdHMgd2F0Y2hwb2ludCBhcyB0aGUgbGFzdCBzdGVwLgpJbmRleDogSlNUZXN0cy90ZXN0MjYy
L2V4cGVjdGF0aW9ucy55YW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3Rh
dGlvbnMueWFtbAkocmV2aXNpb24gMjUyMTgwKQorKysgSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0
aW9ucy55YW1sCSh3b3JraW5nIGNvcHkpCkBAIC02MjEsMTUgKzYyMSw2IEBAIHRlc3QvYW5uZXhC
L2xhbmd1YWdlL3N0YXRlbWVudHMvZm9yLW9mL2kKIHRlc3QvYnVpbHQtaW5zL0FycmF5L29mL3Jl
dHVybi1hYnJ1cHQtZnJvbS1kYXRhLXByb3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3
YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90by1mcm9tLWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L0FycmF5L3Byb3RvdHlwZS9maWx0ZXIvdGFyZ2V0LWFycmF5LXdpdGgtbm9uLXdyaXRhYmxlLXBy
b3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVHlwZUVycm9yOiBBdHRlbXB0ZWQgdG8gYXNzaWduIHRv
IHJlYWRvbmx5IHByb3BlcnR5LicKICAgc3RyaWN0IG1vZGU6ICdUeXBlRXJyb3I6IEF0dGVtcHRl
ZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuJwpAQCAtNzA1LDkgKzY5Niw2IEBAIHRl
c3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxpY2UvdGgKIHRlc3QvYnVpbHQtaW5zL0Fy
cmF5L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1pbnRlZ2VyLWxpbWl0LmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5MDA3MTk5MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1
ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LCuywgw4LCqzkwMDcxOTkyNTQ3NDA5OTHD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywgw4LCq1tvYmplY3QgQXJyYXlCdWZmZXJd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7LCDDgsKrW29iamVjdCBBcnJh
eUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlv
biB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24g
YXQgYWxsJwpAQCAtNzM4LDE1ICs3MjYsOSBAQCB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvc2xpCiB0ZXN0L2J1aWx0LWlucy9BcnJheUl0ZXJhdG9yUHJvdG90eXBlL25leHQv
ZGV0YWNoLXR5cGVkYXJyYXktaW4tcHJvZ3Jlc3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdh
cyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwotdGVzdC9idWlsdC1pbnMvQXN5bmNGdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0u
anM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrss
IMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0
IEFzeW5jRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9j
b25zdHJ1Y3Rvci1pbnRlZ2VyLmpzOgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUg
aW50ZWdlcicKICAgc3RyaWN0IG1vZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwot
dGVzdC9idWlsdC1pbnMvQm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKr
ZmFsc2XDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9jdXN0b20tcHJvdG8tYWNjZXNzLWRldGFjaGVzLWJ1
ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24g
YnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTc1Niw5ICs3MzgsNiBAQCB0
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9kZXRhY2hlZC1idWZmZXIuCiB0ZXN0L2J1aWx0LWlucy9E
YXRhVmlldy9sZW5ndGguanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3Ig
dmFsdWUgc2hvdWxkIGJlIDEnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBkZXNjcmlw
dG9yIHZhbHVlIHNob3VsZCBiZSAxJwotdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXddw4LC
uykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrW29iamVjdCBEYXRhVmlld13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13D
gsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVM
ZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3du
IGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVy
cm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAt
ODYxLDE4ICs4NDAsNiBAQCB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWlu
CiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWludDgvZGV0YWNoZWQtYnVm
ZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBi
dXQgZ290IGEgUmFuZ2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwotdGVzdC9idWlsdC1pbnMvRGF0
ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0
IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBP
YmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRv
IGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJv
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2Jq
ZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL0Vycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJv
csOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq0Vycm9yw4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRl
c3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2NhbGwtYmluZC10aGlzLXJlYWxtLXVuZGVmLmpzOgogICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IGdsb2JhbF3DgsK7LCDDgsKrW29iamVjdCBVbmRlZmluZWRdw4LCuykg
dG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgZ2xvYmFsXcOCwrssIMOCwqtbb2Jq
ZWN0IFVuZGVmaW5lZF3DgsK7KSB0byBiZSB0cnVlJwpAQCAtODkxLDkgKzg1OCw2IEBAIHRlc3Qv
YnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0
aW9uL2ludGVybmFscy9Db25zdHJ1Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVhbG0u
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3Ig
YnV0IGdvdCBhIFJlZmVyZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10ZXN0
L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rp
b24gKCkgeycKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1l
eGNlZWRzLWludDMyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCqzDDgsK7LCDDgsKrMjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKr
MjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCkBAIC0xMDExLDM2ICs5NzUsOSBAQCB0ZXN0L2J1
aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlv
bi9wcm90b3R5cGUvdG9TdHJpbmcvdW5pY29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJv
cjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9
LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9u
IFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJu
IGI7IH0pIgogICBzdHJpY3QgbW9kZTogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZl
RnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIg
PSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1
MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1p
bnMvR2VuZXJhdG9yRnVuY3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9y
RnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JG
dW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBNYXBdw4LCuywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9y
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9y
w4LCuywgw4LCq0V2YWxFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRp
dmVFcnJvcnMvUmFuZ2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtS
YW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9S
ZWZlcmVuY2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrUmVmZXJlbmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlw
ZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrss
IMOCwqtSZWZlcmVuY2VFcnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRp
dmVFcnJvcnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDD
gsKrU3ludGF4RXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJy
b3JzL1R5cGVFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrVHlwZUVycm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFy
Z2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJv
csOCwrssIMOCwqtVUklFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1VSSUVycm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRl
c3QvYnVpbHQtaW5zL051bWJlci9iaWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5
cGVFcnJvcjogQ29udmVyc2lvbiBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxv
d2VkLiIKICAgc3RyaWN0IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50
JyB0byAnbnVtYmVyJyBpcyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOC
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93
blByb3BlcnR5L2NvbnNpc3RlbnQtdmFsdWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKr
W29iamVjdCBBcmd1bWVudHNdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVj
dC9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1j
YWxsZXIuanM6CkBAIC0xMDU3LDkgKzk5NCw2IEBAIHRlc3QvYnVpbHQtaW5zL09iamVjdC9rZXlz
L3Byb3h5LW5vbi1lbnUKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9rZXlzL3Byb3h5LW5vbi1lbnVt
ZXJhYmxlLXByb3AtaW52YXJpYW50LTIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJv
d24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBl
RXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10
ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOC
wrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09i
amVjdC9wcm90b3R5cGUvdG9TdHJpbmcvcHJveHktZnVuY3Rpb24uanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVW
YWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKQEAgLTEwOTksOSArMTAzMyw2IEBAIHRlc3QvYnVpbHQtaW5zL1Byb21pc2Uv
ZXhlY3V0b3ItZnVuY3Rpb24KIHRlc3QvYnVpbHQtaW5zL1Byb21pc2UvZXhlY3V0b3ItZnVuY3Rp
b24tbm9uY29uc3RydWN0b3IuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrdHJ1ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7
LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBQcm9taXNlXcOCwrssIMOCwqtbb2JqZWN0IFByb21pc2Vd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBQcm9taXNlXcOCwrssIMOCwqtbb2JqZWN0IFByb21pc2Vd
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9pbnZva2UtcmVz
b2x2ZS1nZXQtZXJyb3ItY2xvc2UuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsxw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsx
w4LCuykgdG8gYmUgdHJ1ZScKQEAgLTE0ODYsOSArMTQxNyw2IEBAIHRlc3QvYnVpbHQtaW5zL1Jl
Z0V4cC9wcm9wZXJ0eS1lc2NhcGVzL24KIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm9wZXJ0eS1l
c2NhcGVzL25vbi1leGlzdGVudC1wcm9wZXJ0eS12YWx1ZS1nZW5lcmFsLWNhdGVnb3J5LmpzOgog
ICBkZWZhdWx0OiAnVGVzdDI2MjogVGhpcyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0
ZWQuJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjI6IFRoaXMgc3RhdGVtZW50IHNob3VsZCBub3Qg
YmUgZXZhbHVhdGVkLicKLXRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
Lyg/Oikvw4LCuywgw4LCqy8oPzopL8OCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86
KS/DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3RvdHlwZS9TeW1i
b2wubWF0Y2gvYnVpbHRpbi1pbmZlci11bmljb2RlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOCwqtudWxsw4LCuykgdG8g
YmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjDgsKrw6/Cv8K9w4LCuywgw4LCq251bGzDgsK7KSB0byBiZSB0cnVlJwpAQCAtMTU3MywxMiAr
MTUwMSw2IEBAIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC91bmljb2RlX3Jlc3RyaWN0ZWQKIHRlc3Qv
YnVpbHQtaW5zL1JlZ0V4cC91bmljb2RlX3Jlc3RyaWN0ZWRfcXVhbnRpZmlhYmxlX2Fzc2VydGlv
bi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogUmVnRXhwKCIoPz0uKSoiLCAidSIpOiAg
RXhwZWN0ZWQgYSBTeW50YXhFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMg
dGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFJlZ0V4cCgiKD89
LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1aWx0LWlucy9TZXQvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgU2V0XcOCwrssIMOCwqtbb2JqZWN0IFNldF3DgsK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IFNldF3DgsK7LCDDgsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL1N0cmluZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvVGhyb3dU
eXBlRXJyb3IvZXh0ZW5zaWJsZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1ZcOC
wrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCkBAIC0xNzkxLDE1ICsxNzEzLDYgQEAgdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9vZgogdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy9vZi9uZXctaW5zdGFuY2UtdXNpbmctY3VzdG9tLWN0b3IuanM6
CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWlyZXMgaXRzIHRoaXMg
YXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9yIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBUeXBlZEFycmF5
Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRBcnJheSBj
b25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMv
V2Vha01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrTWFwXcOCwrssIMOCwqtbb2Jq
ZWN0IFdlYWtNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBXZWFrTWFwXcOCwrssIMOCwqtbb2Jq
ZWN0IFdlYWtNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL1dlYWtSZWYvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJn
ZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3Qg
V2Vha1JlZl3DgsK7LCDDgsKrW29iamVjdCBXZWFrUmVmXcOCwrspIHRvIGJlIHRydWUnCi0gIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7LCDDgsKrW29iamVj
dCBXZWFrUmVmXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrU2V0L3Byb3Rv
LWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuywgw4LCq1tvYmplY3QgV2Vha1NldF3D
gsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuywgw4LCq1tvYmplY3QgV2Vha1NldF3D
gsK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAyL0JpZ0ludC9wcm90b3R5cGUvdG9Mb2NhbGVT
dHJpbmcvZGUtREUuanM6CiAgIGRlZmF1bHQ6ICdSYW5nZUVycm9yOiB0b1N0cmluZygpIHJhZGl4
IGFyZ3VtZW50IG11c3QgYmUgYmV0d2VlbiAyIGFuZCAzNicKICAgc3RyaWN0IG1vZGU6ICdSYW5n
ZUVycm9yOiB0b1N0cmluZygpIHJhZGl4IGFyZ3VtZW50IG11c3QgYmUgYmV0d2VlbiAyIGFuZCAz
NicKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUyMTgwKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU1
IEBACisyMDE5LTExLTA3ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4K
KworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91
bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgInByb3RvdHlwZSIgaXMgbm90IGFuIG9iamVjdCwg
YnVpbHQtaW4gY29uc3RydWN0b3JzIHNob3VsZCB1c2UgaW50cmluc2ljIGRlZmF1bHQgcHJvdG90
eXBlCisgICAgICAgIG9mIE5ld1RhcmdldCdzIHJlYWxtIChmb3IgZXhhbXBsZSwgc3RlcCAyIG9m
IGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtbWFwLWNvbnN0cnVjdG9yKS4KKyAgICAgICAg
QmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29uc3RydWN0b3Igd2FzIHVzZWQu
IFRoaXMgcGF0Y2ggYWxpZ25zIGFsbCBFQ01BLTI2MgorICAgICAgICBjb25zdHJ1Y3RvcnMgd2l0
aCB0aGUgc3BlYywgVjgsIGFuZCBTcGlkZXJNb25rZXkuCisKKyAgICAgICAgKiBydW50aW1lL0Jv
b2xlYW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhCb29sZWFu
Q29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcDoKKyAg
ICAgICAgKEpTQzo6U0xPV19QQVRIX0RFQ0wpOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RGF0ZSk6CisgICAgICAgICogcnVu
dGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RXJyb3JD
b25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6Y29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2sp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNv
bnN0cnVjdEFycmF5QnVmZmVyKToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVy
aWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGlu
ZXMuaDoKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5k
ZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbiBjb25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICog
cnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZl
RXJyb3JDb25zdHJ1Y3RvcjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVj
dG9yKToKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KEpTQzo6Y29uc3RydWN0TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2Jq
ZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3
VGFyZ2V0KToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6Z2V0UmVnRXhwU3RydWN0dXJlKToKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVn
RXhwKToKKyAgICAgICAgKEpTQzo6ZXNTcGVjUmVnRXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50
aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFNldCk6CisgICAgICAgICogcnVudGltZS9T
dHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdD
b25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFrTWFwKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtP
YmplY3RSZWZDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYp
OgorICAgICAgICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpT
Qzo6Y29uc3RydWN0V2Vha1NldCk6CisKIDIwMTktMTEtMDYgIE1hcmsgTGFtICA8bWFyay5sYW1A
YXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSByZW1uYW50cyBvZiBzdXBwb3J0IGNvZGUgZm9y
IGFuIHVwd2FyZHMgZ3Jvd2luZyBzdGFjay4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgw
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDMsNyArNDMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIGJvb2xl
YW4gPSBqc0Jvb2xlYW4oY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50b0Jvb2xlYW4oZ2xvYmFsT2Jq
ZWN0KSk7Ci0gICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+Ym9vbGVhbk9iamVj
dFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0
KS0+Z2xvYmFsT2JqZWN0KHZtKS0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVj
dHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQs
IGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmplY3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6OmNyZWF0
ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAgICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVlKHZtLCBi
b29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNsb3dQ
YXRocy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29t
bW9uU2xvd1BhdGhzLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjczLDcg
KzI3Myw4IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfcHJvbWlzZSkKICAgICAg
ICAgQ0hFQ0tfRVhDRVBUSU9OKCk7CiAgICAgICAgIHJlc3VsdCA9IEpTSW50ZXJuYWxQcm9taXNl
OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVj
dG9yQXNPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZVN0cnVjdHVyZSgpKTsKKyAgICAgICAg
U3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gY29uc3RydWN0b3JBc09iamVjdC0+Z2xvYmFsT2Jq
ZWN0KHZtKS0+cHJvbWlzZVN0cnVjdHVyZSgpOworICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3JBc09iamVj
dCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAgICAgICBy
ZXN1bHQgPSBKU1Byb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9CkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVD
b25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0Myw3ICsxNDMsOCBAQCBKU09iamVj
dCogY29uc3RydWN0RGF0ZShKU0dsb2JhbE9iamVjdCogCiAgICAgICAgIHZhbHVlID0gbWlsbGlz
ZWNvbmRzRnJvbUNvbXBvbmVudHMoZ2xvYmFsT2JqZWN0LCBhcmdzLCBXVEY6OkxvY2FsVGltZSk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKLSAgICBTdHJ1Y3R1
cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1Rh
cmdldCwgZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCkpOworICAgIFN0cnVjdHVyZSogYmFz
ZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmRhdGVT
dHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+
ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICByZXR1cm4gRGF0ZUluc3RhbmNl
OjpjcmVhdGUodm0sIGRhdGVTdHJ1Y3R1cmUsIHZhbHVlKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsOSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGNvbnN0cnVjdEVyCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwog
ICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIG1l
c3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xv
YmFsT2JqZWN0LT5lcnJvclN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1Rh
cmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5j
b2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjpl
bmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgZXJyb3JTdHJ1Y3R1cmUs
IG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsKIH0KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9G
dW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDE5ICsxNTIsMjAg
QEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRQogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xvYmFs
T2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZt
KSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IG51bGxwdHI7CiAg
ICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGUpIHsKICAgICBjYXNlIEZ1bmN0aW9u
Q29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rp
b246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7
CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1
bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CiAgICAgICAgIGJyZWFrOwog
ICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpHZW5lcmF0b3I6Ci0gICAgICAgIHN0
cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAg
ICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlv
blN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0
aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNG
dW5jdGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxP
YmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9yOgotICAgICAgICBzdHJ1
Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsK
KyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRv
ckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVy
Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC03OSw5ICs3OSw5IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNHZW5lcmljQXIK
ICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ciogY29uc3RydWN0b3IgPSBqc0Nhc3Q8SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcio+
KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGNv
bnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01v
ZGUpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7Cisg
ICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFs
T2JqZWN0KHZtKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpOworICAgIFN0cnVj
dHVyZSogYXJyYXlCdWZmZXJTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFy
Z2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0p
OwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5
Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5s
aW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDkgQEAgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0o
KTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBJbnRl
cm5hbEZ1bmN0aW9uKiBmdW5jdGlvbiA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oY2FsbEZy
YW1lLT5qc0NhbGxlZSgpKTsKLSAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGZ1bmN0
aW9uLT5nbG9iYWxPYmplY3QoKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVk
QXJyYXlTdG9yYWdlVHlwZSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+
anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgcGFyZW50U3RydWN0dXJlKTsKKyAg
ICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0
dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZt
KS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7
CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFy
Z2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKIAogICAgIHNpemVfdCBhcmdDb3VudCA9IGNhbGxGcmFtZS0+YXJndW1l
bnRDb3VudCgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxP
YmplY3RJbmxpbmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJKHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0SW5saW5lcy5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xMDEsNyArMTAxLDEwIEBAIEFMV0FZU19JTkxJTkUgYm9vbCBKU0dsb2JhbE9iamVj
dDo6aXNTZXQKIAogQUxXQVlTX0lOTElORSBTdHJ1Y3R1cmUqIEpTR2xvYmFsT2JqZWN0OjphcnJh
eVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSW5kZXhpbmdUeXBlIGluZGV4aW5nVHlwZSwgSlNWYWx1ZSBuZXdUYXJn
ZXQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9yKCks
IG5ld1RhcmdldCwgYXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9u
KGluZGV4aW5nVHlwZSkpOworICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAgICBK
U0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKKyAgICBTdHJ1
Y3R1cmUqIGFycmF5U3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5hcnJheVN0cnVj
dHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKTsKKyAgICBy
ZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBnbG9iYWxPYmplY3QtPmFycmF5Q29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBhcnJheVN0
cnVjdHVyZSk7CiB9CiAKIGlubGluZSBKU0Z1bmN0aW9uKiBKU0dsb2JhbE9iamVjdDo6dGhyb3dU
eXBlRXJyb3JGdW5jdGlvbigpIGNvbnN0IHsgcmV0dXJuIGpzQ2FzdDxKU0Z1bmN0aW9uKj4obGlu
a1RpbWVDb25zdGFudChMaW5rVGltZUNvbnN0YW50Ojp0aHJvd1R5cGVFcnJvckZ1bmN0aW9uKSk7
IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1
Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsOSBAQCBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xv
YmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZt
KTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOwor
ICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1
Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT5tYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVy
YWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJy
b3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU1LDcgKzU1LDkgQEAgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBOYXRpdmVFcnJvcgogICAgIFZNJiB2bSA9IGdsb2JhbE9i
amVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAg
ICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1
cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCksIGpzQ2FzdDxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpKS0+ZXJyb3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JU
eXBlKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAg
ICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNl
OjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJvclN0cnVjdHVyZSwgbWVzc2FnZSwgbnVsbHB0ciwg
VHlwZU5vdGhpbmcsIGZhbHNlKSkpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC05Miw3ICs5Miw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnMKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAg
ICAgZG91YmxlIG4gPSBjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSA/IGNhbGxGcmFtZS0+dW5j
aGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIoZ2xvYmFsT2JqZWN0KSA6IDA7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0gICAgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwg
Z2xvYmFsT2JqZWN0LT5udW1iZXJPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdU
YXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVj
dHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51bWJlck9iamVj
dFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBOdW1iZXJPYmplY3QqIG9iamVjdCA9
IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcAkocmV2aXNp
b24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3Ry
dWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjcsNyArMTI3LDggQEAgc3RhdGljIEFMV0FZ
U19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVjdAogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyBu
ZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFjdGl2ZSBmdW5jdGlvbiwgdGhlbgogICAgIGlmIChu
ZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9iamVjdENvbnN0cnVjdG9yKSB7CiAgICAgICAgIC8v
IGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKE5ld1RhcmdldCwgIiVP
YmplY3RQcm90b3R5cGUlIikuCi0gICAgICAgIFN0cnVjdHVyZSogb2JqZWN0U3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBv
YmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPm9iamVjdFN0cnVjdHVy
ZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOworICAgICAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1
cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5vYmplY3RTdHJ1Y3R1
cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpOworICAgICAgICBTdHJ1Y3R1cmUqIG9iamVjdFN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAg
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAgICByZXR1cm4g
Y29uc3RydWN0RW1wdHlPYmplY3Qodm0sIG9iamVjdFN0cnVjdHVyZSk7CiAgICAgfQpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsMTAgKzE3Miw5IEBA
IGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoSlNHbG8KIAogaW5saW5lIFN0cnVj
dHVyZSogZ2V0UmVnRXhwU3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgbmV3VGFyZ2V0KQogewotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZ2xvYmFsT2Jq
ZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFyZ2V0ICE9IGpzVW5kZWZpbmVk
KCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBDb25zdHJ1Y3Rvcigp
LCBuZXdUYXJnZXQsIHN0cnVjdHVyZSk7Ci0gICAgcmV0dXJuIHN0cnVjdHVyZTsKKyAgICBWTSYg
dm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgSlNHbG9iYWxPYmplY3QqIHN0cnVjdHVyZUds
b2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSkgOiBnbG9iYWxPYmplY3Q7CisgICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBDb25z
dHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+cmVnRXhwU3RydWN0
dXJlKCkpOwogfQogCiBpbmxpbmUgT3B0aW9uU2V0PFlhcnI6OkZsYWdzPiB0b0ZsYWdzKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgZmxhZ3MpCkBAIC0yMjksNyArMjI4LDcg
QEAgSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdAogICAgIGJvb2wgY29u
c3RydWN0QXNSZWdleHAgPSBpc1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0LCBwYXR0ZXJuQXJnKTsK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAotICAgIGlmIChuZXdU
YXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5pc1Vu
ZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdUYXJnZXQgJiYgY29uc3RydWN0QXNSZWdleHAgJiYg
ZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU1ZhbHVlIGNvbnN0cnVjdG9yID0g
cGF0dGVybkFyZy5nZXQoZ2xvYmFsT2JqZWN0LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3Rv
cik7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAg
ICBpZiAoY2FsbGVlID09IGNvbnN0cnVjdG9yKSB7CkBAIC0yNzQsNyArMjczLDcgQEAgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1NwZWNSZWdFeAogewogICAgIEpTVmFsdWUgcGF0dGVy
bkFyZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1ZSBmbGFnc0FyZyA9IGNh
bGxGcmFtZS0+YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBD
cmVhdGUoZ2xvYmFsT2JqZWN0LCBqc1VuZGVmaW5lZCgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykp
OworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOwogfQogCiBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGVzU3BlY0lzUmVnRXhwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IENhbGxGcmFtZSogY2FsbEZyYW1lKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUmVnRXhwQ29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNv
cHkpCkBAIC01OCw3ICs1OCw3IEBAIHByaXZhdGU6CiAKIHN0YXRpY19hc3NlcnQoc2l6ZW9mKFJl
Z0V4cENvbnN0cnVjdG9yKSA9PSBzaXplb2YoSW50ZXJuYWxGdW5jdGlvbiksICIiKTsKIAotSlNP
YmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBK
U09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBqc1VuZGVmaW5l
ZCgpKTsKK0pTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25zdCBB
cmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0ID0g
SlNWYWx1ZSgpKTsKIAogQUxXQVlTX0lOTElORSBib29sIGlzUmVnRXhwKFZNJiB2bSwgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKIHsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9u
IDI1MjE4MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwog
ICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVy
ZSogc2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCksIGdsb2JhbE9iamVjdC0+c2V0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFy
Z2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1
cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zZXRTdHJ1Y3R1cmUo
KTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBu
ZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+
YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIxODApCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTE0NCw3ICsxNDQsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBj
b25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBE
RUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+
c3RyaW5nT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVj
dChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKTsK
KyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJn
ZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUs
OSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZt
ID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1ND
T1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha01hcFN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5q
c0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtNYXBT
dHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCkt
Pmdsb2JhbE9iamVjdCh2bSktPndlYWtNYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdl
YWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3Ry
dWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKICAgICBKU1dlYWtNYXAqIHdlYWtNYXAgPSBKU1dlYWtNYXA6OmNyZWF0ZSh2bSwgd2Vha01h
cFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29u
c3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjE4MCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTY4LDcgKzY4LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29ucwogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5pc09iamVjdCgp
KQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAi
Rmlyc3QgYXJndW1lbnQgdG8gV2Vha1JlZiBzaG91bGQgYmUgYW4gb2JqZWN0Il9zKTsKIAotICAg
IFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtPYmplY3RSZWZTdHJ1
Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgp
OworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmds
b2JhbE9iamVjdCh2bSktPndlYWtPYmplY3RSZWZTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUq
IFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0
LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVk
SlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29k
ZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwgV2Vha09iamVjdFJlZlN0cnVjdHVyZSwgY2Fs
bEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS5nZXRPYmplY3QoKSkpKTsKIH0KSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMjUyMTgwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsOSBAQCBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xv
YmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZt
KTsKIAotICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtTZXRTdHJ1Y3R1
cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOwor
ICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2Jh
bE9iamVjdCh2bSktPndlYWtTZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtTZXRT
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJl
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAg
ICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0cnVj
dHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383123</attachid>
            <date>2019-11-08 07:00:59 -0800</date>
            <delta_ts>2019-11-08 17:23:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191108170057.patch</filename>
            <type>text/plain</type>
            <size>42979</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIyMzUpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTA4ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDYwIHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wNyAgVHVv
bWFzIEthcmtrYWluZW4gIDx0dW9tYXMud2Via2l0QGFwcGxlLmNvbT4KIAogICAgICAgICBkaWRQ
YXNzU29tZVRlc3RzU2lsZW50eSBpcyBtaXNzcGVsbGVkIGluIHN0YW5kYWxvbmUtcHJlLmpzCklu
ZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSlNU
ZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNTIyMzQpCisrKyBKU1Rl
c3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTYyMSwxNSAr
NjIxLDYgQEAgdGVzdC9hbm5leEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3Itb2YvaQogdGVzdC9i
dWlsdC1pbnMvQXJyYXkvb2YvcmV0dXJuLWFicnVwdC1mcm9tLWRhdGEtcHJvcGVydHkuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNl
cHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90by1mcm9t
LWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvD
gsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0
LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKr
w4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXpl
cm8uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlz
IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0
cnVlJwogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2ZpbHRlci90YXJnZXQtYXJyYXkt
d2l0aC1ub24td3JpdGFibGUtcHJvcGVydHkuanM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IEF0
dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuJwogICBzdHJpY3QgbW9kZTog
J1R5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS4nCkBA
IC02OTksOSArNjkwLDYgQEAgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3NwbGljZS90
aAogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3Vuc2hpZnQvY2xhbXBzLXRvLWludGVn
ZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAt
IDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LCuywgw4LCqzkwMDcxOTkyNTQ3
NDA5OTHDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogTGVu
Z3RoIGlzIDIqKjUzIC0gMSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzQyOTQ5NjcyOTXDgsK7LCDD
gsKrOTAwNzE5OTI1NDc0MDk5McOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9BcnJh
eUJ1ZmZlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7LCDDgsKr
W29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFycmF5QnVmZmVyXcOC
wrssIMOCwqtbb2JqZWN0IEFycmF5QnVmZmVyXcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZmZXIuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03MzIsMTggKzcyMCw5IEBAIHRlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9zbGkKIHRlc3QvYnVpbHQtaW5zL0FycmF5SXRl
cmF0b3JQcm90b3R5cGUvbmV4dC9kZXRhY2gtdHlwZWRhcnJheS1pbi1wcm9ncmVzcy5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0
QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVy
cm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9Bc3luY0Z1bmN0aW9uL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFy
Z2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IEFzeW5jRnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3DgsK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlw
ZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5jRnVuY3Rp
b25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVlJwotdGVz
dC9idWlsdC1pbnMvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0u
anM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0dlbmVyYXRvckZ1bmN0
aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9jb25zdHJ1Y3Rvci1pbnRlZ2VyLmpz
OgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUgaW50ZWdlcicKICAgc3RyaWN0IG1v
ZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwotdGVzdC9idWlsdC1pbnMvQm9vbGVh
bi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtm
YWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9EYXRh
Vmlldy9jdXN0b20tcHJvdG8tYWNjZXNzLWRldGFjaGVzLWJ1ZmZlci5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMg
dGhyb3duIGF0IGFsbCcKQEAgLTc1Myw5ICs3MzIsNiBAQCB0ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9kZXRhY2hlZC1idWZmZXIuCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9sZW5ndGguanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlIDEnCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9yIHZhbHVlIHNob3VsZCBiZSAx
JwotdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRGF0
YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBE
YXRhVmlld13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13DgsK7KSB0byBiZSB0cnVlJwogdGVz
dC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVy
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQg
bm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtODU4LDE4ICs4MzQsNiBAQCB0ZXN0
L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWluCiB0ZXN0L2J1aWx0LWlucy9EYXRh
Vmlldy9wcm90b3R5cGUvc2V0VWludDgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBn
b3QgYSBSYW5nZUVycm9yJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVh
bG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1
ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXR3by5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9i
amVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmpl
Y3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOC
wqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKr
W29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0Vycm9yL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq0Vycm9y
w4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L2NhbGwtYmluZC10aGlzLXJlYWxtLXVuZGVmLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBpbXBsaWNpdCB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IGdsb2Jh
bF3DgsK7LCDDgsKrW29iamVjdCBVbmRlZmluZWRdw4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgZ2xvYmFsXcOCwrssIMOCwqtbb2JqZWN0IFVuZGVmaW5lZF3DgsK7KSB0
byBiZSB0cnVlJwpAQCAtODg4LDkgKzg1Miw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2lu
dGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVybmFscy9Db25zdHJ1
Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVhbG0uanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgYnV0IGdvdCBhIFJlZmVyZW5jZUVy
cm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VF
cnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKIHRlc3QvYnVpbHQt
aW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1leGNlZWRzLWludDMyLmpzOgogICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKr
MjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMjE0NzQ4MzY0OMOCwrspIHRvIGJl
IHRydWUnCkBAIC0xMDMyLDM2ICs5OTMsOSBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90
b3R5cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpbmcv
dW5pY29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZl
RnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIg
PSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1
MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgogICBzdHJpY3QgbW9k
ZTogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVu
Y3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4g
YjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1
ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1pbnMvR2VuZXJhdG9yRnVuY3Rpb24v
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuywgw4LCq1tv
YmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5lcmF0b3JG
dW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0
cnVlJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE1hcF3D
gsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBNYXBdw4LCuywgw4LC
q1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJv
cnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywgw4LCq0V2YWxFcnJvcsOC
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmFuZ2VFcnJvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VF
cnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUg
dHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVuY2VFcnJvci9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5w
cm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmVmZXJlbmNlRXJy
b3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtSZWZlcmVuY2VFcnJvcsOC
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3Iv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdU
YXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1N5bnRh
eEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3ludGF4RXJyb3LDgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5cGVFcnJvci9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5w
cm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrVHlwZUVycm9yw4LC
uywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVz
dC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrssIMOCwqtVUklFcnJvcsOC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1VSSUVycm9yw4LC
uywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051bWJlci9i
aWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVyc2lvbiBm
cm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0IG1vZGU6
ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBpcyBub3Qg
YWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7
LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCiB0ZXN0
L2J1aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2NvbnNpc3RlbnQt
dmFsdWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKrW29iamVjdCBBcmd1bWVudHNdw4LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3du
UHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1jYWxsZXIuanM6CkBAIC0xMDc4LDkg
KzEwMTIsNiBAQCB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51CiB0ZXN0
L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51bWVyYWJsZS1wcm9wLWludmFyaWFu
dC0yLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBi
dXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMvT2JqZWN0
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmpl
Y3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0
XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG90eXBlL3RvU3Ry
aW5nL3Byb3h5LWZ1bmN0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBmdW5jdGlv
biBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtb
b2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2Jq
ZWN0XcOCwrssIMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCkBAIC0xMTIw
LDkgKzEwNTEsNiBAQCB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0aW9uCiB0
ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0aW9uLW5vbmNvbnN0cnVjdG9yLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXD
gsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8g
YmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL1Byb21pc2UvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmpl
Y3QgUHJvbWlzZV3DgsK7LCDDgsKrW29iamVjdCBQcm9taXNlXcOCwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmpl
Y3QgUHJvbWlzZV3DgsK7LCDDgsKrW29iamVjdCBQcm9taXNlXcOCwrspIHRvIGJlIHRydWUnCiB0
ZXN0L2J1aWx0LWlucy9Qcm9taXNlL3JhY2UvaW52b2tlLXJlc29sdmUtZ2V0LWVycm9yLWNsb3Nl
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDD
gsK7LCDDgsKrMcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMcOCwrspIHRvIGJlIHRydWUnCkBA
IC0xNTA0LDkgKzE0MzIsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBl
cy9uCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9ub24tZXhpc3RlbnQt
cHJvcGVydHktdmFsdWUtZ2VuZXJhbC1jYXRlZ29yeS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6
IFRoaXMgc3RhdGVtZW50IHNob3VsZCBub3QgYmUgZXZhbHVhdGVkLicKICAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVudCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCi10ZXN0
L2J1aWx0LWlucy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86
KS/DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUgdHJ1ZScK
IHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90b3R5cGUvU3ltYm9sLm1hdGNoL2J1aWx0aW4taW5m
ZXItdW5pY29kZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOC
wqtudWxsw4LCuykgdG8gYmUgdHJ1ZScKQEAgLTE1OTEsMTIgKzE1MTYsNiBAQCB0ZXN0L2J1aWx0
LWlucy9SZWdFeHAvdW5pY29kZV9yZXN0cmljdGVkCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvdW5p
Y29kZV9yZXN0cmljdGVkX3F1YW50aWZpYWJsZV9hc3NlcnRpb24uanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IFJlZ0V4cCgiKD89LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJy
b3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBSZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3Rl
ZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24g
YXQgYWxsJwotdGVzdC9idWlsdC1pbnMvU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFNl
dF3DgsK7LCDDgsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywg
w4LCq1tvYmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9TdHJpbmcv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUu
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1
ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0
byBiZSB0cnVlJwpAQCAtMTgwOSwxNSArMTcyOCw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
b2YvbmV3LWluc3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAnVHlwZUVy
cm9yOiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNz
IGEgVHlwZWRBcnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwog
ICBzdHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhp
cyBhcmd1bWVudCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcg
d2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRv
IGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tv
YmplY3QgV2Vha1JlZl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7KSB0byBi
ZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1ZScKIHRl
c3QvaW50bDQwMi9CaWdJbnQvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5nL2RlLURFLmpzOgogICBk
ZWZhdWx0OiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSByYWRpeCBhcmd1bWVudCBtdXN0IGJlIGJl
dHdlZW4gMiBhbmQgMzYnCiAgIHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSBy
YWRpeCBhcmd1bWVudCBtdXN0IGJlIGJldHdlZW4gMiBhbmQgMzYnCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MjIzNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1OSBAQAorMjAxOS0xMS0wOCAgQWxl
eGV5IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CisKKyAgICAgICAgSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUgc2hvdWxkIHVzZSBuZXdUYXJnZXQncyBn
bG9iYWxPYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwMjU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIElmICJwcm90b3R5cGUiIGlzIG5vdCBhbiBvYmplY3QsIGJ1aWx0LWluIGNvbnN0cnVjdG9y
cyBzaG91bGQgdXNlIGludHJpbnNpYyBkZWZhdWx0IHByb3RvdHlwZQorICAgICAgICBvZiBOZXdU
YXJnZXQncyByZWFsbSAoZm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMvZWNt
YTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvcikuCisgICAgICAgIEJlZm9yZSB0aGlzIGNoYW5nZSwg
cmVhbG0gb2YgYWN0aXZlIGNvbnN0cnVjdG9yIHdhcyB1c2VkLiBUaGlzIHBhdGNoIGFsaWducyBh
bGwgRUNNQS0yNjIKKyAgICAgICAgY29uc3RydWN0b3JzIHdpdGggdGhlIHNwZWMsIFY4LCBhbmQg
U3BpZGVyTW9ua2V5LgorCisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0
b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3Ip
OgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVj
dG9yKToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdFdpdGhCb29sZWFuQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRp
bWUvQ29tbW9uU2xvd1BhdGhzLmNwcDoKKyAgICAgICAgKEpTQzo6U0xPV19QQVRIX0RFQ0wpOgor
ICAgICAgICAqIHJ1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29u
c3RydWN0RGF0ZSk6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKEpTQzo6Y29uc3RydWN0RXJyb3JDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RnVuY3Rp
b25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2spOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1
ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNHZW5lcmljQXJyYXlCdWZmZXJD
b25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNvbnN0cnVjdEFycmF5QnVmZmVyKToKKyAgICAgICAg
KiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6Cisg
ICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICog
cnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxP
YmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbiBjb25z
dCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9y
LmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3RvcjxlcnJvclR5cGU+Ojpj
b25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL051bWJl
ckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVtYmVyQ29uc3RydWN0
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAgKiBydW50aW1lL1Jl
Z0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhwU3RydWN0dXJlKToK
KyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpTQzo6ZXNTcGVjUmVn
RXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6CisgICAg
ICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVj
dFNldCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGlt
ZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFrTWFw
KToKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha1NldENv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1NldCk6CisKIDIwMTkt
MTEtMDcgIFRhZGV1IFphZ2FsbG8gIDx0emFnYWxsb0BhcHBsZS5jb20+CiAKICAgICAgICAgVXNl
IGZld2VyIHZpcnR1YWwgcmVnaXN0ZXJzIGluIFdhc20gTExJbnQKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDUsNyAr
NDUsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsCiBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3Ry
dWN0b3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
CiB7CiAgICAgQXJnTGlzdCBhcmdzKGNhbGxGcmFtZSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVu
Y29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVu
Y3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYykpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0
aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmMsIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpKTsKIH0K
IAogQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yOjpBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBjYWxsCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RBc3lu
Y0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgQXJnTGlzdCBhcmdzKGNhbGxGcmFtZSk7
Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVy
YXRvcikpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5
bmNHZW5lcmF0b3IsIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpKTsKIH0KIAogQXN5bmNHZW5lcmF0
b3JGdW5jdGlvbkNvbnN0cnVjdG9yOjpBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3Io
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUy
MjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDMsNyArNDMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwog
ICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIGJv
b2xlYW4gPSBqc0Jvb2xlYW4oY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50b0Jvb2xlYW4oZ2xvYmFs
T2JqZWN0KSk7Ci0gICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+Ym9vbGVhbk9i
amVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFy
Z2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0
cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJn
ZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmplY3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6OmNy
ZWF0ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAgICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVlKHZt
LCBib29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNs
b3dQYXRocy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tbW9uU2xvd1BhdGhzLmNwcAkocmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjcz
LDcgKzI3Myw4IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfcHJvbWlzZSkKICAg
ICAgICAgQ0hFQ0tfRVhDRVBUSU9OKCk7CiAgICAgICAgIHJlc3VsdCA9IEpTSW50ZXJuYWxQcm9t
aXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0
cnVjdG9yQXNPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZVN0cnVjdHVyZSgpKTsKKyAgICAg
ICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gY29uc3RydWN0b3JBc09iamVjdC0+Z2xvYmFs
T2JqZWN0KHZtKS0+cHJvbWlzZVN0cnVjdHVyZSgpOworICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3JBc09i
amVjdCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAgICAg
ICByZXN1bHQgPSBKU1Byb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5j
cHAJKHJldmlzaW9uIDI1MjIzNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0Myw3ICsxNDMsOCBAQCBKU09i
amVjdCogY29uc3RydWN0RGF0ZShKU0dsb2JhbE9iamVjdCogCiAgICAgICAgIHZhbHVlID0gbWls
bGlzZWNvbmRzRnJvbUNvbXBvbmVudHMoZ2xvYmFsT2JqZWN0LCBhcmdzLCBXVEY6OkxvY2FsVGlt
ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKLSAgICBTdHJ1
Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5l
d1RhcmdldCwgZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCkpOworICAgIFN0cnVjdHVyZSog
YmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmRh
dGVTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVj
dC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICByZXR1cm4gRGF0ZUluc3Rh
bmNlOjpjcmVhdGUodm0sIGRhdGVTdHJ1Y3R1cmUsIHZhbHVlKTsKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lv
biAyNTIyMzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsOSBAQCBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGNvbnN0cnVjdEVyCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgp
OwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVl
IG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JT
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwg
Z2xvYmFsT2JqZWN0LT5lcnJvclN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0g
YXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoKTsK
KyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5l
d1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
ZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVl
OjplbmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgZXJyb3JTdHJ1Y3R1
cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsKIH0KSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTIyMzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDE5ICsxNTIs
MjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xv
YmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IG51bGxwdHI7
CiAgICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGUpIHsKICAgICBjYXNlIEZ1bmN0
aW9uQ29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAgICAgIHN0cnVjdHVyZSA9IEpTRnVu
Y3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoZ2xvYmFsT2JqZWN0LCBmdW5jdGlv
bik7CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5l
d0Z1bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CiAgICAgICAgIGJyZWFr
OwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpHZW5lcmF0b3I6Ci0gICAgICAg
IHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsK
KyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5j
dGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3Ry
dWN0aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+YXN5
bmNGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9i
YWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAg
Y2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9yOgotICAgICAgICBz
dHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUo
KTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVy
YXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVm
ZmVyQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyMzQpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC03OSw5ICs3OSw5IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNHZW5lcmlj
QXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1
Y3RvciogY29uc3RydWN0b3IgPSBqc0Nhc3Q8SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
cio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVy
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCks
IGNvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmlu
Z01vZGUpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7
CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpOworICAgIFN0
cnVjdHVyZSogYXJyYXlCdWZmZXJTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7
IH0pOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFy
cmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTIyMzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9y
SW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDkgQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+
dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBJ
bnRlcm5hbEZ1bmN0aW9uKiBmdW5jdGlvbiA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpKTsKLSAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGZ1
bmN0aW9uLT5nbG9iYWxPYmplY3QoKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5
cGVkQXJyYXlTdG9yYWdlVHlwZSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgcGFyZW50U3RydWN0dXJlKTsK
KyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3Ry
dWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlw
ZSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIHNpemVfdCBhcmdDb3VudCA9IGNhbGxGcmFtZS0+YXJn
dW1lbnRDb3VudCgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9i
YWxPYmplY3RJbmxpbmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJKHJldmlzaW9uIDI1MjIzNCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0SW5saW5lcy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0xMDEsNyArMTAxLDEwIEBAIEFMV0FZU19JTkxJTkUgYm9vbCBKU0dsb2JhbE9i
amVjdDo6aXNTZXQKIAogQUxXQVlTX0lOTElORSBTdHJ1Y3R1cmUqIEpTR2xvYmFsT2JqZWN0Ojph
cnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSW5kZXhpbmdUeXBlIGluZGV4aW5nVHlwZSwgSlNWYWx1ZSBuZXdU
YXJnZXQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9y
KCksIG5ld1RhcmdldCwgYXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0
aW9uKGluZGV4aW5nVHlwZSkpOworICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAg
ICBKU0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKKyAgICBT
dHJ1Y3R1cmUqIGFycmF5U3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5hcnJheVN0
cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKTsKKyAg
ICByZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBnbG9iYWxPYmplY3QtPmFycmF5Q29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBhcnJh
eVN0cnVjdHVyZSk7CiB9CiAKIGlubGluZSBKU0Z1bmN0aW9uKiBKU0dsb2JhbE9iamVjdDo6dGhy
b3dUeXBlRXJyb3JGdW5jdGlvbigpIGNvbnN0IHsgcmV0dXJuIGpzQ2FzdDxKU0Z1bmN0aW9uKj4o
bGlua1RpbWVDb25zdGFudChMaW5rVGltZUNvbnN0YW50Ojp0aHJvd1R5cGVFcnJvckZ1bmN0aW9u
KSk7IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25z
dHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjIzNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsOSBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0g
Z2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BF
KHZtKTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkp
OworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBT
dHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmpl
Y3Qodm0pLT5tYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBp
dGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU1LDcgKzU1LDkgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBOYXRpdmVFcnJvcgogICAgIFZNJiB2bSA9IGdsb2Jh
bE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7
CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1
Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCksIGpzQ2FzdDxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5q
c0NhbGxlZSgpKS0+ZXJyb3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0g
YXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoZXJy
b3JUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsK
ICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3Rh
bmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJvclN0cnVjdHVyZSwgbWVzc2FnZSwgbnVsbHB0
ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjM0KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC05Miw3ICs5Miw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGNvbnMKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7
CiAgICAgZG91YmxlIG4gPSBjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSA/IGNhbGxGcmFtZS0+
dW5jaGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIoZ2xvYmFsT2JqZWN0KSA6IDA7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0gICAgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KSwgZ2xvYmFsT2JqZWN0LT5udW1iZXJPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBu
ZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0
cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51bWJlck9i
amVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBOdW1iZXJPYmplY3QqIG9iamVj
dCA9IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29u
c3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjcsNyArMTI3LDggQEAgc3RhdGljIEFM
V0FZU19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVjdAogICAgIC8vIDEuIElmIE5ld1RhcmdldCBp
cyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFjdGl2ZSBmdW5jdGlvbiwgdGhlbgogICAgIGlm
IChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9iamVjdENvbnN0cnVjdG9yKSB7CiAgICAgICAg
IC8vIGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKE5ld1RhcmdldCwg
IiVPYmplY3RQcm90b3R5cGUlIikuCi0gICAgICAgIFN0cnVjdHVyZSogb2JqZWN0U3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPm9iamVjdFN0cnVj
dHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOworICAgICAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1
Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5vYmplY3RTdHJ1
Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpOworICAgICAgICBTdHJ1Y3R1cmUqIG9iamVjdFN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAg
ICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAgICByZXR1
cm4gY29uc3RydWN0RW1wdHlPYmplY3Qodm0sIG9iamVjdFN0cnVjdHVyZSk7CiAgICAgfQpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsMTAgKzE3Miw5
IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoSlNHbG8KIAogaW5saW5lIFN0
cnVjdHVyZSogZ2V0UmVnRXhwU3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTVmFsdWUgbmV3VGFyZ2V0KQogewotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gZ2xvYmFs
T2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFyZ2V0ICE9IGpzVW5kZWZp
bmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBDb25zdHJ1Y3Rv
cigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZSk7Ci0gICAgcmV0dXJuIHN0cnVjdHVyZTsKKyAgICBW
TSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgSlNHbG9iYWxPYmplY3QqIHN0cnVjdHVy
ZUdsb2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSkgOiBnbG9iYWxPYmplY3Q7CisgICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBD
b25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+cmVnRXhwU3Ry
dWN0dXJlKCkpOwogfQogCiBpbmxpbmUgT3B0aW9uU2V0PFlhcnI6OkZsYWdzPiB0b0ZsYWdzKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgZmxhZ3MpCkBAIC0yMjksNyArMjI4
LDcgQEAgSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdAogICAgIGJvb2wg
Y29uc3RydWN0QXNSZWdleHAgPSBpc1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0LCBwYXR0ZXJuQXJn
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAotICAgIGlmIChu
ZXdUYXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5p
c1VuZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdUYXJnZXQgJiYgY29uc3RydWN0QXNSZWdleHAg
JiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU1ZhbHVlIGNvbnN0cnVjdG9y
ID0gcGF0dGVybkFyZy5nZXQoZ2xvYmFsT2JqZWN0LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1
Y3Rvcik7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAg
ICAgICBpZiAoY2FsbGVlID09IGNvbnN0cnVjdG9yKSB7CkBAIC0yNzQsNyArMjczLDcgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1NwZWNSZWdFeAogewogICAgIEpTVmFsdWUgcGF0
dGVybkFyZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1ZSBmbGFnc0FyZyA9
IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdF
eHBDcmVhdGUoZ2xvYmFsT2JqZWN0LCBqc1VuZGVmaW5lZCgpLCBwYXR0ZXJuQXJnLCBmbGFnc0Fy
ZykpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVj
dCwgSlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOwogfQogCiBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY0lzUmVnRXhwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyNTIyMzQpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCSh3b3JraW5n
IGNvcHkpCkBAIC01OCw3ICs1OCw3IEBAIHByaXZhdGU6CiAKIHN0YXRpY19hc3NlcnQoc2l6ZW9m
KFJlZ0V4cENvbnN0cnVjdG9yKSA9PSBzaXplb2YoSW50ZXJuYWxGdW5jdGlvbiksICIiKTsKIAot
SlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3Qm
LCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBqc1VuZGVm
aW5lZCgpKTsKK0pTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25z
dCBBcmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0
ID0gSlNWYWx1ZSgpKTsKIAogQUxXQVlTX0lOTElORSBib29sIGlzUmVnRXhwKFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKIHsKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlz
aW9uIDI1MjIzNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsOSBAQCBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgp
OwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVj
dHVyZSogc2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+c2V0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1
Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zZXRTdHJ1Y3R1
cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFt
ZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJp
bmdDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyMzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE0NCw3ICsxNDQsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUg
PSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBj
YWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVj
dC0+c3RyaW5nT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2Fs
bEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUo
KTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdU
YXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyAr
NjUsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha01hcFN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtN
YXBTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rh
cmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1Rhcmdl
dCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtNYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUq
IHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNl
U3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1
ZSgpKTsKICAgICBKU1dlYWtNYXAqIHdlYWtNYXAgPSBKU1dlYWtNYXA6OmNyZWF0ZSh2bSwgd2Vh
a01hcFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1l
bnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVm
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjIzNCkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTY4LDcgKzY4LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5pc09iamVj
dCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiRmlyc3QgYXJndW1lbnQgdG8gV2Vha1JlZiBzaG91bGQgYmUgYW4gb2JqZWN0Il9zKTsKIAot
ICAgIFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtPYmplY3RSZWZT
dHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCkt
Pmdsb2JhbE9iamVjdCh2bSktPndlYWtPYmplY3RSZWZTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1
cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFy
Z2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVu
Y29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwgV2Vha09iamVjdFJlZlN0cnVjdHVyZSwg
Y2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS5nZXRPYmplY3QoKSkpKTsKIH0KSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjUyMjM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsOSBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0g
Z2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BF
KHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYWtTZXRTdHJ1
Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgp
OworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmds
b2JhbE9iamVjdCh2bSktPndlYWtTZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtT
ZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0
dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0
cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383186</attachid>
            <date>2019-11-08 17:23:19 -0800</date>
            <delta_ts>2019-11-08 19:19:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191109032317.patch</filename>
            <type>text/plain</type>
            <size>46170</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIyOTYpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTA4ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDY4IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wOCAgR3Vp
bGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxpYS5jb20+CiAKICAgICAgICAgVGVtcG9yYXJp
bHkgc2tpcCBhbm90aGVyIGJyb2tlbiB0ZXN0IG9uIE1JUFMgZHVlIHRvIE9TUiBleGl0IHRvIExM
SW50CkluZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNTIyOTYpCisr
KyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTYy
MSwxNSArNjIxLDYgQEAgdGVzdC9hbm5leEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3Itb2YvaQog
dGVzdC9idWlsdC1pbnMvQXJyYXkvb2YvcmV0dXJuLWFicnVwdC1mcm9tLWRhdGEtcHJvcGVydHku
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJl
IHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90
by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdU
YXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrss
IMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3
VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7
LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5w
cm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLXplcm8uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0
byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2ZpbHRlci90YXJnZXQt
YXJyYXktd2l0aC1ub24td3JpdGFibGUtcHJvcGVydHkuanM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJy
b3I6IEF0dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuJwogICBzdHJpY3Qg
bW9kZTogJ1R5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0
eS4nCkBAIC02OTksOSArNjkwLDYgQEAgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3Nw
bGljZS90aAogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3Vuc2hpZnQvY2xhbXBzLXRv
LWludGVnZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAy
Kio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LCuywgw4LCqzkwMDcx
OTkyNTQ3NDA5OTHDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogTGVuZ3RoIGlzIDIqKjUzIC0gMSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzQyOTQ5NjcyOTXD
gsK7LCDDgsKrOTAwNzE5OTI1NDc0MDk5McOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7
LCDDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFycmF5QnVm
ZmVyXcOCwrssIMOCwqtbb2JqZWN0IEFycmF5QnVmZmVyXcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZm
ZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRv
IGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03MzIsMTggKzcyMCw5IEBAIHRl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9zbGkKIHRlc3QvYnVpbHQtaW5zL0Fy
cmF5SXRlcmF0b3JQcm90b3R5cGUvbmV4dC9kZXRhY2gtdHlwZWRhcnJheS1pbi1wcm9ncmVzcy5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxs
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9Bc3luY0Z1bmN0
aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
bmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtb
b2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3DgsK7
KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5j
RnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi9wcm90by1mcm9tLWN0b3It
cmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0dl
bmVyYXRvckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25d
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9jb25zdHJ1Y3Rvci1pbnRl
Z2VyLmpzOgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUgaW50ZWdlcicKICAgc3Ry
aWN0IG1vZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwotdGVzdC9idWlsdC1pbnMv
Qm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqtmYWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9EYXRhVmlldy9jdXN0b20tcHJvdG8tYWNjZXNzLWRldGFjaGVzLWJ1ZmZlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlv
biB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTc1Myw5ICs3MzIsNiBAQCB0ZXN0L2J1aWx0LWlucy9E
YXRhVmlldy9kZXRhY2hlZC1idWZmZXIuCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9sZW5ndGgu
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJl
IDEnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9yIHZhbHVlIHNob3Vs
ZCBiZSAxJwotdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmpl
Y3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBEYXRhVmlld13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13DgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQt
YnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJv
ciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtODU4LDE4ICs4MzQsNiBA
QCB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWluCiB0ZXN0L2J1aWx0LWlu
cy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWludDgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VF
cnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9y
IGJ1dCBnb3QgYSBSYW5nZUVycm9yJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0
b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8g
YmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXR3by5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2Jq
ZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOC
wrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0Vy
cm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJvcsOCwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q0Vycm9yw4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0Z1
bmN0aW9uL2NhbGwtYmluZC10aGlzLXJlYWxtLXVuZGVmLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBpbXBsaWNpdCB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IGdsb2JhbF3DgsK7LCDDgsKrW29iamVjdCBVbmRlZmluZWRdw4LCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgZ2xvYmFsXcOCwrssIMOCwqtbb2JqZWN0IFVuZGVmaW5lZF3D
gsK7KSB0byBiZSB0cnVlJwpAQCAtODg4LDkgKzg1Miw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0
aW9uL2ludGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVybmFscy9D
b25zdHJ1Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVhbG0uanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgYnV0IGdvdCBhIFJlZmVy
ZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZl
cmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10ZXN0L2J1aWx0LWlucy9GdW5j
dGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKIHRlc3Qv
YnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1leGNlZWRzLWludDMyLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7
LCDDgsKrMjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMjE0NzQ4MzY0OMOCwrsp
IHRvIGJlIHRydWUnCkBAIC0xMDMyLDM2ICs5OTMsOSBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlv
bi9wcm90b3R5cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9T
dHJpbmcvdW5pY29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8g
TmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxc
dTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYy
fSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgogICBzdHJp
Y3QgbW9kZTogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4
OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyBy
ZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYy
ID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1pbnMvR2VuZXJhdG9yRnVu
Y3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuywg
w4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5l
cmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBNYXBdw4LC
uywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRp
dmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywgw4LCq0V2YWxF
cnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmFuZ2VF
cnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
UmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykg
dG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVuY2VFcnJvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmVmZXJl
bmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtSZWZlcmVuY2VF
cnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4
RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3ludGF4RXJyb3LD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5cGVFcnJvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrVHlwZUVy
cm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrssIMOCwqtVUklF
cnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdU
YXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1VSSUVy
cm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051
bWJlci9iaWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVy
c2lvbiBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0
IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBp
cyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
qzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2NvbnNp
c3RlbnQtdmFsdWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKrW29iamVjdCBBcmd1bWVu
dHNdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVm
aW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1jYWxsZXIuanM6CkBAIC0x
MDc4LDkgKzEwMTIsNiBAQCB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51
CiB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51bWVyYWJsZS1wcm9wLWlu
dmFyaWFudC0yLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVF
cnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMv
T2JqZWN0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVj
dCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3Qg
T2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG90eXBl
L3RvU3RyaW5nL3Byb3h5LWZ1bmN0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBm
dW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrss
IMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmpl
Y3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCkBA
IC0xNTA0LDkgKzE0MzUsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBl
cy9uCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9ub24tZXhpc3RlbnQt
cHJvcGVydHktdmFsdWUtZ2VuZXJhbC1jYXRlZ29yeS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6
IFRoaXMgc3RhdGVtZW50IHNob3VsZCBub3QgYmUgZXZhbHVhdGVkLicKICAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVudCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCi10ZXN0
L2J1aWx0LWlucy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86
KS/DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUgdHJ1ZScK
IHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90b3R5cGUvU3ltYm9sLm1hdGNoL2J1aWx0aW4taW5m
ZXItdW5pY29kZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOC
wqtudWxsw4LCuykgdG8gYmUgdHJ1ZScKQEAgLTE1OTEsMTIgKzE1MTksNiBAQCB0ZXN0L2J1aWx0
LWlucy9SZWdFeHAvdW5pY29kZV9yZXN0cmljdGVkCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvdW5p
Y29kZV9yZXN0cmljdGVkX3F1YW50aWZpYWJsZV9hc3NlcnRpb24uanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IFJlZ0V4cCgiKD89LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJy
b3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBSZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3Rl
ZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24g
YXQgYWxsJwotdGVzdC9idWlsdC1pbnMvU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFNl
dF3DgsK7LCDDgsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywg
w4LCq1tvYmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9TdHJpbmcv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUu
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1
ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0
byBiZSB0cnVlJwpAQCAtMTY2MiwyMSArMTU4NCw5IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
Y3RvcnMvYnVmZmVyLWFyZy9sZW5ndGgtdG8tbnVtYmVyLWRldGFjaGJ1ZmZlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdl
RXJyb3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3D
gsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3D
gsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2xlbmd0aC1hcmcvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZs
b2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZs
b2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL25v
LWFyZ3MvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOC
wrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOC
wrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcvbGVuZ3RoLWV4Y2Vzc2l2ZS10aHJvd3MuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0aHJv
d24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSYW5n
ZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL2RldGFj
aGVkLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50LXR5cGUuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZm
ZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2Fz
IHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBi
dWZmZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24g
d2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKQEAgLTE3MDQs
OSArMTYxNCw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3QKIHRl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcv
b3RoZXItY3Rvci1idWZmZXItY3Rvci1zcGVjaWVzLXByb3RvdHlwZS10aHJvd3MuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3Qy
NjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcOCwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcOCwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcv
c2FtZS1jdG9yLWJ1ZmZlci1jdG9yLWFjY2Vzcy10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhj
ZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRo
IEZsb2F0NjRBcnJheS4pJwpAQCAtMTgwOSwxNSArMTcxNiw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvb2YvbmV3LWluc3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAn
VHlwZUVycm9yOiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1
YmNsYXNzIGEgVHlwZWRBcnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogICBzdHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBp
dHMgdGhpcyBhcmd1bWVudCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRl
c3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOC
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywg
w4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7
KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1
ZScKIHRlc3QvaW50bDQwMi9CaWdJbnQvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5nL2RlLURFLmpz
OgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSByYWRpeCBhcmd1bWVudCBtdXN0
IGJlIGJldHdlZW4gMiBhbmQgMzYnCiAgIHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogdG9TdHJp
bmcoKSByYWRpeCBhcmd1bWVudCBtdXN0IGJlIGJldHdlZW4gMiBhbmQgMzYnCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1NyBAQAorMjAxOS0xMS0w
OCAgQWxleGV5IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CisKKyAgICAgICAgSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUgc2hvdWxkIHVzZSBuZXdUYXJn
ZXQncyBnbG9iYWxPYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwMjU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIElmICJwcm90b3R5cGUiIGlzIG5vdCBhbiBvYmplY3QsIGJ1aWx0LWluIGNvbnN0
cnVjdG9ycyBzaG91bGQgdXNlIGludHJpbnNpYyBkZWZhdWx0IHByb3RvdHlwZQorICAgICAgICBv
ZiBOZXdUYXJnZXQncyByZWFsbSAoZm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzku
ZXMvZWNtYTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvcikuCisgICAgICAgIEJlZm9yZSB0aGlzIGNo
YW5nZSwgcmVhbG0gb2YgYWN0aXZlIGNvbnN0cnVjdG9yIHdhcyB1c2VkLiBUaGlzIHBhdGNoIGFs
aWducyBhbGwgRUNNQS0yNjIKKyAgICAgICAgY29uc3RydWN0b3JzIChleGNlcHQgZm9yIFByb21p
c2UpIHdpdGggdGhlIHNwZWMsIFY4LCBhbmQgU3BpZGVyTW9ua2V5LgorCisgICAgICAgICogcnVu
dGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1
Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0QXN5
bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xl
YW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhCb29sZWFuQ29u
c3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6Y29uc3RydWN0RGF0ZSk6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RXJyb3JDb25zdHJ1Y3Rvcik6CisgICAg
ICAgICogcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29u
c3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2spOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNHZW5lcmlj
QXJyYXlCdWZmZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNvbnN0cnVjdEFycmF5QnVmZmVy
KToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJ
bmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6
CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpT
Qzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxs
b2NhdGlvbiBjb25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJv
ckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjxl
cnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBy
dW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVt
YmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAg
KiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhw
U3RydWN0dXJlKToKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpT
Qzo6ZXNTcGVjUmVnRXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVj
dG9yLmg6CisgICAgICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChK
U0M6OmNvbnN0cnVjdFNldCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAg
ICAgICogcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25z
dHJ1Y3RXZWFrTWFwKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRp
bWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1Nl
dCk6CisKIDIwMTktMTEtMDggIE1hdHQgTGV3aXMgIDxqbGV3aXMzQGFwcGxlLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjUyMjI5LgpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0
NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkK
IHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5j
dGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rp
b25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYywgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQog
CiBBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jRnVuY3Rpb25Db25zdHJ1Y3RvcihWTSYg
dm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29u
c3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNhbGwKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsK
LSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJh
dG9yKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3lu
Y0dlbmVyYXRvciwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQogCiBBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihW
TSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIy
OTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Myw3ICs0Myw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgYm9v
bGVhbiA9IGpzQm9vbGVhbihjYWxsRnJhbWUtPmFyZ3VtZW50KDApLnRvQm9vbGVhbihnbG9iYWxP
YmplY3QpKTsKLSAgICBTdHJ1Y3R1cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5ib29sZWFuT2Jq
ZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJn
ZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCk7CisgICAgU3Ry
dWN0dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1Rhcmdl
dCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAgICAgQm9vbGVhbk9iamVjdCogb2JqID0gQm9vbGVhbk9iamVjdDo6Y3Jl
YXRlKHZtLCBib29sZWFuU3RydWN0dXJlKTsKICAgICBvYmotPnNldEludGVybmFsVmFsdWUodm0s
IGJvb2xlYW4pOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xv
d1BhdGhzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
b21tb25TbG93UGF0aHMuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzMs
NyArMjczLDggQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9wcm9taXNlKQogICAg
ICAgICBDSEVDS19FWENFUFRJT04oKTsKICAgICAgICAgcmVzdWx0ID0gSlNJbnRlcm5hbFByb21p
c2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9IGVsc2UgewotICAgICAgICBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3Ry
dWN0b3JBc09iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlU3RydWN0dXJlKCkpOworICAgICAg
ICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBjb25zdHJ1Y3RvckFzT2JqZWN0LT5nbG9iYWxP
YmplY3Qodm0pLT5wcm9taXNlU3RydWN0dXJlKCk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3RvcigpLCBjb25zdHJ1Y3RvckFzT2Jq
ZWN0LCBiYXNlU3RydWN0dXJlKTsKICAgICAgICAgQ0hFQ0tfRVhDRVBUSU9OKCk7CiAgICAgICAg
IHJlc3VsdCA9IEpTUHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIH0KSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNw
cAkocmV2aXNpb24gMjUyMjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQzLDcgKzE0Myw4IEBAIEpTT2Jq
ZWN0KiBjb25zdHJ1Y3REYXRlKEpTR2xvYmFsT2JqZWN0KiAKICAgICAgICAgdmFsdWUgPSBtaWxs
aXNlY29uZHNGcm9tQ29tcG9uZW50cyhnbG9iYWxPYmplY3QsIGFyZ3MsIFdURjo6TG9jYWxUaW1l
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAotICAgIFN0cnVj
dHVyZSogZGF0ZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5kYXRlQ29uc3RydWN0b3IoKSwgbmV3
VGFyZ2V0LCBnbG9iYWxPYmplY3QtPmRhdGVTdHJ1Y3R1cmUoKSk7CisgICAgU3RydWN0dXJlKiBi
YXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZGF0
ZVN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogZGF0ZVN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0
LT5kYXRlQ29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAogICAgIHJldHVybiBEYXRlSW5zdGFu
Y2U6OmNyZWF0ZSh2bSwgZGF0ZVN0cnVjdHVyZSwgdmFsdWUpOwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9u
IDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0
b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw3ICs1Nyw5IEBAIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29uc3RydWN0RXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUg
bWVzc2FnZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBn
bG9iYWxPYmplY3QtPmVycm9yU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0g
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBh
c09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0cnVjdHVyZSgpOwor
ICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6
OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJvclN0cnVjdHVy
ZSwgbWVzc2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwogfQpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsMTkgKzE1Miwy
MCBAQCBKU09iamVjdCogY29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFCiAgICAgICAgIHJl
dHVybiBudWxscHRyOwogICAgIH0KIAorICAgIEpTR2xvYmFsT2JqZWN0KiBzdHJ1Y3R1cmVHbG9i
YWxPYmplY3QgPSBuZXdUYXJnZXQgPyBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pIDogZ2xvYmFsT2JqZWN0OwogICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbnVsbHB0cjsK
ICAgICBzd2l0Y2ggKGZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZSkgewogICAgIGNhc2UgRnVuY3Rp
b25Db25zdHJ1Y3Rpb25Nb2RlOjpGdW5jdGlvbjoKLSAgICAgICAgc3RydWN0dXJlID0gSlNGdW5j
dGlvbjo6c2VsZWN0U3RydWN0dXJlRm9yTmV3RnVuY0V4cChnbG9iYWxPYmplY3QsIGZ1bmN0aW9u
KTsKKyAgICAgICAgc3RydWN0dXJlID0gSlNGdW5jdGlvbjo6c2VsZWN0U3RydWN0dXJlRm9yTmV3
RnVuY0V4cChzdHJ1Y3R1cmVHbG9iYWxPYmplY3QsIGZ1bmN0aW9uKTsKICAgICAgICAgYnJlYWs7
CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkdlbmVyYXRvcjoKLSAgICAgICAg
c3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwor
ICAgICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmdlbmVyYXRvckZ1bmN0
aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1
Y3Rpb25Nb2RlOjpBc3luYzoKLSAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3lu
Y0Z1bmN0aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2Jh
bE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBj
YXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3I6Ci0gICAgICAgIHN0
cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgp
OworICAgICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJh
dG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXJDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTc5LDkgKzc5LDkgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBKU0dlbmVyaWNB
cgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBKU0dlbmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVj
dG9yKiBjb25zdHJ1Y3RvciA9IGpzQ2FzdDxKU0dlbmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9y
Kj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsKLQotICAgIFN0cnVjdHVyZSogYXJyYXlCdWZmZXJT
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwg
Y29uc3RydWN0b3ItPmdsb2JhbE9iamVjdCgpLT5hcnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5n
TW9kZSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsK
KyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9i
YWxPYmplY3Qodm0pLT5hcnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5nTW9kZSk7CisgICAgU3Ry
dWN0dXJlKiBhcnJheUJ1ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdU
YXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsg
fSk7CiAKICAgICB1bnNpZ25lZCBsZW5ndGg7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmgJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJ
bmxpbmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIxMSw5ICsyMTEsOSBAQCBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEdlCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52
bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIElu
dGVybmFsRnVuY3Rpb24qIGZ1bmN0aW9uID0ganNDYXN0PEludGVybmFsRnVuY3Rpb24qPihjYWxs
RnJhbWUtPmpzQ2FsbGVlKCkpOwotICAgIFN0cnVjdHVyZSogcGFyZW50U3RydWN0dXJlID0gZnVu
Y3Rpb24tPmdsb2JhbE9iamVjdCgpLT50eXBlZEFycmF5U3RydWN0dXJlKFZpZXdDbGFzczo6VHlw
ZWRBcnJheVN0b3JhZ2VUeXBlKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBwYXJlbnRTdHJ1Y3R1cmUpOwor
ICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1
Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT50eXBlZEFycmF5U3RydWN0dXJlKFZpZXdDbGFzczo6VHlwZWRBcnJheVN0b3JhZ2VUeXBl
KTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdU
YXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOwogCiAgICAgc2l6ZV90IGFyZ0NvdW50ID0gY2FsbEZyYW1lLT5hcmd1
bWVudENvdW50KCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2Jh
bE9iamVjdElubGluZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaAkocmV2aXNpb24gMjUyMjk2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTEwMSw3ICsxMDEsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIEpTR2xvYmFsT2Jq
ZWN0Ojppc1NldAogCiBBTFdBWVNfSU5MSU5FIFN0cnVjdHVyZSogSlNHbG9iYWxPYmplY3Q6OmFy
cmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBJbmRleGluZ1R5cGUgaW5kZXhpbmdUeXBlLCBKU1ZhbHVlIG5ld1Rh
cmdldCkgY29uc3QKIHsKLSAgICByZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmFycmF5Q29uc3RydWN0b3Io
KSwgbmV3VGFyZ2V0LCBhcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRp
b24oaW5kZXhpbmdUeXBlKSk7CisgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOworICAg
IEpTR2xvYmFsT2JqZWN0KiBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QgPSBuZXdUYXJnZXQgPyBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pIDogZ2xvYmFsT2JqZWN0OworICAgIFN0
cnVjdHVyZSogYXJyYXlTdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFycmF5U3Ry
dWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihpbmRleGluZ1R5cGUpOworICAg
IHJldHVybiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGdsb2JhbE9iamVjdC0+YXJyYXlDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGFycmF5
U3RydWN0dXJlKTsKIH0KIAogaW5saW5lIEpTRnVuY3Rpb24qIEpTR2xvYmFsT2JqZWN0Ojp0aHJv
d1R5cGVFcnJvckZ1bmN0aW9uKCkgY29uc3QgeyByZXR1cm4ganNDYXN0PEpTRnVuY3Rpb24qPihs
aW5rVGltZUNvbnN0YW50KExpbmtUaW1lQ29uc3RhbnQ6OnRocm93VHlwZUVycm9yRnVuY3Rpb24p
KTsgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nyw5IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgU3RydWN0dXJlKiBtYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5tYXBTdHJ1Y3R1cmUoKSk7
CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0
cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSktPm1hcFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBKU1ZhbHVlIGl0
ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCShy
ZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUsOSBAQCBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIE5hdGl2ZUVycm9yCiAgICAgVk0mIHZtID0gZ2xvYmFs
T2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
ICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIFN0cnVj
dHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5u
ZXdUYXJnZXQoKSwganNDYXN0PE5hdGl2ZUVycm9yQ29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpz
Q2FsbGVlKCkpLT5lcnJvclN0cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0g
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBh
c09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0cnVjdHVyZShlcnJv
clR5cGUpOworICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBBU1NFUlQoZXJyb3JTdHJ1Y3R1cmUpOwog
ICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEVycm9ySW5zdGFu
Y2U6OmNyZWF0ZShnbG9iYWxPYmplY3QsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdlLCBudWxscHRy
LCBUeXBlTm90aGluZywgZmFsc2UpKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTkyLDcgKzkyLDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29ucwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
ICAgICBkb3VibGUgbiA9IGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpID8gY2FsbEZyYW1lLT51
bmNoZWNrZWRBcmd1bWVudCgwKS50b051bWJlcihnbG9iYWxPYmplY3QpIDogMDsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKLSAgICBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgp
LCBnbG9iYWxPYmplY3QtPm51bWJlck9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5l
d1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3Ry
dWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+bnVtYmVyT2Jq
ZWN0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIE51bWJlck9iamVjdCogb2JqZWN0
ID0gTnVtYmVyT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCShyZXZp
c2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNyw3ICsxMjcsOCBAQCBzdGF0aWMgQUxX
QVlTX0lOTElORSBKU09iamVjdCogY29uc3RydWN0CiAgICAgLy8gMS4gSWYgTmV3VGFyZ2V0IGlz
IG5laXRoZXIgdW5kZWZpbmVkIG5vciB0aGUgYWN0aXZlIGZ1bmN0aW9uLCB0aGVuCiAgICAgaWYg
KG5ld1RhcmdldCAmJiBuZXdUYXJnZXQgIT0gb2JqZWN0Q29uc3RydWN0b3IpIHsKICAgICAgICAg
Ly8gYS4gUmV0dXJuID8gT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IoTmV3VGFyZ2V0LCAi
JU9iamVjdFByb3RvdHlwZSUiKS4KLSAgICAgICAgU3RydWN0dXJlKiBvYmplY3RTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IG9iamVjdENvbnN0cnVjdG9yLCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+b2JqZWN0U3RydWN0
dXJlRm9yT2JqZWN0Q29uc3RydWN0b3IoKSk7CisgICAgICAgIFN0cnVjdHVyZSogYmFzZVN0cnVj
dHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm9iamVjdFN0cnVj
dHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCk7CisgICAgICAgIFN0cnVjdHVyZSogb2JqZWN0U3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAgICAgICAgIHJldHVy
biBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgb2JqZWN0U3RydWN0dXJlKTsKICAgICB9CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3MiwxMCArMTcyLDkg
QEAgYm9vbCBzZXRSZWdFeHBDb25zdHJ1Y3Rvck11bHRpbGluZShKU0dsbwogCiBpbmxpbmUgU3Ry
dWN0dXJlKiBnZXRSZWdFeHBTdHJ1Y3R1cmUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSBuZXdUYXJnZXQpCiB7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnbG9iYWxP
YmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpOwotICAgIGlmIChuZXdUYXJnZXQgIT0ganNVbmRlZmlu
ZWQoKSkKLSAgICAgICAgc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnJlZ0V4cENvbnN0cnVjdG9y
KCksIG5ld1RhcmdldCwgc3RydWN0dXJlKTsKLSAgICByZXR1cm4gc3RydWN0dXJlOworICAgIFZN
JiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAgICBKU0dsb2JhbE9iamVjdCogc3RydWN0dXJl
R2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2Jq
ZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKKyAgICByZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnJlZ0V4cENv
bnN0cnVjdG9yKCksIG5ld1RhcmdldCwgc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1
Y3R1cmUoKSk7CiB9CiAKIGlubGluZSBPcHRpb25TZXQ8WWFycjo6RmxhZ3M+IHRvRmxhZ3MoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBmbGFncykKQEAgLTIyOSw3ICsyMjgs
NyBAQCBKU09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0CiAgICAgYm9vbCBj
b25zdHJ1Y3RBc1JlZ2V4cCA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIHBhdHRlcm5Bcmcp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCi0gICAgaWYgKG5l
d1RhcmdldC5pc1VuZGVmaW5lZCgpICYmIGNvbnN0cnVjdEFzUmVnZXhwICYmIGZsYWdzQXJnLmlz
VW5kZWZpbmVkKCkpIHsKKyAgICBpZiAoIW5ld1RhcmdldCAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAm
JiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CiAgICAgICAgIEpTVmFsdWUgY29uc3RydWN0b3Ig
PSBwYXR0ZXJuQXJnLmdldChnbG9iYWxPYmplY3QsIHZtLnByb3BlcnR5TmFtZXMtPmNvbnN0cnVj
dG9yKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAgICAg
ICAgIGlmIChjYWxsZWUgPT0gY29uc3RydWN0b3IpIHsKQEAgLTI3NCw3ICsyNzMsNyBAQCBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY1JlZ0V4CiB7CiAgICAgSlNWYWx1ZSBwYXR0
ZXJuQXJnID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIGZsYWdzQXJnID0g
Y2FsbEZyYW1lLT5hcmd1bWVudCgxKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4
cENyZWF0ZShnbG9iYWxPYmplY3QsIGpzVW5kZWZpbmVkKCksIHBhdHRlcm5BcmcsIGZsYWdzQXJn
KSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUoZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlKCksIHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7CiB9CiAKIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwgZXNTcGVjSXNSZWdFeHAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI1MjI5NikKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTU4LDcgKzU4LDcgQEAgcHJpdmF0ZToKIAogc3RhdGljX2Fzc2VydChzaXplb2Yo
UmVnRXhwQ29uc3RydWN0b3IpID09IHNpemVvZihJbnRlcm5hbEZ1bmN0aW9uKSwgIiIpOwogCi1K
U09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYs
IEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVlIG5ld1RhcmdldCA9IGpzVW5kZWZp
bmVkKCkpOworSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCosIGNvbnN0
IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQg
PSBKU1ZhbHVlKCkpOwogCiBBTFdBWVNfSU5MSU5FIGJvb2wgaXNSZWdFeHAoVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQogewpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAkocmV2aXNp
b24gMjUyMjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0
b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nyw5IEBAIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0
dXJlKiBzZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdU
YXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVj
dHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPnNldFN0cnVjdHVy
ZSgpOworICAgIFN0cnVjdHVyZSogc2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1l
LT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmlu
Z0NvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTQ0LDcgKzE0NCw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNh
bGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0
LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxs
RnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2Jq
ZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPnN0cmluZ09iamVjdFN0cnVjdHVyZSgp
OworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1Rh
cmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5j
b2RlZEpTVmFsdWUoKSk7CiAKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpKQpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29u
c3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw3ICs2
NSw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYg
dm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1df
U0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUt
PmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha01h
cFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0
KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha01hcFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSog
d2Vha01hcFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VT
dHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVl
KCkpOwogICAgIEpTV2Vha01hcCogd2Vha01hcCA9IEpTV2Vha01hcDo6Y3JlYXRlKHZtLCB3ZWFr
TWFwU3RydWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVu
dCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjk2KQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNjgsNyArNjgsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzT2JqZWN0
KCkpCiAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJGaXJzdCBhcmd1bWVudCB0byBXZWFrUmVmIHNob3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0g
ICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0
cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVy
ZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJn
ZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5j
b2RlKEpTV2Vha09iamVjdFJlZjo6Y3JlYXRlKHZtLCBXZWFrT2JqZWN0UmVmU3RydWN0dXJlLCBj
YWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApLmdldE9iamVjdCgpKSkpOwogfQpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw3ICs2NSw5IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha1NldFN0cnVj
dHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7
CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKS0+d2Vha1NldFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogd2Vha1Nl
dFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1
cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwog
ICAgIEpTV2Vha1NldCogd2Vha1NldCA9IEpTV2Vha1NldDo6Y3JlYXRlKHZtLCB3ZWFrU2V0U3Ry
dWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383197</attachid>
            <date>2019-11-08 19:19:27 -0800</date>
            <delta_ts>2019-11-11 04:15:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191109051925.patch</filename>
            <type>text/plain</type>
            <size>45218</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIyOTYpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTA4ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDY4IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wOCAgR3Vp
bGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxpYS5jb20+CiAKICAgICAgICAgVGVtcG9yYXJp
bHkgc2tpcCBhbm90aGVyIGJyb2tlbiB0ZXN0IG9uIE1JUFMgZHVlIHRvIE9TUiBleGl0IHRvIExM
SW50CkluZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNTIyOTYpCisr
KyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTYy
MSwxNSArNjIxLDYgQEAgdGVzdC9hbm5leEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3Itb2YvaQog
dGVzdC9idWlsdC1pbnMvQXJyYXkvb2YvcmV0dXJuLWFicnVwdC1mcm9tLWRhdGEtcHJvcGVydHku
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJl
IHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90
by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdU
YXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrss
IMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3
VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7
LCDDgsKrw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5w
cm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLXplcm8uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrw4LCuywgw4LCq8OCwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0
byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2ZpbHRlci90YXJnZXQt
YXJyYXktd2l0aC1ub24td3JpdGFibGUtcHJvcGVydHkuanM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJy
b3I6IEF0dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuJwogICBzdHJpY3Qg
bW9kZTogJ1R5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0
eS4nCkBAIC02OTksOSArNjkwLDYgQEAgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3Nw
bGljZS90aAogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3Vuc2hpZnQvY2xhbXBzLXRv
LWludGVnZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAy
Kio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqs0Mjk0OTY3Mjk1w4LCuywgw4LCqzkwMDcx
OTkyNTQ3NDA5OTHDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogTGVuZ3RoIGlzIDIqKjUzIC0gMSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzQyOTQ5NjcyOTXD
gsK7LCDDgsKrOTAwNzE5OTI1NDc0MDk5McOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7
LCDDgsKrW29iamVjdCBBcnJheUJ1ZmZlcl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFycmF5QnVm
ZmVyXcOCwrssIMOCwqtbb2JqZWN0IEFycmF5QnVmZmVyXcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZm
ZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRv
IGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03MzIsMTggKzcyMCw5IEBAIHRl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9zbGkKIHRlc3QvYnVpbHQtaW5zL0Fy
cmF5SXRlcmF0b3JQcm90b3R5cGUvbmV4dC9kZXRhY2gtdHlwZWRhcnJheS1pbi1wcm9ncmVzcy5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxs
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9Bc3luY0Z1bmN0
aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
bmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtb
b2JqZWN0IEFzeW5jRnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3DgsK7
KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5j
RnVuY3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi9wcm90by1mcm9tLWN0b3It
cmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBBc3luY0dl
bmVyYXRvckZ1bmN0aW9uXcOCwrssIMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25d
w4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9jb25zdHJ1Y3Rvci1pbnRl
Z2VyLmpzOgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUgaW50ZWdlcicKICAgc3Ry
aWN0IG1vZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwotdGVzdC9idWlsdC1pbnMv
Qm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZmFsc2XDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqtmYWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9EYXRhVmlldy9jdXN0b20tcHJvdG8tYWNjZXNzLWRldGFjaGVzLWJ1ZmZlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlv
biB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTc1Myw5ICs3MzIsNiBAQCB0ZXN0L2J1aWx0LWlucy9E
YXRhVmlldy9kZXRhY2hlZC1idWZmZXIuCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9sZW5ndGgu
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJl
IDEnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9yIHZhbHVlIHNob3Vs
ZCBiZSAxJwotdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmpl
Y3QgRGF0YVZpZXddw4LCuywgw4LCq1tvYmplY3QgRGF0YVZpZXddw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBEYXRhVmlld13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13DgsK7KSB0byBiZSB0cnVl
JwogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQt
YnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJv
ciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtODU4LDE4ICs4MzQsNiBA
QCB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWluCiB0ZXN0L2J1aWx0LWlu
cy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWludDgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VF
cnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9y
IGJ1dCBnb3QgYSBSYW5nZUVycm9yJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0
b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0
byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8g
YmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXR3by5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2Jq
ZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOC
wrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7
LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0Vy
cm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtFcnJvcsOCwrssIMOCwqtFcnJvcsOCwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q0Vycm9yw4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0Z1
bmN0aW9uL2NhbGwtYmluZC10aGlzLXJlYWxtLXVuZGVmLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBpbXBsaWNpdCB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IGdsb2JhbF3DgsK7LCDDgsKrW29iamVjdCBVbmRlZmluZWRdw4LCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgZ2xvYmFsXcOCwrssIMOCwqtbb2JqZWN0IFVuZGVmaW5lZF3D
gsK7KSB0byBiZSB0cnVlJwpAQCAtODg4LDkgKzg1Miw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0
aW9uL2ludGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVybmFscy9D
b25zdHJ1Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVhbG0uanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgYnV0IGdvdCBhIFJlZmVy
ZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZl
cmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10ZXN0L2J1aWx0LWlucy9GdW5j
dGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrZnVuY3Rpb24gKCkgeycKIHRlc3Qv
YnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1leGNlZWRzLWludDMyLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7
LCDDgsKrMjE0NzQ4MzY0OMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMjE0NzQ4MzY0OMOCwrsp
IHRvIGJlIHRydWUnCkBAIC0xMDMyLDM2ICs5OTMsOSBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlv
bi9wcm90b3R5cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9T
dHJpbmcvdW5pY29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8g
TmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxc
dTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYy
fSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgogICBzdHJp
Y3QgbW9kZTogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4
OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyBy
ZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYy
ID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1pbnMvR2VuZXJhdG9yRnVu
Y3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuywg
w4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5l
cmF0b3JGdW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0
IE1hcF3DgsK7LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBNYXBdw4LC
uywgw4LCq1tvYmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRp
dmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywgw4LCq0V2YWxF
cnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmFuZ2VF
cnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
UmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykg
dG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVuY2VFcnJvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmVmZXJl
bmNlRXJyb3LDgsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtSZWZlcmVuY2VF
cnJvcsOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4
RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
q1N5bnRheEVycm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3ludGF4RXJyb3LD
gsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5cGVFcnJvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrVHlwZUVy
cm9yw4LCuywgw4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrssIMOCwqtVUklF
cnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdU
YXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1VSSUVy
cm9yw4LCuywgw4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051
bWJlci9iaWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVy
c2lvbiBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0
IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBp
cyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LC
qzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUn
CiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2NvbnNp
c3RlbnQtdmFsdWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKrW29iamVjdCBBcmd1bWVu
dHNdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVm
aW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1jYWxsZXIuanM6CkBAIC0x
MDc4LDkgKzEwMTIsNiBAQCB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51
CiB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51bWVyYWJsZS1wcm9wLWlu
dmFyaWFudC0yLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVF
cnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMv
T2JqZWN0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVj
dCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3Qg
T2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG90eXBl
L3RvU3RyaW5nL3Byb3h5LWZ1bmN0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBm
dW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrss
IMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmpl
Y3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCkBA
IC0xNTA0LDkgKzE0MzUsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBl
cy9uCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9ub24tZXhpc3RlbnQt
cHJvcGVydHktdmFsdWUtZ2VuZXJhbC1jYXRlZ29yeS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6
IFRoaXMgc3RhdGVtZW50IHNob3VsZCBub3QgYmUgZXZhbHVhdGVkLicKICAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVudCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCi10ZXN0
L2J1aWx0LWlucy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86
KS/DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUgdHJ1ZScK
IHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90b3R5cGUvU3ltYm9sLm1hdGNoL2J1aWx0aW4taW5m
ZXItdW5pY29kZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOC
wqtudWxsw4LCuykgdG8gYmUgdHJ1ZScKQEAgLTE1OTEsMTIgKzE1MTksNiBAQCB0ZXN0L2J1aWx0
LWlucy9SZWdFeHAvdW5pY29kZV9yZXN0cmljdGVkCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvdW5p
Y29kZV9yZXN0cmljdGVkX3F1YW50aWZpYWJsZV9hc3NlcnRpb24uanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IFJlZ0V4cCgiKD89LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJy
b3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBSZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3Rl
ZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24g
YXQgYWxsJwotdGVzdC9idWlsdC1pbnMvU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFNl
dF3DgsK7LCDDgsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywg
w4LCq1tvYmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9TdHJpbmcv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUu
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1
ZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0
byBiZSB0cnVlJwpAQCAtMTY2MiwyMSArMTU4NCw5IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
Y3RvcnMvYnVmZmVyLWFyZy9sZW5ndGgtdG8tbnVtYmVyLWRldGFjaGJ1ZmZlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdl
RXJyb3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3D
gsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3D
gsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2xlbmd0aC1hcmcvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZs
b2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZs
b2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL25v
LWFyZ3MvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOC
wrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOC
wrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcvbGVuZ3RoLWV4Y2Vzc2l2ZS10aHJvd3MuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0aHJv
d24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSYW5n
ZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL2RldGFj
aGVkLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50LXR5cGUuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZm
ZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2Fz
IHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBi
dWZmZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24g
d2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKQEAgLTE3MDQs
OSArMTYxNCw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3QKIHRl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcv
b3RoZXItY3Rvci1idWZmZXItY3Rvci1zcGVjaWVzLXByb3RvdHlwZS10aHJvd3MuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3Qy
NjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcOCwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcOCwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcv
c2FtZS1jdG9yLWJ1ZmZlci1jdG9yLWFjY2Vzcy10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhj
ZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRo
IEZsb2F0NjRBcnJheS4pJwpAQCAtMTgwOSwxNSArMTcxNiw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvb2YvbmV3LWluc3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAn
VHlwZUVycm9yOiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1
YmNsYXNzIGEgVHlwZWRBcnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogICBzdHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBp
dHMgdGhpcyBhcmd1bWVudCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRl
c3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOC
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOC
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywg
w4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7
KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1
ZScKIHRlc3QvaW50bDQwMi9CaWdJbnQvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5nL2RlLURFLmpz
OgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSByYWRpeCBhcmd1bWVudCBtdXN0
IGJlIGJldHdlZW4gMiBhbmQgMzYnCiAgIHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogdG9TdHJp
bmcoKSByYWRpeCBhcmd1bWVudCBtdXN0IGJlIGJldHdlZW4gMiBhbmQgMzYnCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1NyBAQAorMjAxOS0xMS0w
OCAgQWxleGV5IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CisKKyAgICAgICAgSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUgc2hvdWxkIHVzZSBuZXdUYXJn
ZXQncyBnbG9iYWxPYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwMjU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIElmICJwcm90b3R5cGUiIGlzIG5vdCBhbiBvYmplY3QsIGJ1aWx0LWluIGNvbnN0
cnVjdG9ycyBzaG91bGQgdXNlIGludHJpbnNpYyBkZWZhdWx0IHByb3RvdHlwZQorICAgICAgICBv
ZiBOZXdUYXJnZXQncyByZWFsbSAoZm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzku
ZXMvZWNtYTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvcikuCisgICAgICAgIEJlZm9yZSB0aGlzIGNo
YW5nZSwgcmVhbG0gb2YgYWN0aXZlIGNvbnN0cnVjdG9yIHdhcyB1c2VkLiBUaGlzIHBhdGNoIGFs
aWducyBhbGwgRUNNQS0yNjIKKyAgICAgICAgY29uc3RydWN0b3JzIChleGNlcHQgZm9yIFByb21p
c2UpIHdpdGggdGhlIHNwZWMsIFY4LCBhbmQgU3BpZGVyTW9ua2V5LgorCisgICAgICAgICogcnVu
dGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1
Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0QXN5
bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xl
YW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhCb29sZWFuQ29u
c3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6Y29uc3RydWN0RGF0ZSk6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RXJyb3JDb25zdHJ1Y3Rvcik6CisgICAg
ICAgICogcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29u
c3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hlY2spOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNHZW5lcmlj
QXJyYXlCdWZmZXJDb25zdHJ1Y3RvcjxzaGFyaW5nTW9kZT46OmNvbnN0cnVjdEFycmF5QnVmZmVy
KToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJ
bmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6
CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpT
Qzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxs
b2NhdGlvbiBjb25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJv
ckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjxl
cnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBy
dW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVt
YmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAg
KiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhw
U3RydWN0dXJlKToKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpT
Qzo6ZXNTcGVjUmVnRXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVj
dG9yLmg6CisgICAgICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChK
U0M6OmNvbnN0cnVjdFNldCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAg
ICAgICogcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25z
dHJ1Y3RXZWFrTWFwKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRp
bWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1Nl
dCk6CisKIDIwMTktMTEtMDggIE1hdHQgTGV3aXMgIDxqbGV3aXMzQGFwcGxlLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjUyMjI5LgpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0
NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkK
IHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5j
dGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rp
b25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYywgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQog
CiBBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jRnVuY3Rpb25Db25zdHJ1Y3RvcihWTSYg
dm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29u
c3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNhbGwKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsK
LSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJh
dG9yKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3lu
Y0dlbmVyYXRvciwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQogCiBBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihW
TSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIy
OTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Myw3ICs0Myw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgYm9v
bGVhbiA9IGpzQm9vbGVhbihjYWxsRnJhbWUtPmFyZ3VtZW50KDApLnRvQm9vbGVhbihnbG9iYWxP
YmplY3QpKTsKLSAgICBTdHJ1Y3R1cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5ib29sZWFuT2Jq
ZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJn
ZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCk7CisgICAgU3Ry
dWN0dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1Rhcmdl
dCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAgICAgQm9vbGVhbk9iamVjdCogb2JqID0gQm9vbGVhbk9iamVjdDo6Y3Jl
YXRlKHZtLCBib29sZWFuU3RydWN0dXJlKTsKICAgICBvYmotPnNldEludGVybmFsVmFsdWUodm0s
IGJvb2xlYW4pOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9E
YXRlQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDMs
NyArMTQzLDggQEAgSlNPYmplY3QqIGNvbnN0cnVjdERhdGUoSlNHbG9iYWxPYmplY3QqIAogICAg
ICAgICB2YWx1ZSA9IG1pbGxpc2Vjb25kc0Zyb21Db21wb25lbnRzKGdsb2JhbE9iamVjdCwgYXJn
cywgV1RGOjpMb2NhbFRpbWUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxw
dHIpOwogCi0gICAgU3RydWN0dXJlKiBkYXRlU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVD
b25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+ZGF0ZVN0cnVjdHVyZSgpKTsK
KyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9i
YWxPYmplY3Qodm0pLT5kYXRlU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBkYXRlU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1
Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCiAgICAg
cmV0dXJuIERhdGVJbnN0YW5jZTo6Y3JlYXRlKHZtLCBkYXRlU3RydWN0dXJlLCB2YWx1ZSk7Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjUyMjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDkgQEAg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RFcgogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBT
dHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+ZXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgSlNW
YWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSog
YmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmVy
cm9yU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxPYmpl
Y3QsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFsc2Up
KSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9G
dW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjk2KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTE1MiwxOSArMTUyLDIwIEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5n
RXZhbEUKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCisgICAgSlNHbG9iYWxPYmpl
Y3QqIHN0cnVjdHVyZUdsb2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1Rhcmdl
dCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9iYWxPYmplY3Q7CiAgICAgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUgPSBudWxscHRyOwogICAgIHN3aXRjaCAoZnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlKSB7
CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkZ1bmN0aW9uOgotICAgICAgICBz
dHJ1Y3R1cmUgPSBKU0Z1bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhwKGdsb2Jh
bE9iamVjdCwgZnVuY3Rpb24pOworICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9uOjpzZWxl
Y3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhwKHN0cnVjdHVyZUdsb2JhbE9iamVjdCwgZnVuY3Rpb24p
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6R2Vu
ZXJhdG9yOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmdlbmVyYXRvckZ1bmN0
aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVj
dC0+Z2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jOgotICAgICAgICBzdHJ1Y3R1cmUgPSBn
bG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJl
ID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5hc3luY0Z1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVy
YXRvcjoKLSAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1
bmN0aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9i
amVjdC0+YXN5bmNHZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsK
ICAgICB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMjk2KQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNzksOSArNzksOSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIEpTR2VuZXJpY0FyCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIEpTR2VuZXJpY0Fy
cmF5QnVmZmVyQ29uc3RydWN0b3IqIGNvbnN0cnVjdG9yID0ganNDYXN0PEpTR2VuZXJpY0FycmF5
QnVmZmVyQ29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCi0gICAgU3RydWN0
dXJlKiBhcnJheUJ1ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJh
bWUtPm5ld1RhcmdldCgpLCBjb25zdHJ1Y3Rvci0+Z2xvYmFsT2JqZWN0KCktPmFycmF5QnVmZmVy
U3RydWN0dXJlKHNoYXJpbmdNb2RlKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJh
bWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0
KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmFycmF5QnVmZmVyU3RydWN0dXJlKHNoYXJp
bmdNb2RlKTsKKyAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUt
PmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIHVuc2lnbmVkIGxlbmd0aDsKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0
b3JJbmxpbmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAkocmV2aXNpb24gMjUy
Mjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJh
eVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjExLDkgKzIxMSw5
IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0R2UKICAgICBWTSYgdm0g
PSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogCi0gICAgSW50ZXJuYWxGdW5jdGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SW50ZXJu
YWxGdW5jdGlvbio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0gICAgU3RydWN0dXJlKiBwYXJl
bnRTdHJ1Y3R1cmUgPSBmdW5jdGlvbi0+Z2xvYmFsT2JqZWN0KCktPnR5cGVkQXJyYXlTdHJ1Y3R1
cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5U3RvcmFnZVR5cGUpOwotICAgIFN0cnVjdHVyZSogc3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIHBh
cmVudFN0cnVjdHVyZSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rh
cmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1Rhcmdl
dCktPmdsb2JhbE9iamVjdCh2bSktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBl
ZEFycmF5U3RvcmFnZVR5cGUpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUt
PmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBzaXplX3QgYXJnQ291bnQg
PSBjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0SW5saW5lcy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0SW5saW5lcy5oCShyZXZpc2lvbiAy
NTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdElu
bGluZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMTAxLDcgKzEwMSwxMCBAQCBBTFdBWVNfSU5MSU5F
IGJvb2wgSlNHbG9iYWxPYmplY3Q6OmlzU2V0CiAKIEFMV0FZU19JTkxJTkUgU3RydWN0dXJlKiBK
U0dsb2JhbE9iamVjdDo6YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0
aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEluZGV4aW5nVHlwZSBpbmRleGluZ1R5
cGUsIEpTVmFsdWUgbmV3VGFyZ2V0KSBjb25zdAogewotICAgIHJldHVybiBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+
YXJyYXlDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdU
eXBlRHVyaW5nQWxsb2NhdGlvbihpbmRleGluZ1R5cGUpKTsKKyAgICBWTSYgdm0gPSBnbG9iYWxP
YmplY3QtPnZtKCk7CisgICAgSlNHbG9iYWxPYmplY3QqIHN0cnVjdHVyZUdsb2JhbE9iamVjdCA9
IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9i
YWxPYmplY3Q7CisgICAgU3RydWN0dXJlKiBhcnJheVN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2Jh
bE9iamVjdC0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKGlu
ZGV4aW5nVHlwZSk7CisgICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9yKCks
IG5ld1RhcmdldCwgYXJyYXlTdHJ1Y3R1cmUpOwogfQogCiBpbmxpbmUgSlNGdW5jdGlvbiogSlNH
bG9iYWxPYmplY3Q6OnRocm93VHlwZUVycm9yRnVuY3Rpb24oKSBjb25zdCB7IHJldHVybiBqc0Nh
c3Q8SlNGdW5jdGlvbio+KGxpbmtUaW1lQ29uc3RhbnQoTGlua1RpbWVDb25zdGFudDo6dGhyb3dU
eXBlRXJyb3JGdW5jdGlvbikpOyB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9NYXBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTY3LDcgKzY3LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
cwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3Qt
Pm1hcFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFy
Z2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+bWFwU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBt
YXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0
dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
IAogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01
NSw3ICs1NSw5IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgTmF0aXZlRXJyb3IKICAg
ICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFtZS0+YXJndW1l
bnQoMCk7Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8TmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
cio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmVycm9yU3RydWN0dXJlKHZtKSk7CisgICAgSlNW
YWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSog
YmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmVy
cm9yU3RydWN0dXJlKGVycm9yVHlwZSk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEFTU0VSVChl
cnJvclN0cnVjdHVyZSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjpl
bmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgZXJyb3JTdHJ1Y3R1cmUs
IG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAJKHJl
dmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNv
bnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIsNyArOTIsOSBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogICAgIGRvdWJsZSBuID0gY2FsbEZyYW1lLT5hcmd1bWVudENvdW50
KCkgPyBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApLnRvTnVtYmVyKGdsb2JhbE9iamVj
dCkgOiAwOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkp
OwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCkp
OworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBT
dHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmpl
Y3Qodm0pLT5udW1iZXJPYmplY3RTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgTnVt
YmVyT2JqZWN0KiBvYmplY3QgPSBOdW1iZXJPYmplY3Q6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25z
dHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI3LDcgKzEy
Nyw4IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTT2JqZWN0KiBjb25zdHJ1Y3QKICAgICAvLyAx
LiBJZiBOZXdUYXJnZXQgaXMgbmVpdGhlciB1bmRlZmluZWQgbm9yIHRoZSBhY3RpdmUgZnVuY3Rp
b24sIHRoZW4KICAgICBpZiAobmV3VGFyZ2V0ICYmIG5ld1RhcmdldCAhPSBvYmplY3RDb25zdHJ1
Y3RvcikgewogICAgICAgICAvLyBhLiBSZXR1cm4gPyBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1
Y3RvcihOZXdUYXJnZXQsICIlT2JqZWN0UHJvdG90eXBlJSIpLgotICAgICAgICBTdHJ1Y3R1cmUq
IG9iamVjdFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGdsb2JhbE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5ld1RhcmdldCwgZ2xvYmFsT2Jq
ZWN0LT5vYmplY3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpKTsKKyAgICAgICAgU3Ry
dWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKS0+b2JqZWN0U3RydWN0dXJlRm9yT2JqZWN0Q29uc3RydWN0b3IoKTsKKyAgICAgICAgU3Ry
dWN0dXJlKiBvYmplY3RTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG9iamVjdENvbnN0cnVjdG9yLCBuZXdUYXJnZXQsIGJh
c2VTdHJ1Y3R1cmUpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRy
KTsKICAgICAgICAgcmV0dXJuIGNvbnN0cnVjdEVtcHR5T2JqZWN0KHZtLCBvYmplY3RTdHJ1Y3R1
cmUpOwogICAgIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTcyLDEwICsxNzIsOSBAQCBib29sIHNldFJlZ0V4cENvbnN0cnVjdG9yTXVsdGlsaW5lKEpT
R2xvCiAKIGlubGluZSBTdHJ1Y3R1cmUqIGdldFJlZ0V4cFN0cnVjdHVyZShKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCkKIHsKLSAgICBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+cmVnRXhwU3RydWN0dXJlKCk7Ci0gICAgaWYgKG5ld1Rh
cmdldCAhPSBqc1VuZGVmaW5lZCgpKQotICAgICAgICBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+
cmVnRXhwQ29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBzdHJ1Y3R1cmUpOwotICAgIHJldHVybiBz
dHJ1Y3R1cmU7CisgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOworICAgIEpTR2xvYmFs
T2JqZWN0KiBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QgPSBuZXdUYXJnZXQgPyBhc09iamVjdChuZXdU
YXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pIDogZ2xvYmFsT2JqZWN0OworICAgIHJldHVybiBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2Jh
bE9iamVjdC0+cmVnRXhwQ29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBzdHJ1Y3R1cmVHbG9iYWxP
YmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpKTsKIH0KIAogaW5saW5lIE9wdGlvblNldDxZYXJyOjpG
bGFncz4gdG9GbGFncyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZsYWdz
KQpAQCAtMjI5LDcgKzIyOCw3IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxP
YmplY3QKICAgICBib29sIGNvbnN0cnVjdEFzUmVnZXhwID0gaXNSZWdFeHAodm0sIGdsb2JhbE9i
amVjdCwgcGF0dGVybkFyZyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0
cik7CiAKLSAgICBpZiAobmV3VGFyZ2V0LmlzVW5kZWZpbmVkKCkgJiYgY29uc3RydWN0QXNSZWdl
eHAgJiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgeworICAgIGlmICghbmV3VGFyZ2V0ICYmIGNv
bnN0cnVjdEFzUmVnZXhwICYmIGZsYWdzQXJnLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNW
YWx1ZSBjb25zdHJ1Y3RvciA9IHBhdHRlcm5BcmcuZ2V0KGdsb2JhbE9iamVjdCwgdm0ucHJvcGVy
dHlOYW1lcy0+Y29uc3RydWN0b3IpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCBudWxscHRyKTsKICAgICAgICAgaWYgKGNhbGxlZSA9PSBjb25zdHJ1Y3RvcikgewpAQCAtMjc0
LDcgKzI3Myw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXNTcGVjUmVnRXgKIHsK
ICAgICBKU1ZhbHVlIHBhdHRlcm5BcmcgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIEpT
VmFsdWUgZmxhZ3NBcmcgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDEpOwotICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVjdCwganNVbmRlZmluZWQoKSwgcGF0
dGVybkFyZywgZmxhZ3NBcmcpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4cENy
ZWF0ZShnbG9iYWxPYmplY3QsIEpTVmFsdWUoKSwgcGF0dGVybkFyZywgZmxhZ3NBcmcpKTsKIH0K
IAogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1NwZWNJc1JlZ0V4cChKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAkocmV2aXNp
b24gMjUyMjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3Ry
dWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNTgsNyArNTgsNyBAQCBwcml2YXRlOgogCiBzdGF0
aWNfYXNzZXJ0KHNpemVvZihSZWdFeHBDb25zdHJ1Y3RvcikgPT0gc2l6ZW9mKEludGVybmFsRnVu
Y3Rpb24pLCAiIik7CiAKLUpTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3Qq
LCBjb25zdCBBcmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3
VGFyZ2V0ID0ganNVbmRlZmluZWQoKSk7CitKU09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xv
YmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYsIEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBK
U1ZhbHVlIG5ld1RhcmdldCA9IEpTVmFsdWUoKSk7CiAKIEFMV0FZU19JTkxJTkUgYm9vbCBpc1Jl
Z0V4cChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUp
CiB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3Ry
dWN0b3IuY3BwCShyZXZpc2lvbiAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY3LDcgKzY3LDkgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPnNldFN0cnVjdHVyZSgpKTsK
KyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3Ry
dWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKS0+c2V0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzZXRTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxG
cmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIEpTVmFsdWUgaXRl
cmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUy
Mjk2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDQsNyArMTQ0LDkgQEAgc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsK
ICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpLCBnbG9iYWxPYmplY3QtPnN0cmluZ09iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNl
U3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+c3RyaW5n
T2JqZWN0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+
anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIGlmICghY2FsbEZyYW1lLT5h
cmd1bWVudENvdW50KCkpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFr
TWFwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTY1LDcgKzY1LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xv
YmFsT2JqZWN0LT53ZWFrTWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0g
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBh
c09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFrTWFwU3RydWN0dXJlKCk7
CisgICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgSlNXZWFrTWFwKiB3ZWFrTWFwID0gSlNXZWFrTWFw
OjpjcmVhdGUodm0sIHdlYWtNYXBTdHJ1Y3R1cmUpOwogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBj
YWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCShyZXZpc2lv
biAyNTIyOTYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVm
Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02OCw3ICs2OCw5IEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJn
dW1lbnQoMCkuaXNPYmplY3QoKSkKICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgIkZpcnN0IGFyZ3VtZW50IHRvIFdlYWtSZWYgc2hvdWxkIGJlIGFu
IG9iamVjdCJfcyk7CiAKLSAgICBTdHJ1Y3R1cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNh
bGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0
LT53ZWFrT2JqZWN0UmVmU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2Fs
bEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09i
amVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFrT2JqZWN0UmVmU3RydWN0dXJl
KCk7CisgICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNj
b3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNXZWFrT2JqZWN0UmVmOjpjcmVhdGUodm0sIFdlYWtPYmpl
Y3RSZWZTdHJ1Y3R1cmUsIGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkuZ2V0T2JqZWN0
KCkpKSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29u
c3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjI5NikKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTY1LDcgKzY1LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
cwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdlYWtTZXRTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2Jq
ZWN0LT53ZWFrU2V0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVj
dChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFrU2V0U3RydWN0dXJlKCk7CisgICAg
U3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1Rh
cmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5j
b2RlZEpTVmFsdWUoKSk7CiAgICAgSlNXZWFrU2V0KiB3ZWFrU2V0ID0gSlNXZWFrU2V0OjpjcmVh
dGUodm0sIHdlYWtTZXRTdHJ1Y3R1cmUpOwogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJh
bWUtPmFyZ3VtZW50KDApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383262</attachid>
            <date>2019-11-11 04:15:41 -0800</date>
            <delta_ts>2019-11-11 07:20:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191111141539.patch</filename>
            <type>text/plain</type>
            <size>44302</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIzMjEpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTExICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDY0IHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wOCAgR3Vp
bGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxpYS5jb20+CiAKICAgICAgICAgVGVtcG9yYXJp
bHkgc2tpcCBhbm90aGVyIGJyb2tlbiB0ZXN0IG9uIE1JUFMgZHVlIHRvIE9TUiBleGl0IHRvIExM
SW50CkluZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNTIzMTMpCisr
KyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTY5
OSw5ICs2OTksNiBAQCB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvc3BsaWNlL3RoCiB0
ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvdW5zaGlmdC9jbGFtcHMtdG8taW50ZWdlci1s
aW1pdC5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogTGVuZ3RoIGlzIDIqKjUzIC0gMSBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCqzQyOTQ5NjcyOTXDgsK7LCDDgsKrOTAwNzE5OTI1NDc0MDk5
McOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBMZW5ndGgg
aXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5
MDA3MTk5MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFycmF5QnVmZmVyXcOCwrssIMOCwqtbb2Jq
ZWN0IEFycmF5QnVmZmVyXcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywg
w4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTczMiwxOCArNzI5LDkgQEAgdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3NsaQogdGVzdC9idWlsdC1pbnMvQXJyYXlJdGVyYXRv
clByb3RvdHlwZS9uZXh0L2RldGFjaC10eXBlZGFycmF5LWluLXByb2dyZXNzLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcg
d2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL0FzeW5jRnVuY3Rpb24vcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXN5
bmNGdW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlz
IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3D
gsK7LCDDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1
aWx0LWlucy9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25d
w4LCuywgw4LCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVu
Y3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBi
ZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQmlnSW50L2NvbnN0cnVjdG9yLWludGVnZXIuanM6CiAg
IGRlZmF1bHQ6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwogICBzdHJpY3QgbW9kZTog
J1JhbmdlRXJyb3I6IE5vdCBzYWZlIGludGVnZXInCi10ZXN0L2J1aWx0LWlucy9Cb29sZWFuL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2ZhbHNl
w4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L2N1c3RvbS1wcm90by1hY2Nlc3MtZGV0YWNoZXMtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJv
d24gYXQgYWxsJwpAQCAtNzUzLDkgKzc0MSw2IEBAIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2Rl
dGFjaGVkLWJ1ZmZlci4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2xlbmd0aC5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgMScKICAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlIDEnCi10
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBEYXRhVmll
d13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IERhdGFW
aWV3XcOCwrssIMOCwqtbb2JqZWN0IERhdGFWaWV3XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1
aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZmZXIuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC04NTgsMTggKzg0Myw2IEBAIHRlc3QvYnVp
bHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRVaW4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L3Byb3RvdHlwZS9zZXRVaW50OC9kZXRhY2hlZC1idWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBh
IFJhbmdlRXJyb3InCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS1v
bmUuanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwot
dGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3D
gsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5z
L0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tv
YmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2Jq
ZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRXJyb3IvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq0Vycm9yw4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXJyb3LDgsK7
LCDDgsKrRXJyb3LDgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vY2Fs
bC1iaW5kLXRoaXMtcmVhbG0tdW5kZWYuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGlt
cGxpY2l0IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgZ2xvYmFsXcOC
wrssIMOCwqtbb2JqZWN0IFVuZGVmaW5lZF3DgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogaW1wbGljaXQgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrW29iamVjdCBnbG9iYWxdw4LCuywgw4LCq1tvYmplY3QgVW5kZWZpbmVkXcOCwrspIHRvIGJl
IHRydWUnCkBAIC04ODgsOSArODYxLDYgQEAgdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJu
YWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0cnVjdC9k
ZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3In
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5jZUVycm9y
IGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3Rv
LWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwogdGVzdC9idWlsdC1pbnMv
RnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvbGVuZ3RoLWV4Y2VlZHMtaW50MzIuanM6CiAgIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3
NDgzNjQ4w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3NDgzNjQ4w4LCuykgdG8gYmUgdHJ1
ZScKQEAgLTEwMzIsMzYgKzEwMDIsOSBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5
cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpbmcvdW5p
Y29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVu
Y3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBc
XHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2
MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgogICBzdHJpY3QgbW9kZTog
IlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rp
b24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsg
fScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAw
MDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1pbnMvR2VuZXJhdG9yRnVuY3Rpb24vcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuywgw4LCq1tvYmpl
Y3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5j
dGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE1hcF3DgsK7
LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBNYXBdw4LCuywgw4LCq1tv
YmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMv
RXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywgw4LCq0V2YWxFcnJvcsOCwrsp
IHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmFuZ2VFcnJvci9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJv
csOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVuY2VFcnJvci9wcm90by1mcm9t
LWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmVmZXJlbmNlRXJyb3LD
gsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtSZWZlcmVuY2VFcnJvcsOCwrsp
IHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3IvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJn
ZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1N5bnRheEVy
cm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3ludGF4RXJyb3LDgsK7KSB0byBi
ZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5cGVFcnJvci9wcm90by1mcm9t
LWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrVHlwZUVycm9yw4LCuywg
w4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9i
dWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrssIMOCwqtVUklFcnJvcsOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1VSSUVycm9yw4LCuywg
w4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051bWJlci9iaWdp
bnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVyc2lvbiBmcm9t
ICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0IG1vZGU6ICJU
eXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBpcyBub3QgYWxs
b3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDD
gsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1
aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2NvbnNpc3RlbnQtdmFs
dWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKrW29iamVjdCBBcmd1bWVudHNdw4LCuykg
dG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3duUHJv
cGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1jYWxsZXIuanM6CkBAIC0xMDc4LDkgKzEw
MjEsNiBAQCB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51CiB0ZXN0L2J1
aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51bWVyYWJsZS1wcm9wLWludmFyaWFudC0y
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQg
bm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMvT2JqZWN0L3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOC
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG90eXBlL3RvU3RyaW5n
L3Byb3h5LWZ1bmN0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBmdW5jdGlvbiBw
cm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2Jq
ZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCkBAIC0xMTIwLDkg
KzEwNjAsNiBAQCB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0aW9uCiB0ZXN0
L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0aW9uLW5vbmNvbnN0cnVjdG9yLmpzOgog
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7
LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqt0cnVlw4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUg
dHJ1ZScKLXRlc3QvYnVpbHQtaW5zL1Byb21pc2UvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3Qg
UHJvbWlzZV3DgsK7LCDDgsKrW29iamVjdCBQcm9taXNlXcOCwrspIHRvIGJlIHRydWUnCi0gIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3Qg
UHJvbWlzZV3DgsK7LCDDgsKrW29iamVjdCBQcm9taXNlXcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0
L2J1aWx0LWlucy9Qcm9taXNlL3JhY2UvaW52b2tlLXJlc29sdmUtZ2V0LWVycm9yLWNsb3NlLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7
LCDDgsKrMcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMcOCwrspIHRvIGJlIHRydWUnCkBAIC0x
NTA0LDkgKzE0NDEsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9u
CiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9ub24tZXhpc3RlbnQtcHJv
cGVydHktdmFsdWUtZ2VuZXJhbC1jYXRlZ29yeS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6IFRo
aXMgc3RhdGVtZW50IHNob3VsZCBub3QgYmUgZXZhbHVhdGVkLicKICAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyOiBUaGlzIHN0YXRlbWVudCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCi10ZXN0L2J1
aWx0LWlucy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86KS/D
gsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUgdHJ1ZScKIHRl
c3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90b3R5cGUvU3ltYm9sLm1hdGNoL2J1aWx0aW4taW5mZXIt
dW5pY29kZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqvDr8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOCwqtu
dWxsw4LCuykgdG8gYmUgdHJ1ZScKQEAgLTE1OTEsMTIgKzE1MjUsNiBAQCB0ZXN0L2J1aWx0LWlu
cy9SZWdFeHAvdW5pY29kZV9yZXN0cmljdGVkCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvdW5pY29k
ZV9yZXN0cmljdGVkX3F1YW50aWZpYWJsZV9hc3NlcnRpb24uanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IFJlZ0V4cCgiKD89LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBSZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3RlZCBh
IFN5bnRheEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsJwotdGVzdC9idWlsdC1pbnMvU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFNldF3D
gsK7LCDDgsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywgw4LC
q1tvYmplY3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykg
dG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1ZcOC
wrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBi
ZSB0cnVlJwpAQCAtMTY2MiwyMSArMTU5MCw5IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3Rv
cnMvYnVmZmVyLWFyZy9sZW5ndGgtdG8tbnVtYmVyLWRldGFjaGJ1ZmZlci5qczoKICAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJy
b3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0
b3JzL2N0b3JzL2J1ZmZlci1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFy
cmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7
KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFy
cmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7
KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2xlbmd0aC1hcmcvcHJvdG8tZnJvbS1jdG9y
LXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0
NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0
NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL25vLWFy
Z3MvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrss
IMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrss
IMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL29iamVjdC1hcmcvbGVuZ3RoLWV4Y2Vzc2l2ZS10aHJvd3MuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0aHJvd24g
YnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRB
cnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSYW5nZUVy
cm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL29iamVjdC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3D
gsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3D
gsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL2RldGFjaGVk
LXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50LXR5cGUuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZmZXIg
RXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRo
cm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZm
ZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2Fz
IHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKQEAgLTE3MDQsOSAr
MTYyMCw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3Ro
ZXItY3Rvci1idWZmZXItY3Rvci1zcGVjaWVzLXByb3RvdHlwZS10aHJvd3MuanM6CiAgIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBi
dXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJF
cnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVz
dGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBG
bG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90
eXBlXcOCwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBG
bG9hdDY0QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90
eXBlXcOCwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvc2Ft
ZS1jdG9yLWJ1ZmZlci1jdG9yLWFjY2Vzcy10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0
aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwpAQCAtMTgwOSwxNSArMTcyMiw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMvb2YvbmV3LWluc3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAnVHlw
ZUVycm9yOiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNs
YXNzIGEgVHlwZWRBcnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4p
JwogICBzdHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMg
dGhpcyBhcmd1bWVudCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rp
bmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrsp
IHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LC
q1tvYmplY3QgV2Vha1JlZl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7KSB0
byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0u
anM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1ZScK
LSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29i
amVjdCBXZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1ZScK
IHRlc3QvaW50bDQwMi9CaWdJbnQvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5nL2RlLURFLmpzOgog
ICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSByYWRpeCBhcmd1bWVudCBtdXN0IGJl
IGJldHdlZW4gMiBhbmQgMzYnCiAgIHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogdG9TdHJpbmco
KSByYWRpeCBhcmd1bWVudCBtdXN0IGJlIGJldHdlZW4gMiBhbmQgMzYnCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1NyBAQAorMjAxOS0xMS0xMSAg
QWxleGV5IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CisKKyAgICAgICAgSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUgc2hvdWxkIHVzZSBuZXdUYXJnZXQn
cyBnbG9iYWxPYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwMjU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIElmICJwcm90b3R5cGUiIGlzIG5vdCBhbiBvYmplY3QsIGJ1aWx0LWluIGNvbnN0cnVj
dG9ycyBzaG91bGQgdXNlIGludHJpbnNpYyBkZWZhdWx0IHByb3RvdHlwZQorICAgICAgICBvZiBO
ZXdUYXJnZXQncyByZWFsbSAoZm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMv
ZWNtYTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvcikuCisgICAgICAgIEJlZm9yZSB0aGlzIGNoYW5n
ZSwgcmVhbG0gb2YgYWN0aXZlIGNvbnN0cnVjdG9yIHdhcyB1c2VkLiBUaGlzIHBhdGNoIGFsaWdu
cyBhbGwgRUNNQS0yNjIKKyAgICAgICAgY29uc3RydWN0b3JzIChleGNlcHQgZm9yIEFycmF5KSB3
aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNwaWRlck1vbmtleS4KKworICAgICAgICAqIHJ1bnRpbWUv
QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0QXN5
bmNGdW5jdGlvbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEFzeW5jR2Vu
ZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVj
dG9yKToKKyAgICAgICAgKiBydW50aW1lL0NvbW1vblNsb3dQYXRocy5jcHA6CisgICAgICAgIChK
U0M6OlNMT1dfUEFUSF9ERUNMKToKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdERhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvRXJy
b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEVycm9yQ29uc3RydWN0
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKToKKyAgICAg
ICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OkpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0b3I8c2hhcmluZ01vZGU+Ojpjb25zdHJ1Y3RB
cnJheUJ1ZmZlcik6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0Nv
bnN0cnVjdG9ySW5saW5lcy5oOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RHZW5lcmljVHlwZWRB
cnJheVZpZXcpOgorICAgICAgICAqIHJ1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpjb25zdHJ1Y3RNYXApOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXJyb3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6Ok5hdGl2ZUVycm9yQ29uc3RydWN0b3I8ZXJyb3JU
eXBlPjo6Y29uc3RydWN0TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGlt
ZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE51bWJlckNv
bnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKEpTQzo6Y29uc3RydWN0T2JqZWN0V2l0aE5ld1RhcmdldCk6CisgICAgICAgICogcnVu
dGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmdldFJlZ0V4cFN0cnVj
dHVyZSk6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFJlZ0V4cCk6CisgICAgICAgIChKU0M6OmVz
U3BlY1JlZ0V4cENyZWF0ZSk6CisgICAgICAgICogcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5o
OgorICAgICAgICAqIHJ1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpj
b25zdHJ1Y3RTZXQpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoU3RyaW5nQ29uc3RydWN0b3IpOgorICAgICAgICAq
IHJ1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
V2Vha01hcCk6CisgICAgICAgICogcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFrUmVmKToKKyAgICAgICAgKiBydW50aW1lL1dl
YWtTZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtTZXQpOgor
CiAyMDE5LTExLTA5ICBUYWRldSBaYWdhbGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgogCiAgICAg
ICAgIFtXZWJBc3NlbWJseV0gSW1wcm92ZSBieXRlY29kZSBkdW1waW5nCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25z
dHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ1
LDcgKzQ1LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogc3Rh
dGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0QXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZy
YW1lKQogewogICAgIEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUpOwotICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3Ms
IEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmMpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBG
dW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpKSk7
CiB9CiAKIEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9y
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rp
b25Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgY2FsbAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0
QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIEFyZ0xpc3QgYXJncyhjYWxsRnJh
bWUpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNH
ZW5lcmF0b3IpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9u
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6
OkFzeW5jR2VuZXJhdG9yLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpKSk7CiB9CiAKIEFzeW5jR2Vu
ZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVj
dG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9u
IDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzLDcgKzQzLDkgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0o
KTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1
ZSBib29sZWFuID0ganNCb29sZWFuKGNhbGxGcmFtZS0+YXJndW1lbnQoMCkudG9Cb29sZWFuKGds
b2JhbE9iamVjdCkpOwotICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPmJvb2xl
YW5PYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5l
d1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmJvb2xlYW5PYmplY3RTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKICAgICBCb29sZWFuT2JqZWN0KiBvYmogPSBCb29sZWFuT2JqZWN0
OjpjcmVhdGUodm0sIGJvb2xlYW5TdHJ1Y3R1cmUpOwogICAgIG9iai0+c2V0SW50ZXJuYWxWYWx1
ZSh2bSwgYm9vbGVhbik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21t
b25TbG93UGF0aHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvbW1vblNsb3dQYXRocy5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNsb3dQYXRocy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI3Myw3ICsyNzMsOCBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfY3JlYXRlX3Byb21pc2Up
CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAgICAgICByZXN1bHQgPSBKU0ludGVybmFs
UHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3RvcigpLCBj
b25zdHJ1Y3RvckFzT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VTdHJ1Y3R1cmUoKSk7Cisg
ICAgICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGNvbnN0cnVjdG9yQXNPYmplY3QtPmds
b2JhbE9iamVjdCh2bSktPnByb21pc2VTdHJ1Y3R1cmUoKTsKKyAgICAgICAgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVjdG9y
QXNPYmplY3QsIGJhc2VTdHJ1Y3R1cmUpOwogICAgICAgICBDSEVDS19FWENFUFRJT04oKTsKICAg
ICAgICAgcmVzdWx0ID0gSlNQcm9taXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgfQpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDMsNyArMTQzLDggQEAg
SlNPYmplY3QqIGNvbnN0cnVjdERhdGUoSlNHbG9iYWxPYmplY3QqIAogICAgICAgICB2YWx1ZSA9
IG1pbGxpc2Vjb25kc0Zyb21Db21wb25lbnRzKGdsb2JhbE9iamVjdCwgYXJncywgV1RGOjpMb2Nh
bFRpbWUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCi0gICAg
U3RydWN0dXJlKiBkYXRlU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVDb25zdHJ1Y3Rvcigp
LCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+ZGF0ZVN0cnVjdHVyZSgpKTsKKyAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0p
LT5kYXRlU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBkYXRlU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPmRhdGVDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCiAgICAgcmV0dXJuIERhdGVJ
bnN0YW5jZTo6Y3JlYXRlKHZtLCBkYXRlU3RydWN0dXJlLCB2YWx1ZSk7CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDkgQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RFcgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+
dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNW
YWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1cmUqIGVy
cm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCksIGdsb2JhbE9iamVjdC0+ZXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJn
ZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVy
ZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmVycm9yU3RydWN0dXJl
KCk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNW
YWx1ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxPYmplY3QsIGVycm9yU3Ry
dWN0dXJlLCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFsc2UpKSk7CiB9CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1MiwxOSAr
MTUyLDIwIEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEUKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCisgICAgSlNHbG9iYWxPYmplY3QqIHN0cnVjdHVy
ZUdsb2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSkgOiBnbG9iYWxPYmplY3Q7CiAgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBudWxs
cHRyOwogICAgIHN3aXRjaCAoZnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlKSB7CiAgICAgY2FzZSBG
dW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkZ1bmN0aW9uOgotICAgICAgICBzdHJ1Y3R1cmUgPSBK
U0Z1bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhwKGdsb2JhbE9iamVjdCwgZnVu
Y3Rpb24pOworICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVG
b3JOZXdGdW5jRXhwKHN0cnVjdHVyZUdsb2JhbE9iamVjdCwgZnVuY3Rpb24pOwogICAgICAgICBi
cmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6R2VuZXJhdG9yOgotICAg
ICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmdlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJl
KCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+Z2VuZXJhdG9y
RnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNv
bnN0cnVjdGlvbk1vZGU6OkFzeW5jOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3Qt
PmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJl
R2xvYmFsT2JqZWN0LT5hc3luY0Z1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwog
ICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvcjoKLSAgICAg
ICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0
dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+YXN5bmNH
ZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICB9CiAKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJh
eUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNzksOSArNzksOSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTR2Vu
ZXJpY0FyCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUg
PSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIEpTR2VuZXJpY0FycmF5QnVmZmVyQ29u
c3RydWN0b3IqIGNvbnN0cnVjdG9yID0ganNDYXN0PEpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3Ry
dWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCi0gICAgU3RydWN0dXJlKiBhcnJheUJ1
ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpLCBjb25zdHJ1Y3Rvci0+Z2xvYmFsT2JqZWN0KCktPmFycmF5QnVmZmVyU3RydWN0dXJlKHNo
YXJpbmdNb2RlKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCkt
Pmdsb2JhbE9iamVjdCh2bSktPmFycmF5QnVmZmVyU3RydWN0dXJlKHNoYXJpbmdNb2RlKTsKKyAg
ICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgeyB9KTsKIAogICAgIHVuc2lnbmVkIGxlbmd0aDsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlw
ZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAkocmV2aXNpb24gMjUyMzEzKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1
Y3RvcklubGluZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjExLDkgKzIxMSw5IEBAIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0R2UKICAgICBWTSYgdm0gPSBnbG9iYWxPYmpl
Y3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0g
ICAgSW50ZXJuYWxGdW5jdGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+
KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0gICAgU3RydWN0dXJlKiBwYXJlbnRTdHJ1Y3R1cmUg
PSBmdW5jdGlvbi0+Z2xvYmFsT2JqZWN0KCktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNz
OjpUeXBlZEFycmF5U3RvcmFnZVR5cGUpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIHBhcmVudFN0cnVjdHVy
ZSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAg
IFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5U3RvcmFn
ZVR5cGUpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBzaXplX3QgYXJnQ291bnQgPSBjYWxsRnJhbWUt
PmFyZ3VtZW50Q291bnQoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01h
cENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NjcsNyArNjcsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAg
ICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFw
U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJn
ZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQp
LT5nbG9iYWxPYmplY3Qodm0pLT5tYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIG1hcFN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAg
ICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU1LDcg
KzU1LDkgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBOYXRpdmVFcnJvcgogICAgIFZN
JiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgw
KTsKLSAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKj4o
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZXJyb3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNl
U3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JT
dHJ1Y3R1cmUoZXJyb3JUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgQVNTRVJUKGVycm9y
U3RydWN0dXJlKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29k
ZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJvclN0cnVjdHVyZSwgbWVz
c2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNp
b24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3Ry
dWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Miw3ICs5Miw5IEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7CiAgICAgZG91YmxlIG4gPSBjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSA/
IGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIoZ2xvYmFsT2JqZWN0KSA6
IDA7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0g
ICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5udW1iZXJPYmplY3RTdHJ1Y3R1cmUoKSk7Cisg
ICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVj
dHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2
bSktPm51bWJlck9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBj
YWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBOdW1iZXJP
YmplY3QqIG9iamVjdCA9IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjcsNyArMTI3LDgg
QEAgc3RhdGljIEFMV0FZU19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVjdAogICAgIC8vIDEuIElm
IE5ld1RhcmdldCBpcyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFjdGl2ZSBmdW5jdGlvbiwg
dGhlbgogICAgIGlmIChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9iamVjdENvbnN0cnVjdG9y
KSB7CiAgICAgICAgIC8vIGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9y
KE5ld1RhcmdldCwgIiVPYmplY3RQcm90b3R5cGUlIikuCi0gICAgICAgIFN0cnVjdHVyZSogb2Jq
ZWN0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3Qt
Pm9iamVjdFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOworICAgICAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0p
LT5vYmplY3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpOworICAgICAgICBTdHJ1Y3R1
cmUqIG9iamVjdFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5ld1RhcmdldCwgYmFzZVN0
cnVjdHVyZSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwog
ICAgICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3Qodm0sIG9iamVjdFN0cnVjdHVyZSk7
CiAgICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3Ry
dWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Jl
Z0V4cENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
NzIsMTAgKzE3Miw5IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoSlNHbG8K
IAogaW5saW5lIFN0cnVjdHVyZSogZ2V0UmVnRXhwU3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0KQogewotICAgIFN0cnVjdHVyZSogc3RydWN0
dXJlID0gZ2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFyZ2V0
ICE9IGpzVW5kZWZpbmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdF
eHBDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZSk7Ci0gICAgcmV0dXJuIHN0cnVj
dHVyZTsKKyAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgSlNHbG9iYWxPYmpl
Y3QqIHN0cnVjdHVyZUdsb2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1Rhcmdl
dCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9iYWxPYmplY3Q7CisgICAgcmV0dXJuIEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2Jq
ZWN0LT5yZWdFeHBDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZUdsb2JhbE9iamVj
dC0+cmVnRXhwU3RydWN0dXJlKCkpOwogfQogCiBpbmxpbmUgT3B0aW9uU2V0PFlhcnI6OkZsYWdz
PiB0b0ZsYWdzKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgZmxhZ3MpCkBA
IC0yMjksNyArMjI4LDcgQEAgSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVj
dAogICAgIGJvb2wgY29uc3RydWN0QXNSZWdleHAgPSBpc1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0
LCBwYXR0ZXJuQXJnKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsK
IAotICAgIGlmIChuZXdUYXJnZXQuaXNVbmRlZmluZWQoKSAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAm
JiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CisgICAgaWYgKCFuZXdUYXJnZXQgJiYgY29uc3Ry
dWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU1ZhbHVl
IGNvbnN0cnVjdG9yID0gcGF0dGVybkFyZy5nZXQoZ2xvYmFsT2JqZWN0LCB2bS5wcm9wZXJ0eU5h
bWVzLT5jb25zdHJ1Y3Rvcik7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51
bGxwdHIpOwogICAgICAgICBpZiAoY2FsbGVlID09IGNvbnN0cnVjdG9yKSB7CkBAIC0yNzQsNyAr
MjczLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1NwZWNSZWdFeAogewogICAg
IEpTVmFsdWUgcGF0dGVybkFyZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1
ZSBmbGFnc0FyZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZShyZWdFeHBDcmVhdGUoZ2xvYmFsT2JqZWN0LCBqc1VuZGVmaW5lZCgpLCBwYXR0ZXJu
QXJnLCBmbGFnc0FyZykpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3JlYXRl
KGdsb2JhbE9iamVjdCwgSlNWYWx1ZSgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOwogfQogCiBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY0lzUmVnRXhwKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAy
NTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rv
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC01OCw3ICs1OCw3IEBAIHByaXZhdGU6CiAKIHN0YXRpY19h
c3NlcnQoc2l6ZW9mKFJlZ0V4cENvbnN0cnVjdG9yKSA9PSBzaXplb2YoSW50ZXJuYWxGdW5jdGlv
biksICIiKTsKIAotSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCosIGNv
bnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJn
ZXQgPSBqc1VuZGVmaW5lZCgpKTsKK0pTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxP
YmplY3QqLCBjb25zdCBBcmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9IG51bGxwdHIsIEpTVmFs
dWUgbmV3VGFyZ2V0ID0gSlNWYWx1ZSgpKTsKIAogQUxXQVlTX0lOTElORSBib29sIGlzUmVnRXhw
KFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKIHsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rv
ci5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsOSBAQCBzdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFs
T2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
IAotICAgIFN0cnVjdHVyZSogc2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+c2V0U3RydWN0dXJlKCkpOworICAg
IEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0p
LT5zZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJs
ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE0NCw3ICsxNDQsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSog
c3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCks
IGdsb2JhbE9iamVjdC0+c3RyaW5nT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1
Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmpl
Y3RTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3Vt
ZW50Q291bnQoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNjUsNyArNjUsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBj
b25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBE
RUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha01hcFN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxP
YmplY3QtPndlYWtNYXBTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxs
RnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2Jq
ZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtNYXBTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dlYWtNYXAqIHdlYWtNYXAgPSBKU1dlYWtNYXA6OmNy
ZWF0ZSh2bSwgd2Vha01hcFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxG
cmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1
MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY4LDcgKzY4LDkgQEAgc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVu
dCgwKS5pc09iamVjdCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiRmlyc3QgYXJndW1lbnQgdG8gV2Vha1JlZiBzaG91bGQgYmUgYW4gb2Jq
ZWN0Il9zKTsKIAotICAgIFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndl
YWtPYmplY3RSZWZTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJh
bWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0
KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtPYmplY3RSZWZTdHJ1Y3R1cmUoKTsK
KyAgICBTdHJ1Y3R1cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUs
IEpTVmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwgV2Vha09iamVjdFJl
ZlN0cnVjdHVyZSwgY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS5nZXRPYmplY3QoKSkp
KTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vh
a1NldENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NjUsNyArNjUsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAg
ICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3Qt
PndlYWtTZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5l
d1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtTZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1
Y3R1cmUqIHdlYWtTZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0
LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVk
SlNWYWx1ZSgpKTsKICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2
bSwgd2Vha1NldFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+
YXJndW1lbnQoMCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383268</attachid>
            <date>2019-11-11 07:20:10 -0800</date>
            <delta_ts>2020-01-10 16:35:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20191111172008.patch</filename>
            <type>text/plain</type>
            <size>42486</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIzMjEpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTExICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDYyIHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAxOS0xMS0wOCAgR3Vp
bGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxpYS5jb20+CiAKICAgICAgICAgVGVtcG9yYXJp
bHkgc2tpcCBhbm90aGVyIGJyb2tlbiB0ZXN0IG9uIE1JUFMgZHVlIHRvIE9TUiBleGl0IHRvIExM
SW50CkluZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNTIzMTMpCisr
KyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTY5
OSw5ICs2OTksNiBAQCB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvc3BsaWNlL3RoCiB0
ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvdW5zaGlmdC9jbGFtcHMtdG8taW50ZWdlci1s
aW1pdC5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogTGVuZ3RoIGlzIDIqKjUzIC0gMSBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCqzQyOTQ5NjcyOTXDgsK7LCDDgsKrOTAwNzE5OTI1NDc0MDk5
McOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBMZW5ndGgg
aXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrNDI5NDk2NzI5NcOCwrssIMOCwqs5
MDA3MTk5MjU0NzQwOTkxw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFycmF5QnVmZmVyXcOCwrssIMOCwqtbb2Jq
ZWN0IEFycmF5QnVmZmVyXcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuywg
w4LCq1tvYmplY3QgQXJyYXlCdWZmZXJdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTczMiwxOCArNzI5LDkgQEAgdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3NsaQogdGVzdC9idWlsdC1pbnMvQXJyYXlJdGVyYXRv
clByb3RvdHlwZS9uZXh0L2RldGFjaC10eXBlZGFycmF5LWluLXByb2dyZXNzLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcg
d2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL0FzeW5jRnVuY3Rpb24vcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXN5
bmNGdW5jdGlvbl3DgsK7LCDDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlz
IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3D
gsK7LCDDgsKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1
aWx0LWlucy9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25d
w4LCuywgw4LCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVu
Y3Rpb25dw4LCuywgw4LCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBi
ZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQmlnSW50L2NvbnN0cnVjdG9yLWludGVnZXIuanM6CiAg
IGRlZmF1bHQ6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwogICBzdHJpY3QgbW9kZTog
J1JhbmdlRXJyb3I6IE5vdCBzYWZlIGludGVnZXInCi10ZXN0L2J1aWx0LWlucy9Cb29sZWFuL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtmYWxzZcOCwrssIMOCwqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq2ZhbHNl
w4LCuywgw4LCq2ZhbHNlw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L2N1c3RvbS1wcm90by1hY2Nlc3MtZGV0YWNoZXMtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJv
d24gYXQgYWxsJwpAQCAtNzUzLDkgKzc0MSw2IEBAIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2Rl
dGFjaGVkLWJ1ZmZlci4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2xlbmd0aC5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgMScKICAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlIDEnCi10
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBEYXRhVmll
d13DgsK7LCDDgsKrW29iamVjdCBEYXRhVmlld13DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IERhdGFW
aWV3XcOCwrssIMOCwqtbb2JqZWN0IERhdGFWaWV3XcOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1
aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZmZXIuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRo
cm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC04NTgsMTggKzg0Myw2IEBAIHRlc3QvYnVp
bHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRVaW4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L3Byb3RvdHlwZS9zZXRVaW50OC9kZXRhY2hlZC1idWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBh
IFJhbmdlRXJyb3InCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS1v
bmUuanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKr
W29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwot
dGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3D
gsK7LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5z
L0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tv
YmplY3QgT2JqZWN0XcOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2Jq
ZWN0IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRXJyb3IvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUow4LCq0Vycm9yw4LCuywgw4LCq0Vycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXJyb3LDgsK7
LCDDgsKrRXJyb3LDgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vY2Fs
bC1iaW5kLXRoaXMtcmVhbG0tdW5kZWYuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGlt
cGxpY2l0IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgZ2xvYmFsXcOC
wrssIMOCwqtbb2JqZWN0IFVuZGVmaW5lZF3DgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogaW1wbGljaXQgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjD
gsKrW29iamVjdCBnbG9iYWxdw4LCuywgw4LCq1tvYmplY3QgVW5kZWZpbmVkXcOCwrspIHRvIGJl
IHRydWUnCkBAIC04ODgsOSArODYxLDYgQEAgdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJu
YWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0cnVjdC9k
ZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3In
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5jZUVycm9y
IGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3Rv
LWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtmdW5jdGlvbiAoKSB7JwogdGVzdC9idWlsdC1pbnMv
RnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvbGVuZ3RoLWV4Y2VlZHMtaW50MzIuanM6CiAgIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3
NDgzNjQ4w4LCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjDgsKrMMOCwrssIMOCwqsyMTQ3NDgzNjQ4w4LCuykgdG8gYmUgdHJ1
ZScKQEAgLTEwMzIsMzYgKzEwMDIsOSBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5
cGUvdG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpbmcvdW5p
Y29kZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVu
Y3Rpb24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBc
XHV7MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2
MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgogICBzdHJpY3QgbW9kZTog
IlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rp
b24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsg
fScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAw
MDYzfTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1pbnMvR2VuZXJhdG9yRnVuY3Rpb24vcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuywgw4LCq1tvYmpl
Y3QgR2VuZXJhdG9yRnVuY3Rpb25dw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5j
dGlvbl3DgsK7LCDDgsKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3DgsK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvTWFwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE1hcF3DgsK7
LCDDgsKrW29iamVjdCBNYXBdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBNYXBdw4LCuywgw4LCq1tv
YmplY3QgTWFwXcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMv
RXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVl
KMOCwqtFdmFsRXJyb3LDgsK7LCDDgsKrRXZhbEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrRXZhbEVycm9yw4LCuywgw4LCq0V2YWxFcnJvcsOCwrsp
IHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmFuZ2VFcnJvci9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmFuZ2VFcnJv
csOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjDgsKrUmFuZ2VFcnJvcsOCwrssIMOCwqtSYW5nZUVycm9yw4LCuykgdG8gYmUgdHJ1
ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVuY2VFcnJvci9wcm90by1mcm9t
LWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrUmVmZXJlbmNlRXJyb3LD
gsK7LCDDgsKrUmVmZXJlbmNlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQg
U2FtZVZhbHVlKMOCwqtSZWZlcmVuY2VFcnJvcsOCwrssIMOCwqtSZWZlcmVuY2VFcnJvcsOCwrsp
IHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3IvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJn
ZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1N5bnRheEVy
cm9yw4LCuywgw4LCq1N5bnRheEVycm9yw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrU3ludGF4RXJyb3LDgsK7LCDDgsKrU3ludGF4RXJyb3LDgsK7KSB0byBi
ZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5cGVFcnJvci9wcm90by1mcm9t
LWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrVHlwZUVycm9yw4LCuywg
w4LCq1R5cGVFcnJvcsOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1R5cGVFcnJvcsOCwrssIMOCwqtUeXBlRXJyb3LDgsK7KSB0byBiZSB0cnVlJwotdGVzdC9i
dWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtVUklFcnJvcsOCwrssIMOCwqtVUklFcnJvcsOCwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1VSSUVycm9yw4LCuywg
w4LCq1VSSUVycm9yw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051bWJlci9iaWdp
bnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVyc2lvbiBmcm9t
ICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0IG1vZGU6ICJU
eXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBpcyBub3QgYWxs
b3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDD
gsKrMMOCwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCqzDDgsK7LCDDgsKrMMOCwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1
aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2NvbnNpc3RlbnQtdmFs
dWUtZnVuY3Rpb24tYXJndW1lbnRzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7LCDDgsKrW29iamVjdCBBcmd1bWVudHNdw4LCuykg
dG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3duUHJv
cGVydHkvY29uc2lzdGVudC12YWx1ZS1mdW5jdGlvbi1jYWxsZXIuanM6CkBAIC0xMDc4LDkgKzEw
MjEsNiBAQCB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51CiB0ZXN0L2J1
aWx0LWlucy9PYmplY3Qva2V5cy9wcm94eS1ub24tZW51bWVyYWJsZS1wcm9wLWludmFyaWFudC0y
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBi
ZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQg
bm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1pbnMvT2JqZWN0L3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IE9iamVjdF3DgsK7LCDDgsKrW29iamVjdCBPYmplY3Rd
w4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjDgsKrW29iamVjdCBPYmplY3Rdw4LCuywgw4LCq1tvYmplY3QgT2JqZWN0XcOC
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG90eXBlL3RvU3RyaW5n
L3Byb3h5LWZ1bmN0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBmdW5jdGlvbiBw
cm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0XcOCwrssIMOCwqtbb2Jq
ZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgT2JqZWN0
XcOCwrssIMOCwqtbb2JqZWN0IEZ1bmN0aW9uXcOCwrspIHRvIGJlIHRydWUnCkBAIC0xNTA0LDkg
KzE0NDQsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9uCiB0ZXN0
L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9ub24tZXhpc3RlbnQtcHJvcGVydHkt
dmFsdWUtZ2VuZXJhbC1jYXRlZ29yeS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6IFRoaXMgc3Rh
dGVtZW50IHNob3VsZCBub3QgYmUgZXZhbHVhdGVkLicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
OiBUaGlzIHN0YXRlbWVudCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCi10ZXN0L2J1aWx0LWlu
cy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqy8oPzopL8OCwrssIMOCwqsvKD86KS/DgsK7KSB0
byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMOCwqsvKD86KS/DgsK7LCDDgsKrLyg/Oikvw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVp
bHQtaW5zL1JlZ0V4cC9wcm90b3R5cGUvU3ltYm9sLm1hdGNoL2J1aWx0aW4taW5mZXItdW5pY29k
ZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvD
r8K/wr3DgsK7LCDDgsKrbnVsbMOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq8Ovwr/CvcOCwrssIMOCwqtudWxsw4LC
uykgdG8gYmUgdHJ1ZScKQEAgLTE1OTEsMTIgKzE1MjgsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdF
eHAvdW5pY29kZV9yZXN0cmljdGVkCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvdW5pY29kZV9yZXN0
cmljdGVkX3F1YW50aWZpYWJsZV9hc3NlcnRpb24uanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IFJlZ0V4cCgiKD89LikqIiwgInUiKTogIEV4cGVjdGVkIGEgU3ludGF4RXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBSZWdFeHAoIig/PS4pKiIsICJ1Iik6ICBFeHBlY3RlZCBhIFN5bnRh
eEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwot
dGVzdC9idWlsdC1pbnMvU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFNldF3DgsK7LCDD
gsKrW29iamVjdCBTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBTZXRdw4LCuywgw4LCq1tvYmpl
Y3QgU2V0XcOCwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUow4LCq8OCwrssIMOCwqvDgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqvDgsK7LCDDgsKrw4LCuykgdG8gYmUg
dHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrdHJ1ZcOCwrssIMOC
wqtmYWxzZcOCwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUow4LCq3RydWXDgsK7LCDDgsKrZmFsc2XDgsK7KSB0byBiZSB0cnVl
JwpAQCAtMTY2MiwyMSArMTU5Myw5IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvYnVm
ZmVyLWFyZy9sZW5ndGgtdG8tbnVtYmVyLWRldGFjaGJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3IgKFRl
c3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5nIHdpdGgg
RmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0
b3JzL2J1ZmZlci1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBi
ZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBi
ZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2xlbmd0aC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tv
YmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
Ci10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL25vLWFyZ3MvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtb
b2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOCwrssIMOCwqtb
b2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2N0b3JzL29iamVjdC1hcmcvbGVuZ3RoLWV4Y2Vzc2l2ZS10aHJvd3MuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4p
JwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSYW5nZUVycm9yIHRv
IGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2N0b3JzL29iamVjdC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcOCwrssIMOCwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3DgsK7KSB0
byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL2RldGFjaGVkLXdoZW4t
c3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50LXR5cGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZmZXIgRXhwZWN0
ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBh
dCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZmZXIgRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93
biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKQEAgLTE3MDQsOSArMTYyMyw2
IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3RoZXItY3Rv
ci1idWZmZXItY3Rvci1zcGVjaWVzLXByb3RvdHlwZS10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3
aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9jdG9ycy90eXBlZGFycmF5LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBGbG9hdDY0
QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOC
wrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBGbG9hdDY0
QXJyYXlQcm90b3R5cGVdw4LCuywgw4LCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcOC
wrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvc2FtZS1jdG9y
LWJ1ZmZlci1jdG9yLWFjY2Vzcy10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdh
cyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24g
YnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRB
cnJheS4pJwpAQCAtMTgwOSwxNSArMTcyNSw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvb2YKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvb2Yv
bmV3LWluc3RhbmNlLXVzaW5nLWN1c3RvbS1jdG9yLmpzOgogICBkZWZhdWx0OiAnVHlwZUVycm9y
OiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEg
VHlwZWRBcnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBz
dHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBh
cmd1bWVudCB0byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0
aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1dlYWtNYXAvcHJvdG8tZnJvbS1jdG9y
LXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJl
IHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
w4LCq1tvYmplY3QgV2Vha01hcF3DgsK7LCDDgsKrW29iamVjdCBXZWFrTWFwXcOCwrspIHRvIGJl
IHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tvYmpl
Y3QgV2Vha1JlZl3DgsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMOC
wqtbb2JqZWN0IFdlYWtSZWZdw4LCuywgw4LCq1tvYmplY3QgV2Vha1JlZl3DgsK7KSB0byBiZSB0
cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBX
ZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrW29iamVjdCBX
ZWFrU2V0XcOCwrssIMOCwqtbb2JqZWN0IFdlYWtTZXRdw4LCuykgdG8gYmUgdHJ1ZScKIHRlc3Qv
aW50bDQwMi9CaWdJbnQvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5nL2RlLURFLmpzOgogICBkZWZh
dWx0OiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSByYWRpeCBhcmd1bWVudCBtdXN0IGJlIGJldHdl
ZW4gMiBhbmQgMzYnCiAgIHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogdG9TdHJpbmcoKSByYWRp
eCBhcmd1bWVudCBtdXN0IGJlIGJldHdlZW4gMiBhbmQgMzYnCkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1NSBAQAorMjAxOS0xMS0xMSAgQWxleGV5
IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CisKKyAgICAgICAgSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUgc2hvdWxkIHVzZSBuZXdUYXJnZXQncyBnbG9i
YWxPYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwMjU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IElmICJwcm90b3R5cGUiIGlzIG5vdCBhbiBvYmplY3QsIGJ1aWx0LWluIGNvbnN0cnVjdG9ycyBz
aG91bGQgdXNlIGludHJpbnNpYyBkZWZhdWx0IHByb3RvdHlwZQorICAgICAgICBvZiBOZXdUYXJn
ZXQncyByZWFsbSAoZm9yIGV4YW1wbGUsIHN0ZXAgMiBvZiBodHRwczovL3RjMzkuZXMvZWNtYTI2
Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvcikuCisgICAgICAgIEJlZm9yZSB0aGlzIGNoYW5nZSwgcmVh
bG0gb2YgYWN0aXZlIGNvbnN0cnVjdG9yIHdhcyB1c2VkLiBUaGlzIHBhdGNoIGFsaWducyBhbGwg
RUNNQS0yNjIKKyAgICAgICAgY29uc3RydWN0b3JzIChleGNlcHQgZm9yIEFycmF5IGFuZCBQcm9t
aXNlKSB3aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNwaWRlck1vbmtleS4KKworICAgICAgICAqIHJ1
bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3Ry
dWN0QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0FzeW5jR2Vu
ZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEFz
eW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Cb29s
ZWFuQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoQm9vbGVhbkNv
bnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdERhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25zdHJ1
Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOgorICAg
ICAgICAqIHJ1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNv
bnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKToKKyAgICAgICAgKiBydW50
aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTR2VuZXJp
Y0FycmF5QnVmZmVyQ29uc3RydWN0b3I8c2hhcmluZ01vZGU+Ojpjb25zdHJ1Y3RBcnJheUJ1ZmZl
cik6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9y
SW5saW5lcy5oOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RHZW5lcmljVHlwZWRBcnJheVZpZXcp
OgorICAgICAgICAqIHJ1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpj
b25zdHJ1Y3RNYXApOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6Ok5hdGl2ZUVycm9yQ29uc3RydWN0b3I8ZXJyb3JUeXBlPjo6Y29u
c3RydWN0TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9OdW1iZXJD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE51bWJlckNvbnN0cnVjdG9y
KToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpT
Qzo6Y29uc3RydWN0T2JqZWN0V2l0aE5ld1RhcmdldCk6CisgICAgICAgICogcnVudGltZS9SZWdF
eHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmdldFJlZ0V4cFN0cnVjdHVyZSk6Cisg
ICAgICAgIChKU0M6OmNvbnN0cnVjdFJlZ0V4cCk6CisgICAgICAgIChKU0M6OmVzU3BlY1JlZ0V4
cENyZWF0ZSk6CisgICAgICAgICogcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oOgorICAgICAg
ICAqIHJ1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RT
ZXQpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXaXRoU3RyaW5nQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUv
V2Vha01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha01hcCk6
CisgICAgICAgICogcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpjb25zdHJ1Y3RXZWFrUmVmKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtTZXRDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtTZXQpOgorCiAyMDE5LTEx
LTA5ICBUYWRldSBaYWdhbGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgogCiAgICAgICAgIFtXZWJB
c3NlbWJseV0gSW1wcm92ZSBieXRlY29kZSBkdW1waW5nCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5j
cHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fz
eW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDcgKzQ1LDcg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9y
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewog
ICAgIEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
Y29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9u
Q29uc3RydWN0aW9uTW9kZTo6QXN5bmMpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNv
bnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNv
bnN0cnVjdGlvbk1vZGU6OkFzeW5jLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpKSk7CiB9CiAKIEFz
eW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1
Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTQ1LDcgKzQ1LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2Fs
bAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0QXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUpOwotICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBj
YWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3Ip
KTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9i
amVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2Vu
ZXJhdG9yLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpKSk7CiB9CiAKIEFzeW5jR2VuZXJhdG9yRnVu
Y3Rpb25Db25zdHJ1Y3Rvcjo6QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2
bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjMxMykK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTQzLDcgKzQzLDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBh
dXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBib29sZWFu
ID0ganNCb29sZWFuKGNhbGxGcmFtZS0+YXJndW1lbnQoMCkudG9Cb29sZWFuKGdsb2JhbE9iamVj
dCkpOwotICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPmJvb2xlYW5PYmplY3RT
dHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCkt
Pmdsb2JhbE9iamVjdCh2bSktPmJvb2xlYW5PYmplY3RTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1
cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBi
YXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNW
YWx1ZSgpKTsKICAgICBCb29sZWFuT2JqZWN0KiBvYmogPSBCb29sZWFuT2JqZWN0OjpjcmVhdGUo
dm0sIGJvb2xlYW5TdHJ1Y3R1cmUpOwogICAgIG9iai0+c2V0SW50ZXJuYWxWYWx1ZSh2bSwgYm9v
bGVhbik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVD
b25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0Myw3ICsx
NDMsOCBAQCBKU09iamVjdCogY29uc3RydWN0RGF0ZShKU0dsb2JhbE9iamVjdCogCiAgICAgICAg
IHZhbHVlID0gbWlsbGlzZWNvbmRzRnJvbUNvbXBvbmVudHMoZ2xvYmFsT2JqZWN0LCBhcmdzLCBX
VEY6OkxvY2FsVGltZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7
CiAKLSAgICBTdHJ1Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0
cnVjdG9yKCksIG5ld1RhcmdldCwgZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCkpOworICAg
IFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSktPmRhdGVTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVy
ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICByZXR1
cm4gRGF0ZUluc3RhbmNlOjpjcmVhdGUodm0sIGRhdGVTdHJ1Y3R1cmUsIHZhbHVlKTsKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsOSBAQCBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEVyCiAgICAgVk0mIHZtID0gZ2xvYmFs
T2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
ICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIFN0cnVj
dHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5u
ZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5lcnJvclN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNl
U3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JT
dHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNj
b3BlLCBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwg
ZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsK
IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0
aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTUyLDE5ICsxNTIsMjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFs
RQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2JhbE9iamVjdCog
c3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGUpIHsKICAg
ICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAgICAgIHN0cnVj
dHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoZ2xvYmFsT2Jq
ZWN0LCBmdW5jdGlvbik7CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0
cnVjdHVyZUZvck5ld0Z1bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CiAg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpHZW5lcmF0
b3I6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25T
dHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5n
ZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1
bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2Jh
bE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBz
dHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAg
YnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9y
OgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yRnVuY3Rp
b25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0
LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAg
IH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC03OSw5ICs3OSw5IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgSlNHZW5lcmljQXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHZW5lcmljQXJyYXlC
dWZmZXJDb25zdHJ1Y3RvciogY29uc3RydWN0b3IgPSBqc0Nhc3Q8SlNHZW5lcmljQXJyYXlCdWZm
ZXJDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1cmUq
IGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKS0+YXJyYXlCdWZmZXJTdHJ1
Y3R1cmUoc2hhcmluZ01vZGUpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3
VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01v
ZGUpOworICAgIFN0cnVjdHVyZSogYXJyYXlCdWZmZXJTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCB7IH0pOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcklu
bGluZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTIzMTMp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmll
d0NvbnN0cnVjdG9ySW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDkgQEAg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKLSAgICBJbnRlcm5hbEZ1bmN0aW9uKiBmdW5jdGlvbiA9IGpzQ2FzdDxJbnRlcm5hbEZ1
bmN0aW9uKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsKLSAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0
cnVjdHVyZSA9IGZ1bmN0aW9uLT5nbG9iYWxPYmplY3QoKS0+dHlwZWRBcnJheVN0cnVjdHVyZShW
aWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgcGFyZW50
U3RydWN0dXJlKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJy
YXlTdG9yYWdlVHlwZSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIHNpemVfdCBhcmdDb3VudCA9IGNh
bGxGcmFtZS0+YXJndW1lbnRDb3VudCgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC02Nyw3ICs2Nyw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiBtYXBTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2Jq
ZWN0LT5tYXBTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5l
d1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm1hcFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVy
ZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0
cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUo
KSk7CiAKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVy
cm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNTUsNyArNTUsOSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIE5hdGl2ZUVycm9y
CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFy
Z3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwganNDYXN0PE5hdGl2ZUVycm9yQ29uc3Ry
dWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpLT5lcnJvclN0cnVjdHVyZSh2bSkpOworICAg
IEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0p
LT5lcnJvclN0cnVjdHVyZShlcnJvclR5cGUpOworICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1
cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBBU1NF
UlQoZXJyb3JTdHJ1Y3R1cmUpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1
ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxPYmplY3QsIGVycm9yU3RydWN0
dXJlLCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFsc2UpKSk7CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3Bw
CShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1i
ZXJDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkyLDcgKzkyLDkgQEAgc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBkb3VibGUgbiA9IGNhbGxGcmFtZS0+YXJndW1lbnRD
b3VudCgpID8gY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS50b051bWJlcihnbG9iYWxP
YmplY3QpIDogMDsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1
ZSgpKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBj
YWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPm51bWJlck9iamVjdFN0cnVjdHVy
ZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7Cisg
ICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFs
T2JqZWN0KHZtKS0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAg
IE51bWJlck9iamVjdCogb2JqZWN0ID0gTnVtYmVyT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVy
ZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0
Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNyw3
ICsxMjcsOCBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVjdCogY29uc3RydWN0CiAgICAg
Ly8gMS4gSWYgTmV3VGFyZ2V0IGlzIG5laXRoZXIgdW5kZWZpbmVkIG5vciB0aGUgYWN0aXZlIGZ1
bmN0aW9uLCB0aGVuCiAgICAgaWYgKG5ld1RhcmdldCAmJiBuZXdUYXJnZXQgIT0gb2JqZWN0Q29u
c3RydWN0b3IpIHsKICAgICAgICAgLy8gYS4gUmV0dXJuID8gT3JkaW5hcnlDcmVhdGVGcm9tQ29u
c3RydWN0b3IoTmV3VGFyZ2V0LCAiJU9iamVjdFByb3RvdHlwZSUiKS4KLSAgICAgICAgU3RydWN0
dXJlKiBvYmplY3RTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIG9iamVjdENvbnN0cnVjdG9yLCBuZXdUYXJnZXQsIGdsb2Jh
bE9iamVjdC0+b2JqZWN0U3RydWN0dXJlRm9yT2JqZWN0Q29uc3RydWN0b3IoKSk7CisgICAgICAg
IFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSktPm9iamVjdFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCk7CisgICAgICAg
IFN0cnVjdHVyZSogb2JqZWN0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0
LCBiYXNlU3RydWN0dXJlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVs
bHB0cik7CiAgICAgICAgIHJldHVybiBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgb2JqZWN0U3Ry
dWN0dXJlKTsKICAgICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE3MiwxMCArMTcyLDkgQEAgYm9vbCBzZXRSZWdFeHBDb25zdHJ1Y3Rvck11bHRpbGlu
ZShKU0dsbwogCiBpbmxpbmUgU3RydWN0dXJlKiBnZXRSZWdFeHBTdHJ1Y3R1cmUoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBuZXdUYXJnZXQpCiB7Ci0gICAgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpOwotICAgIGlmIChu
ZXdUYXJnZXQgIT0ganNVbmRlZmluZWQoKSkKLSAgICAgICAgc3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmpl
Y3QtPnJlZ0V4cENvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgc3RydWN0dXJlKTsKLSAgICByZXR1
cm4gc3RydWN0dXJlOworICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAgICBKU0ds
b2JhbE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3Qo
bmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKKyAgICByZXR1cm4g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBn
bG9iYWxPYmplY3QtPnJlZ0V4cENvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgc3RydWN0dXJlR2xv
YmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKSk7CiB9CiAKIGlubGluZSBPcHRpb25TZXQ8WWFy
cjo6RmxhZ3M+IHRvRmxhZ3MoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBm
bGFncykKQEAgLTIyOSw3ICsyMjgsNyBAQCBKU09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xv
YmFsT2JqZWN0CiAgICAgYm9vbCBjb25zdHJ1Y3RBc1JlZ2V4cCA9IGlzUmVnRXhwKHZtLCBnbG9i
YWxPYmplY3QsIHBhdHRlcm5BcmcpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51
bGxwdHIpOwogCi0gICAgaWYgKG5ld1RhcmdldC5pc1VuZGVmaW5lZCgpICYmIGNvbnN0cnVjdEFz
UmVnZXhwICYmIGZsYWdzQXJnLmlzVW5kZWZpbmVkKCkpIHsKKyAgICBpZiAoIW5ld1RhcmdldCAm
JiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgpKSB7CiAgICAgICAg
IEpTVmFsdWUgY29uc3RydWN0b3IgPSBwYXR0ZXJuQXJnLmdldChnbG9iYWxPYmplY3QsIHZtLnBy
b3BlcnR5TmFtZXMtPmNvbnN0cnVjdG9yKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgbnVsbHB0cik7CiAgICAgICAgIGlmIChjYWxsZWUgPT0gY29uc3RydWN0b3IpIHsKQEAg
LTI3NCw3ICsyNzMsNyBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY1JlZ0V4
CiB7CiAgICAgSlNWYWx1ZSBwYXR0ZXJuQXJnID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAg
ICBKU1ZhbHVlIGZsYWdzQXJnID0gY2FsbEZyYW1lLT5hcmd1bWVudCgxKTsKLSAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4cENyZWF0ZShnbG9iYWxPYmplY3QsIGpzVW5kZWZpbmVkKCks
IHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdF
eHBDcmVhdGUoZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlKCksIHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7
CiB9CiAKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXNTcGVjSXNSZWdFeHAoSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHJl
dmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENv
bnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU4LDcgKzU4LDcgQEAgcHJpdmF0ZToKIAog
c3RhdGljX2Fzc2VydChzaXplb2YoUmVnRXhwQ29uc3RydWN0b3IpID09IHNpemVvZihJbnRlcm5h
bEZ1bmN0aW9uKSwgIiIpOwogCi1KU09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2Jq
ZWN0KiwgY29uc3QgQXJnTGlzdCYsIEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVl
IG5ld1RhcmdldCA9IGpzVW5kZWZpbmVkKCkpOworSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChK
U0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0
ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBKU1ZhbHVlKCkpOwogCiBBTFdBWVNfSU5MSU5FIGJvb2wg
aXNSZWdFeHAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZh
bHVlKQogewpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nyw5
IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0g
PSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogCi0gICAgU3RydWN0dXJlKiBzZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUo
KSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAg
IFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSktPnNldFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc2V0U3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBj
YWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBKU1ZhbHVl
IGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9u
IDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ0LDcgKzE0NCw5IEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZt
KCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNW
YWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIFN0cnVjdHVyZSog
YmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPnN0
cmluZ09iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBpZiAoIWNhbGxGcmFt
ZS0+YXJndW1lbnRDb3VudCgpKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha01hcENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC02NSw3ICs2NSw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBz
Y29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrTWFw
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCks
IGdsb2JhbE9iamVjdC0+d2Vha01hcFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJl
ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha01hcFN0cnVjdHVy
ZSgpOworICAgIFN0cnVjdHVyZSogd2Vha01hcFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEpTV2Vha01hcCogd2Vha01hcCA9IEpTV2Vh
a01hcDo6Y3JlYXRlKHZtLCB3ZWFrTWFwU3RydWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxl
ID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVj
dFJlZkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjgsNyArNjgsOSBAQCBzdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgaWYgKCFjYWxsRnJhbWUt
PmFyZ3VtZW50KDApLmlzT2JqZWN0KCkpCiAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9y
KGdsb2JhbE9iamVjdCwgc2NvcGUsICJGaXJzdCBhcmd1bWVudCB0byBXZWFrUmVmIHNob3VsZCBi
ZSBhbiBvYmplY3QiX3MpOwogCi0gICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9i
amVjdC0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0g
YXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha09iamVjdFJlZlN0cnVj
dHVyZSgpOworICAgIFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEpTV2Vha09iamVjdFJlZjo6Y3JlYXRlKHZtLCBXZWFr
T2JqZWN0UmVmU3RydWN0dXJlLCBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApLmdldE9i
amVjdCgpKSkpOwogfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1Nl
dENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC02NSw3ICs2NSw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2Jh
bE9iamVjdC0+d2Vha1NldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vha1NldFN0cnVjdHVyZSgpOwor
ICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBu
ZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEpTV2Vha1NldCogd2Vha1NldCA9IEpTV2Vha1NldDo6
Y3JlYXRlKHZtLCB3ZWFrU2V0U3RydWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387394</attachid>
            <date>2020-01-10 16:35:29 -0800</date>
            <delta_ts>2020-04-13 09:02:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20200111023527.patch</filename>
            <type>text/plain</type>
            <size>47198</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTQzNzQpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDIwLTAxLTEwICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sOiBNYXJrIDcwIHRlc3QgY2FzZXMgYXMgcGFzc2luZy4KKwogMjAyMC0wMS0xMCAgU2Fh
bSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICBPYmplY3RBbGxvY2F0aW9u
U2lua2luZ1BoYXNlIGRvZXNuJ3QgbW9kZWwgcG9pbnRlcnMgdG8gYWxsb2NhdGlvbnMgaW4gY29u
dHJvbCBmbG93IHByb3Blcmx5CkluZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlh
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZp
c2lvbiAyNTQyNTkpCisrKyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtp
bmcgY29weSkKQEAgLTcwNSwxNSArNzA1LDYgQEAgdGVzdC9idWlsdC1pbnMvQWdncmVnYXRlRXJy
b3IvcHJvdG90eXBlLwogdGVzdC9idWlsdC1pbnMvQXJyYXkvb2YvcmV0dXJuLWFicnVwdC1mcm9t
LWRhdGEtcHJvcGVydHkuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxs
JwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8g
YmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1aWx0
LWlucy9BcnJheS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q8K7LCDCq8K7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJl
IHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBl
IGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScK
LXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJyYXkv
cHJvdG90eXBlL2ZpbHRlci90YXJnZXQtYXJyYXktd2l0aC1ub24td3JpdGFibGUtcHJvcGVydHku
anM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IEF0dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9u
bHkgcHJvcGVydHkuJwogICBzdHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFz
c2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS4nCkBAIC03ODMsOSArNzc0LDYgQEAgdGVzdC9idWls
dC1pbnMvQXJyYXkvcHJvdG90eXBlL3NwbGljZS90aAogdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJv
dG90eXBlL3Vuc2hpZnQvY2xhbXBzLXRvLWludGVnZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrNDI5
NDk2NzI5NcK7LCDCqzkwMDcxOTkyNTQ3NDA5OTHCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrNDI5NDk2NzI5NcK7LCDCqzkwMDcxOTkyNTQ3NDA5OTHCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBcnJheUJ1ZmZl
cl3Cuywgwqtbb2JqZWN0IEFycmF5QnVmZmVyXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBcnJheUJ1ZmZl
cl3Cuywgwqtbb2JqZWN0IEFycmF5QnVmZmVyXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgog
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJv
d24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhj
ZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtODE2LDE4ICs4MDQsOSBAQCB0ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvc2xpCiB0ZXN0L2J1aWx0LWlucy9BcnJheUl0ZXJh
dG9yUHJvdG90eXBlL25leHQvZGV0YWNoLXR5cGVkYXJyYXktaW4tcHJvZ3Jlc3MuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBi
dXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJv
ciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGlu
ZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvQXN5bmNGdW5jdGlvbi9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXN5
bmNGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dwrssIMKrW29i
amVjdCBBc3luY0Z1bmN0aW9uXcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXN5bmNH
ZW5lcmF0b3JGdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFz
eW5jR2VuZXJhdG9yRnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUowqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dwrssIMKrW29iamVjdCBBc3lu
Y0dlbmVyYXRvckZ1bmN0aW9uXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQmlnSW50
L2NvbnN0cnVjdG9yLWludGVnZXIuanM6CiAgIGRlZmF1bHQ6ICdSYW5nZUVycm9yOiBOb3Qgc2Fm
ZSBpbnRlZ2VyJwogICBzdHJpY3QgbW9kZTogJ1JhbmdlRXJyb3I6IE5vdCBzYWZlIGludGVnZXIn
Ci10ZXN0L2J1aWx0LWlucy9Cb29sZWFuL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrZmFsc2XCuywgwqtmYWxz
ZcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMKrZmFsc2XCuywgwqtmYWxzZcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1p
bnMvRGF0YVZpZXcvY3VzdG9tLXByb3RvLWFjY2Vzcy1kZXRhY2hlcy1idWZmZXIuanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBi
dXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRp
b24gd2FzIHRocm93biBhdCBhbGwnCkBAIC04MzcsOSArODE2LDYgQEAgdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvZGV0YWNoZWQtYnVmZmVyLgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvbGVuZ3Ro
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9yIHZhbHVlIHNob3VsZCBi
ZSAxJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91
bGQgYmUgMScKLXRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVj
dCBEYXRhVmlld13Cuywgwqtbb2JqZWN0IERhdGFWaWV3XcK7KSB0byBiZSB0cnVlJwotICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBEYXRh
Vmlld13Cuywgwqtbb2JqZWN0IERhdGFWaWV3XcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1p
bnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24g
YnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0
aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtOTQyLDE4ICs5MTgsNiBAQCB0ZXN0L2J1aWx0LWlu
cy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWluCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90
b3R5cGUvc2V0VWludDgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5n
ZUVycm9yJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0
IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7
LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9w
cm90by1mcm9tLWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3C
uykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0
cnVlJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0temVyby5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBP
YmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywg
wqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0Vycm9yL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrRXJyb3LCuywgwqtFcnJvcsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXJyb3LCuywgwqtFcnJv
csK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vY2FsbC1iaW5kLXRoaXMt
cmVhbG0tdW5kZWYuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IGdsb2JhbF3Cuywgwqtbb2JqZWN0IFVu
ZGVmaW5lZF3CuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGlt
cGxpY2l0IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IGdsb2JhbF3Cuywg
wqtbb2JqZWN0IFVuZGVmaW5lZF3CuykgdG8gYmUgdHJ1ZScKQEAgLTk3Miw5ICs5MzYsNiBAQCB0
ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9pbnRlcm5hbHMvQ29uc3RyCiB0ZXN0L2J1aWx0LWlucy9G
dW5jdGlvbi9pbnRlcm5hbHMvQ29uc3RydWN0L2Rlcml2ZWQtdGhpcy11bmluaXRpYWxpemVkLXJl
YWxtLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5jZUVy
cm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgYnV0IGdvdCBhIFJlZmVyZW5jZUVycm9yJwot
dGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtmdW5jdGlvbiAoKSB7Jwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrZnVuY3Rp
b24gKCkgeycKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1l
eGNlZWRzLWludDMyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUowqswwrssIMKrMjE0NzQ4MzY0OMK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzIxNDc0ODM2NDjCuykg
dG8gYmUgdHJ1ZScKQEAgLTExMTYsOSArMTA3Nyw2IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L3Byb3RvdHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0
cmluZy91bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBO
YXRpdmVGdW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1
MDA2MiA9IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9
LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCiAgIHN0cmlj
dCBtb2RlOiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6
ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJl
dHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIg
PSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlucy9HZW5lcmF0b3JGdW5j
dGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dwrssIMKrW29i
amVjdCBHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rp
b25dwrssIMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKIHRlc3Qv
YnVpbHQtaW5zL0pTT04vcGFyc2UvcmV2aXZlci1hcnJheS1nZXQtcHJvcC1mcm9tLXByb3RvdHlw
ZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgdHJ1ZSBidXQgZ290IGZh
bHNlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgdHJ1ZSBidXQgZ290
IGZhbHNlJwpAQCAtMTEzMSwzMyArMTA4OSw5IEBAIHRlc3QvYnVpbHQtaW5zL0pTT04vcGFyc2Uv
cmV2aXZlci1vYmplY3QKIHRlc3QvYnVpbHQtaW5zL0pTT04vcGFyc2UvcmV2aXZlci1vYmplY3Qt
bm9uLWNvbmZpZ3VyYWJsZS1wcm9wLWNyZWF0ZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMjLCuywgwqsywrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsyMsK7LCDCqzLCuykg
dG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3Qg
TWFwXcK7LCDCq1tvYmplY3QgTWFwXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBNYXBdwrssIMKrW29iamVj
dCBNYXBdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVy
cm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
bmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXZh
bEVycm9ywrssIMKrRXZhbEVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUowqtFdmFsRXJyb3LCuywgwqtFdmFsRXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL05hdGl2ZUVycm9ycy9SYW5nZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrUmFuZ2VFcnJvcsK7LCDCq1JhbmdlRXJyb3LCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1JhbmdlRXJyb3LCuywgwqtSYW5n
ZUVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmVmZXJl
bmNlRXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtSZWZlcmVuY2VFcnJvcsK7LCDCq1JlZmVyZW5jZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSZWZlcmVuY2VFcnJvcsK7LCDCq1JlZmVyZW5jZUVycm9y
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3Iv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdU
YXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtTeW50YXhF
cnJvcsK7LCDCq1N5bnRheEVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1l
VmFsdWUowqtTeW50YXhFcnJvcsK7LCDCq1N5bnRheEVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvVHlwZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrVHlwZUVycm9ywrssIMKrVHlwZUVycm9ywrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtUeXBlRXJyb3LCuywgwqtUeXBl
RXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9VUklFcnJv
ci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VSSUVy
cm9ywrssIMKrVVJJRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1VSSUVycm9ywrssIMKrVVJJRXJyb3LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L051bWJlci9iaWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29u
dmVyc2lvbiBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3Ry
aWN0IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVy
JyBpcyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9y
LXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqswwrssIMKrMMK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzDCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQt
aW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lzdGVudC12YWx1ZS1m
dW5jdGlvbi1hcmd1bWVudHMuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq251bGzCuywgwqtbb2JqZWN0IEFyZ3VtZW50c13CuykgdG8gYmUgdHJ1ZScK
IHRlc3QvYnVpbHQtaW5zL09iamVjdC9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvY29uc2lz
dGVudC12YWx1ZS1mdW5jdGlvbi1jYWxsZXIuanM6CkBAIC0xMTY4LDkgKzExMDIsNiBAQCB0ZXN0
L2J1aWx0LWlucy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93CiB0ZXN0L2J1aWx0LWlucy9PYmpl
Y3QvcHJldmVudEV4dGVuc2lvbnMvdGhyb3dzLXdoZW4tZmFsc2UuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhj
ZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRo
cm93biBhdCBhbGwnCi10ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0
XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L3Byb3RvdHlwZS90b1N0cmluZy9wcm94eS1mdW5jdGlvbi5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBP
YmplY3RdwrssIMKrW29iamVjdCBGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tv
YmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgRnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCkBAIC0x
MTk4LDkgKzExMjksNiBAQCB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2FsbFNldHRsZWQvcmVzb2x2
CiB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0aW9uLW5vbmNvbnN0cnVjdG9y
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVl
wrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq3RydWXCuywgwqtmYWxzZcK7KSB0byBiZSB0cnVlJwotdGVz
dC9idWlsdC1pbnMvUHJvbWlzZS9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgUHJvbWlzZV3Cuywg
wqtbb2JqZWN0IFByb21pc2VdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFByb21pc2VdwrssIMKrW29iamVj
dCBQcm9taXNlXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9yYWNlL2lu
dm9rZS1yZXNvbHZlLWdldC1lcnJvci1jbG9zZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzHCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywgwqsxwrspIHRv
IGJlIHRydWUnCkBAIC0xNTU4LDkgKzE0ODYsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJv
cGVydHktZXNjYXBlcy9uCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9u
b24tZXhpc3RlbnQtcHJvcGVydHktdmFsdWUtZ2VuZXJhbC1jYXRlZ29yeS5qczoKICAgZGVmYXVs
dDogJ1Rlc3QyNjI6IFRoaXMgc3RhdGVtZW50IHNob3VsZCBub3QgYmUgZXZhbHVhdGVkLicKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyOiBUaGlzIHN0YXRlbWVudCBzaG91bGQgbm90IGJlIGV2YWx1
YXRlZC4nCi10ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsvKD86KS/Cuywg
wqsvKD86KS/CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjCqy8oPzopL8K7LCDCqy8oPzopL8K7KSB0byBiZSB0cnVlJwogdGVz
dC9idWlsdC1pbnMvUmVnRXhwL3Byb3RvdHlwZS9TeW1ib2wubWF0Y2gvYnVpbHRpbi1pbmZlci11
bmljb2RlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqvvv73CuywgwqtudWxswrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvvv73CuywgwqtudWxswrspIHRvIGJlIHRydWUnCkBA
IC0xNjM5LDEyICsxNTY0LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3VuaWNvZGVfcmVzdHJp
Y3RlZAogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3VuaWNvZGVfcmVzdHJpY3RlZF9xdWFudGlmaWFi
bGVfYXNzZXJ0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBSZWdFeHAoIig/PS4p
KiIsICJ1Iik6ICBFeHBlY3RlZCBhIFN5bnRheEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhj
ZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
UmVnRXhwKCIoPz0uKSoiLCAidSIpOiAgRXhwZWN0ZWQgYSBTeW50YXhFcnJvciB0byBiZSB0aHJv
d24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKLXRlc3QvYnVpbHQtaW5zL1Nl
dC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgU2V0XcK7LCDCq1tvYmplY3QgU2V0XcK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrW29iamVjdCBTZXRdwrssIMKrW29iamVjdCBTZXRdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1
aWx0LWlucy9TdHJpbmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7
KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvVGhyb3dUeXBlRXJyb3IvZXh0ZW5zaWJsZS5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrdHJ1ZcK7
LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKQEAgLTE3
MTAsMjEgKzE2MjksOSBAQCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0
CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcv
bGVuZ3RoLXRvLW51bWJlci1kZXRhY2hidWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRB
cnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9idWZm
ZXItYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrss
IMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcg
d2l0aCBGbG9hdDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmpl
Y3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxv
YXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3Jz
L2xlbmd0aC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlw
ZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVz
dGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKr
W29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0
aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
Y3RvcnMvbm8tYXJncy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90
eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywg
wqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3
aXRoIEZsb2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9jdG9ycy9vYmplY3QtYXJnL2xlbmd0aC1leGNlc3NpdmUtdGhyb3dzLmpzOgogICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3
aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9jdG9ycy9vYmplY3QtYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQ
cm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRy
dWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBl
XcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL2RldGFjaGVkLXdoZW4tc3BlY2llcy1yZXRyaWV2
ZWQtZGlmZmVyZW50LXR5cGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJv
ciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZmZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcg
d2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFR5cGVF
cnJvciB0aHJvd24gZm9yIGRldGFjaGVkIHNvdXJjZSBidWZmZXIgRXhwZWN0ZWQgYSBUeXBlRXJy
b3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rp
bmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKQEAgLTE3NTIsOSArMTY1OSw2IEBAIHRlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3RoZXItY3Rvci1idWZmZXItY3Rvci1z
cGVjaWVzLXByb3RvdHlwZS10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0
aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFy
cmF5LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7
LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2Jq
ZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9y
cy90eXBlZGFycmF5LWFyZy9zYW1lLWN0b3ItYnVmZmVyLWN0b3ItYWNjZXNzLXRocm93cy5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCkBAIC0xODU3LDE1ICsxNzYxLDYgQEAg
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9vZgogdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy9vZi9uZXctaW5zdGFuY2UtdXNpbmctY3VzdG9tLWN0b3Iu
anM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWlyZXMgaXRzIHRo
aXMgYXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9yIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBUeXBlZEFy
cmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRBcnJh
eSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1p
bnMvV2Vha01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha01hcF3Cuywgwqtbb2JqZWN0
IFdlYWtNYXBdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFdlYWtNYXBdwrssIMKrW29iamVjdCBXZWFrTWFw
XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1JlZi9wcm90by1mcm9tLWN0b3It
cmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1JlZl3Cuywgwqtb
b2JqZWN0IFdlYWtSZWZdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IFdlYWtSZWZdwrssIMKrW29iamVjdCBXZWFrUmVmXcK7KSB0byBiZSB0cnVlJwot
dGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1NldF3C
uywgwqtbb2JqZWN0IFdlYWtTZXRdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFdlYWtTZXRdwrssIMKrW29i
amVjdCBXZWFrU2V0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAyL0JpZ0ludC9wcm90b3R5
cGUvdG9Mb2NhbGVTdHJpbmcvZGUtREUuanM6CiAgIGRlZmF1bHQ6ICdSYW5nZUVycm9yOiB0b1N0
cmluZygpIHJhZGl4IGFyZ3VtZW50IG11c3QgYmUgYmV0d2VlbiAyIGFuZCAzNicKICAgc3RyaWN0
IG1vZGU6ICdSYW5nZUVycm9yOiB0b1N0cmluZygpIHJhZGl4IGFyZ3VtZW50IG11c3QgYmUgYmV0
d2VlbiAyIGFuZCAzNicKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjU0
MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDU5IEBACisyMDIwLTAxLTEwICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgInByb3RvdHlwZSIgaXMgbm90
IGFuIG9iamVjdCwgYnVpbHQtaW4gY29uc3RydWN0b3JzIHNob3VsZCB1c2UgaW50cmluc2ljIGRl
ZmF1bHQgcHJvdG90eXBlCisgICAgICAgIG9mIE5ld1RhcmdldCdzIHJlYWxtIChmb3IgZXhhbXBs
ZSwgc3RlcCAyIG9mIGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtbWFwLWNvbnN0cnVjdG9y
KS4KKyAgICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29uc3RydWN0
b3Igd2FzIHVzZWQuIFRoaXMgcGF0Y2ggYWxpZ25zIGFsbCBFQ01BLTI2MgorICAgICAgICBjb25z
dHJ1Y3RvcnMgd2l0aCB0aGUgc3BlYywgVjgsIGFuZCBTcGlkZXJNb25rZXkuCisKKyAgICAgICAg
KiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNv
bnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Bc3lu
Y0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1
Y3RBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUv
Qm9vbGVhbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aEJvb2xl
YW5Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwOgor
ICAgICAgICAoSlNDOjpTTE9XX1BBVEhfREVDTCk6CisgICAgICAgICogcnVudGltZS9EYXRlQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3REYXRlKToKKyAgICAgICAgKiBy
dW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RFcnJv
ckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEVuYWJsZWRDaGVj
ayk6CisgICAgICAgICogcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoSlNDOjpKU0dlbmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yPHNoYXJpbmdNb2RlPjo6
Y29uc3RydWN0QXJyYXlCdWZmZXIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRB
cnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0R2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3KToKKyAgICAgICAgKiBydW50aW1lL0pTR2xvYmFsT2JqZWN0SW5s
aW5lcy5oOgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVjdDo6YXJyYXlTdHJ1Y3R1cmVGb3JJ
bmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL01h
cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TWFwKToKKyAgICAgICAg
KiBydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpOYXRp
dmVFcnJvckNvbnN0cnVjdG9yPGVycm9yVHlwZT46OmNvbnN0cnVjdE5hdGl2ZUVycm9yQ29uc3Ry
dWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpjb25zdHJ1Y3ROdW1iZXJDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9P
YmplY3RDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE9iamVjdFdpdGhO
ZXdUYXJnZXQpOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoSlNDOjpnZXRSZWdFeHBTdHJ1Y3R1cmUpOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RS
ZWdFeHApOgorICAgICAgICAoSlNDOjplc1NwZWNSZWdFeHBDcmVhdGUpOgorICAgICAgICAqIHJ1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1NldENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0U2V0KToKKyAgICAgICAgKiBydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aFN0cmlu
Z0NvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtNYXApOgorICAgICAgICAqIHJ1bnRpbWUvV2Vh
a09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1Jl
Zik6CisgICAgICAgICogcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RXZWFrU2V0KToKKwogMjAyMC0wMS0wOCAgS2VpdGggTWlsbGVyICA8a2Vp
dGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBJbnRyb2R1Y2UgSlNBcnJheUl0
ZXJhdG9yCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9u
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY2FsbAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
c3RydWN0QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUp
OwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmMpKTsK
KyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jLCBjYWxs
RnJhbWUtPm5ld1RhcmdldCgpKSk7CiB9CiAKIEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6QXN5
bmNGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29u
c3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1NDI1OSkK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RhdGljIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29uc3RydWN0QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAg
IEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29u
c3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29u
c3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3IpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5j
dGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9yLCBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpKSk7CiB9CiAKIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6QXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25z
dHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzLDcgKzQz
LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYg
dm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1df
U0NPUEUodm0pOwogICAgIEpTVmFsdWUgYm9vbGVhbiA9IGpzQm9vbGVhbihjYWxsRnJhbWUtPmFy
Z3VtZW50KDApLnRvQm9vbGVhbihnbG9iYWxPYmplY3QpKTsKLSAgICBTdHJ1Y3R1cmUqIGJvb2xl
YW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KSwgZ2xvYmFsT2JqZWN0LT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUg
bmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0
LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5l
d1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmJvb2xlYW5PYmplY3RTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKICAgICBCb29sZWFuT2JqZWN0KiBvYmogPSBCb29sZWFuT2JqZWN0
OjpjcmVhdGUodm0sIGJvb2xlYW5TdHJ1Y3R1cmUpOwogICAgIG9iai0+c2V0SW50ZXJuYWxWYWx1
ZSh2bSwgYm9vbGVhbik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21t
b25TbG93UGF0aHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvbW1vblNsb3dQYXRocy5jcHAJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNsb3dQYXRocy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI4NSw3ICsyODUsOCBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfY3JlYXRlX3Byb21pc2Up
CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAgICAgICByZXN1bHQgPSBKU0ludGVybmFs
UHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3RvcigpLCBj
b25zdHJ1Y3RvckFzT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VTdHJ1Y3R1cmUoKSk7Cisg
ICAgICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGNvbnN0cnVjdG9yQXNPYmplY3QtPmds
b2JhbE9iamVjdCh2bSktPnByb21pc2VTdHJ1Y3R1cmUoKTsKKyAgICAgICAgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVjdG9y
QXNPYmplY3QsIGJhc2VTdHJ1Y3R1cmUpOwogICAgICAgICBDSEVDS19FWENFUFRJT04oKTsKICAg
ICAgICAgcmVzdWx0ID0gSlNQcm9taXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgfQpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNTQyNTkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDMsNyArMTQzLDggQEAg
SlNPYmplY3QqIGNvbnN0cnVjdERhdGUoSlNHbG9iYWxPYmplY3QqIAogICAgICAgICB2YWx1ZSA9
IG1pbGxpc2Vjb25kc0Zyb21Db21wb25lbnRzKGdsb2JhbE9iamVjdCwgYXJncywgV1RGOjpMb2Nh
bFRpbWUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCi0gICAg
U3RydWN0dXJlKiBkYXRlU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVDb25zdHJ1Y3Rvcigp
LCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+ZGF0ZVN0cnVjdHVyZSgpKTsKKyAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSAobmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdCktPmRhdGVTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1
Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5l
d1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
bnVsbHB0cik7CiAKICAgICByZXR1cm4gRGF0ZUluc3RhbmNlOjpjcmVhdGUodm0sIGRhdGVTdHJ1
Y3R1cmUsIHZhbHVlKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9y
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTQyNTkpCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNTcsNyArNTcsMTAgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RF
cgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5h
cmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+ZXJyb3JTdHJ1
Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgp
OworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNl
U3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZXJyb3JT
dHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNj
b3BlLCBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwg
ZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxwdHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsK
IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0
aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTQyNTkpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTUyLDE5ICsxNTIsMjAgQEAgSlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFs
RQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKKyAgICBKU0dsb2JhbE9iamVjdCog
c3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdDsKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChmdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGUpIHsKICAg
ICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6RnVuY3Rpb246Ci0gICAgICAgIHN0cnVj
dHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0cnVjdHVyZUZvck5ld0Z1bmNFeHAoZ2xvYmFsT2Jq
ZWN0LCBmdW5jdGlvbik7CisgICAgICAgIHN0cnVjdHVyZSA9IEpTRnVuY3Rpb246OnNlbGVjdFN0
cnVjdHVyZUZvck5ld0Z1bmNFeHAoc3RydWN0dXJlR2xvYmFsT2JqZWN0LCBmdW5jdGlvbik7CiAg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpHZW5lcmF0
b3I6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25T
dHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5n
ZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1
bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmM6Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2Jh
bE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBz
dHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAg
YnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9y
OgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yRnVuY3Rp
b25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0
LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAg
IH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTQyNTkpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC03OSw5ICs3OSwxMCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIEpTR2VuZXJpY0FyCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1
dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIEpTR2VuZXJpY0FycmF5
QnVmZmVyQ29uc3RydWN0b3IqIGNvbnN0cnVjdG9yID0ganNDYXN0PEpTR2VuZXJpY0FycmF5QnVm
ZmVyQ29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCi0gICAgU3RydWN0dXJl
KiBhcnJheUJ1ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpLCBjb25zdHJ1Y3Rvci0+Z2xvYmFsT2JqZWN0KCktPmFycmF5QnVmZmVyU3Ry
dWN0dXJlKHNoYXJpbmdNb2RlKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3Ry
dWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpOworICAgIFN0cnVjdHVyZSog
YXJyYXlCdWZmZXJTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBi
YXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAg
ICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0Nv
bnN0cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNTQyNTkpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDEwIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29uc3RydWN0R2UKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSW50ZXJuYWxG
dW5jdGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGNhbGxGcmFtZS0+
anNDYWxsZWUoKSk7Ci0gICAgU3RydWN0dXJlKiBwYXJlbnRTdHJ1Y3R1cmUgPSBmdW5jdGlvbi0+
Z2xvYmFsT2JqZWN0KCktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5
U3RvcmFnZVR5cGUpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIHBhcmVudFN0cnVjdHVyZSk7CisgICAgSlNW
YWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdU
YXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3
Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIHNpemVf
dCBhcmdDb3VudCA9IGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJ
KHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xv
YmFsT2JqZWN0SW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDEsNyArMTAxLDkgQEAgQUxX
QVlTX0lOTElORSBib29sIEpTR2xvYmFsT2JqZWN0Ojppc1NldAogCiBBTFdBWVNfSU5MSU5FIFN0
cnVjdHVyZSogSlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVy
aW5nQWxsb2NhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBJbmRleGluZ1R5cGUg
aW5kZXhpbmdUeXBlLCBKU1ZhbHVlIG5ld1RhcmdldCkgY29uc3QKIHsKLSAgICByZXR1cm4gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9i
YWxPYmplY3QtPmFycmF5Q29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBhcnJheVN0cnVjdHVyZUZv
ckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKSk7CisgICAgVk0mIHZt
ID0gZ2xvYmFsT2JqZWN0LT52bSgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IChu
ZXdUYXJnZXQgPyBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pIDogZ2xvYmFs
T2JqZWN0KS0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKGlu
ZGV4aW5nVHlwZSk7CisgICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9yKCks
IG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiB9CiAKIGlubGluZSBKU0Z1bmN0aW9uKiBKU0ds
b2JhbE9iamVjdDo6dGhyb3dUeXBlRXJyb3JGdW5jdGlvbigpIGNvbnN0IHsgcmV0dXJuIGpzQ2Fz
dDxKU0Z1bmN0aW9uKj4obGlua1RpbWVDb25zdGFudChMaW5rVGltZUNvbnN0YW50Ojp0aHJvd1R5
cGVFcnJvckZ1bmN0aW9uKSk7IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L01hcENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjcsNyArNjcsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
cwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3Qt
Pm1hcFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0p
LT5tYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJs
ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNp
b24gMjU0MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU1LDcgKzU1LDEwIEBAIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgTmF0aXZlRXJyb3IKICAgICBWTSYgdm0gPSBnbG9iYWxPYmpl
Y3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAg
IEpTVmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJl
KiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rh
cmdldCgpLCBqc0Nhc3Q8TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSktPmVycm9yU3RydWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxs
RnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7Cisg
ICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFs
T2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIGVy
cm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVj
dHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7
CiAgICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2Nv
cGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBl
cnJvclN0cnVjdHVyZSwgbWVzc2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjU0MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Miw3ICs5Miwx
MCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byBz
Y29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIGRvdWJsZSBuID0gY2FsbEZyYW1l
LT5hcmd1bWVudENvdW50KCkgPyBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApLnRvTnVt
YmVyKGdsb2JhbE9iamVjdCkgOiAwOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bnVtYmVyT2Jq
ZWN0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVy
ZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkt
Pm51bWJlck9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBOdW1iZXJPYmpl
Y3QqIG9iamVjdCA9IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMjU0MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
T2JqZWN0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjcsNyArMTI3LDggQEAg
c3RhdGljIEFMV0FZU19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVjdAogICAgIC8vIDEuIElmIE5l
d1RhcmdldCBpcyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFjdGl2ZSBmdW5jdGlvbiwgdGhl
bgogICAgIGlmIChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9iamVjdENvbnN0cnVjdG9yKSB7
CiAgICAgICAgIC8vIGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKE5l
d1RhcmdldCwgIiVPYmplY3RQcm90b3R5cGUlIikuCi0gICAgICAgIFN0cnVjdHVyZSogb2JqZWN0
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPm9i
amVjdFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOworICAgICAgICBTdHJ1Y3R1cmUq
IGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5v
YmplY3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpOworICAgICAgICBTdHJ1Y3R1cmUq
IG9iamVjdFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGdsb2JhbE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5ld1RhcmdldCwgYmFzZVN0cnVj
dHVyZSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAg
ICAgICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3Qodm0sIG9iamVjdFN0cnVjdHVyZSk7CiAg
ICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4
cENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjU0MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIs
MTAgKzE3Miw5IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoSlNHbG8KIAog
aW5saW5lIFN0cnVjdHVyZSogZ2V0UmVnRXhwU3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0KQogewotICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gZ2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFyZ2V0ICE9
IGpzVW5kZWZpbmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBD
b25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZSk7Ci0gICAgcmV0dXJuIHN0cnVjdHVy
ZTsKKyAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgU3RydWN0dXJlKiBiYXNl
U3RydWN0dXJlID0gKG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSkgOiBnbG9iYWxPYmplY3QpLT5yZWdFeHBTdHJ1Y3R1cmUoKTsKKyAgICByZXR1cm4gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9i
YWxPYmplY3QtPnJlZ0V4cENvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7
CiB9CiAKIGlubGluZSBPcHRpb25TZXQ8WWFycjo6RmxhZ3M+IHRvRmxhZ3MoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBmbGFncykKQEAgLTIyOSw3ICsyMjgsNyBAQCBKU09i
amVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0CiAgICAgYm9vbCBjb25zdHJ1Y3RB
c1JlZ2V4cCA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIHBhdHRlcm5BcmcpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCi0gICAgaWYgKG5ld1RhcmdldC5p
c1VuZGVmaW5lZCgpICYmIGNvbnN0cnVjdEFzUmVnZXhwICYmIGZsYWdzQXJnLmlzVW5kZWZpbmVk
KCkpIHsKKyAgICBpZiAoIW5ld1RhcmdldCAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0Fy
Zy5pc1VuZGVmaW5lZCgpKSB7CiAgICAgICAgIEpTVmFsdWUgY29uc3RydWN0b3IgPSBwYXR0ZXJu
QXJnLmdldChnbG9iYWxPYmplY3QsIHZtLnByb3BlcnR5TmFtZXMtPmNvbnN0cnVjdG9yKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAgICAgICAgIGlmIChj
YWxsZWUgPT0gY29uc3RydWN0b3IpIHsKQEAgLTI3NCw3ICsyNzMsNyBAQCBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGVzU3BlY1JlZ0V4CiB7CiAgICAgSlNWYWx1ZSBwYXR0ZXJuQXJnID0g
Y2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIGZsYWdzQXJnID0gY2FsbEZyYW1l
LT5hcmd1bWVudCgxKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4cENyZWF0ZShn
bG9iYWxPYmplY3QsIGpzVW5kZWZpbmVkKCksIHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUoZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
KCksIHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7CiB9CiAKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZXNTcGVjSXNSZWdFeHAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHBDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAg
LTU3LDcgKzU3LDcgQEAgcHJpdmF0ZToKIH07CiBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShSZWdFeHBDb25zdHJ1Y3RvciwgSW50ZXJuYWxGdW5jdGlvbik7CiAKLUpTT2JqZWN0
KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25zdCBBcmdMaXN0JiwgSlNPYmpl
Y3QqIGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0ID0ganNVbmRlZmluZWQoKSk7
CitKU09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlz
dCYsIEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVlIG5ld1RhcmdldCA9IEpTVmFs
dWUoKSk7CiAKIEFMV0FZU19JTkxJTkUgYm9vbCBpc1JlZ0V4cChWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCiB7CkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTQy
NTkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTY3LDcgKzY3LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAg
YXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiBz
ZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KSwgZ2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQg
PSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3Qo
KSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKS0+c2V0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzZXRTdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAg
IEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMjU0MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5n
Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDQsNyArMTQ0LDEwIEBAIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxP
YmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwog
Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSk7
CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFT
U0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJl
ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+c3RyaW5nT2JqZWN0U3Ry
dWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVudENv
dW50KCkpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3Ry
dWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTY1LDcgKzY1LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMK
ICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBj
YWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVj
dC0+d2Vha01hcFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBT
dHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmpl
Y3Qodm0pLT53ZWFrTWFwU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgSlNX
ZWFrTWFwKiB3ZWFrTWFwID0gSlNXZWFrTWFwOjpjcmVhdGUodm0sIHdlYWtNYXBTdHJ1Y3R1cmUp
OwogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0
UmVmQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNTQyNTkpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC02OCw3ICs2OCwxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBj
b25zCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzT2JqZWN0KCkpCiAgICAgICAg
IHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJGaXJzdCBhcmd1
bWVudCB0byBXZWFrUmVmIHNob3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0gICAgU3RydWN0dXJl
KiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsK
KyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNT
RVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUg
PSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFrT2JqZWN0UmVmU3Ry
dWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNXZWFrT2JqZWN0UmVmOjpjcmVhdGUodm0sIFdl
YWtPYmplY3RSZWZTdHJ1Y3R1cmUsIGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkuZ2V0
T2JqZWN0KCkpKSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFr
U2V0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI1NDI1OSkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTY1LDcgKzY1LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGds
b2JhbE9iamVjdC0+d2Vha1NldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgp
KTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5n
bG9iYWxPYmplY3Qodm0pLT53ZWFrU2V0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiB3ZWFr
U2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVj
dHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7
CiAgICAgSlNXZWFrU2V0KiB3ZWFrU2V0ID0gSlNXZWFrU2V0OjpjcmVhdGUodm0sIHdlYWtTZXRT
dHJ1Y3R1cmUpOwogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDAp
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396291</attachid>
            <date>2020-04-13 09:02:36 -0700</date>
            <delta_ts>2020-04-13 13:19:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20200413190234.patch</filename>
            <type>text/plain</type>
            <size>74495</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjAwMDMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDIwLTA0LTEzICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcHJvbWlzZS1wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvZXhwZWN0YXRp
b25zLnlhbWw6IE1hcmsgNzggdGVzdCBjYXNlcyBhcyBwYXNzaW5nLgorCiAyMDIwLTA0LTEyICBS
b3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KIAogICAgICAgICBbRUNNQS00
MDJdIFdlYktpdCBJbnRsIGRvZXMgbm90IGFsbG93IGNhbGVuZGFyIGFuZCBudW1iZXJpbmdTeXN0
ZW0gb3B0aW9ucwpJbmRleDogSlNUZXN0cy9zdHJlc3MvcHJvbWlzZS1wcm90by1mcm9tLWN0b3It
cmVhbG0uanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJlc3MvcHJvbWlzZS1wcm90by1mcm9t
LWN0b3ItcmVhbG0uanMJKG5vbmV4aXN0ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcHJvbWlzZS1w
cm90by1mcm9tLWN0b3ItcmVhbG0uanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxNiBAQAor
ZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkgeworICAgIGlmIChhY3R1YWwgIT09
IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2YWx1ZTogJyArIGFjdHVh
bCk7Cit9CisKK2NvbnN0IHJlYWxtQSA9IGNyZWF0ZUdsb2JhbE9iamVjdCgpOworY29uc3QgcmVh
bG1CID0gY3JlYXRlR2xvYmFsT2JqZWN0KCk7CisKK2NvbnN0IGV4ZWN1dG9yID0gZnVuY3Rpb24o
KSB7fTsKK2NvbnN0IG5ld1RhcmdldCA9IG5ldyByZWFsbUEuRnVuY3Rpb24oKTsKK25ld1Rhcmdl
dC5wcm90b3R5cGUgPSBudWxsOworCitmb3IgKGxldCBpID0gMDsgaSA8IDFlNDsgKytpKSB7Cisg
ICAgbGV0IHByb21pc2UgPSBSZWZsZWN0LmNvbnN0cnVjdChyZWFsbUIuUHJvbWlzZSwgW2V4ZWN1
dG9yXSwgbmV3VGFyZ2V0KTsKKyAgICBzaG91bGRCZShPYmplY3QuZ2V0UHJvdG90eXBlT2YocHJv
bWlzZSksIHJlYWxtQS5Qcm9taXNlLnByb3RvdHlwZSk7Cit9CkluZGV4OiBKU1Rlc3RzL3Rlc3Qy
NjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVj
dGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNjAwMDMpCisrKyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0
YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTYxNSwxNSArNjE1LDYgQEAgdGVzdC9hbm5l
eEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3ItYXdhaQogdGVzdC9hbm5leEIvbGFuZ3VhZ2Uvc3Rh
dGVtZW50cy9mb3Itb2YvaXRlcmF0b3ItY2xvc2UtcmV0dXJuLWVtdWxhdGVzLXVuZGVmaW5lZC10
aHJvd3Mtd2hlbi1jYWxsZWQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1
aWx0LWlucy9BcnJheS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0
LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1
ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJy
YXkvcHJvdG90eXBlL2NvbmNhdC9hcmctbGVuZ3RoLWV4Y2VlZGluZy1pbnRlZ2VyLWxpbWl0Lmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290
IGEgUmFuZ2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwpAQCAtNjkwLDkgKzY4MSw2IEBAIHRlc3Qv
YnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxpY2UvdGgKIHRlc3QvYnVpbHQtaW5zL0FycmF5
L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1pbnRlZ2VyLWxpbWl0LmpzOgogICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
qzQyOTQ5NjcyOTXCuywgwqs5MDA3MTk5MjU0NzQwOTkxwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVW
YWx1ZSjCqzQyOTQ5NjcyOTXCuywgwqs5MDA3MTk5MjU0NzQwOTkxwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXJyYXlC
dWZmZXJdwrssIMKrW29iamVjdCBBcnJheUJ1ZmZlcl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXJyYXlC
dWZmZXJdwrssIMKrW29iamVjdCBBcnJheUJ1ZmZlcl3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTczMiwxMiArNzIwLDYgQEAgdGVzdC9i
dWlsdC1pbnMvQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdAogdGVzdC9idWlsdC1pbnMvQXN5bmNG
cm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlL3Rocm93L2Fic2VudC12YWx1ZS1ub3QtcGFzc2VkLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBQcm9taXNlIHNob3VsZCBiZSByZWplY3RlZCwgZ290OiB1bmRlZmluZWQnCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBQcm9taXNlIHNob3VsZCBiZSByZWplY3RlZCwgZ290OiB1bmRlZmluZWQnCi10
ZXN0L2J1aWx0LWlucy9Bc3luY0Z1bmN0aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcK7LCDCq1tvYmplY3Qg
QXN5bmNGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgQXN5bmNGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dwrspIHRv
IGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBc3luY0dl
bmVyYXRvckZ1bmN0aW9uXcK7LCDCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3Cuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dwrspIHRv
IGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9Bc3luY0dlbmVyYXRvclByb3RvdHlwZS9yZXR1cm4v
cmV0dXJuLXN1c3BlbmRlZFlpZWxkLXByb21pc2UuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyOkFz
eW5jVGVzdEZhaWx1cmU6VGVzdDI2MkVycm9yOiBUZXN0MjYyRXJyb3I6IEFzeW5jR2VuZXJhdG9y
UmVzb2x2ZShnZW5lcmF0b3IsIHJlc3VsdFZhbHVlLCB0cnVlKSBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IFByb21pc2VdwrssIMKrdW53cmFwcGVkLXZhbHVlwrspIHRvIGJlIHRydWUnCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBBc3luY0dlbmVyYXRvclJlc29sdmUoZ2VuZXJhdG9yLCByZXN1bHRWYWx1ZSwg
dHJ1ZSkgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBQcm9taXNlXcK7LCDCq3Vud3JhcHBl
ZC12YWx1ZcK7KSB0byBiZSB0cnVlJwpAQCAtODA0LDkgKzc4Niw2IEBAIHRlc3QvYnVpbHQtaW5z
L0JpZ0ludC9hc1VpbnROL29yZGVyLW9mLXMKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9jb25zdHJ1
Y3Rvci1pbnRlZ2VyLmpzOgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUgaW50ZWdl
cicKICAgc3RyaWN0IG1vZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwotdGVzdC9i
dWlsdC1pbnMvQm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2ZhbHNlwrssIMKrZmFsc2XCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq2ZhbHNlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L2N1c3RvbS1wcm90by1hY2Nlc3MtZGV0YWNoZXMtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4
Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0
aHJvd24gYXQgYWxsJwpAQCAtODE2LDkgKzc5NSw2IEBAIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L2RldGFjaGVkLWJ1ZmZlci4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2xlbmd0aC5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgMScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlIDEn
Ci10ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRGF0YVZp
ZXddwrssIMKrW29iamVjdCBEYXRhVmlld13CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRGF0YVZpZXddwrss
IMKrW29iamVjdCBEYXRhVmlld13CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMg
dGhyb3duIGF0IGFsbCcKQEAgLTkyMSwxOCArODk3LDYgQEAgdGVzdC9idWlsdC1pbnMvRGF0YVZp
ZXcvcHJvdG90eXBlL3NldFVpbgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3Nl
dFVpbnQ4L2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicK
LXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3Rd
wrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2Jq
ZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJl
IHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7
LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9FcnJvci9wcm90by1mcm9t
LWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq0Vycm9ywrssIMKrRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq0Vycm9ywrssIMKrRXJyb3LCuykgdG8g
YmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2NhbGwtYmluZC10aGlzLXJlYWxtLXVu
ZGVmLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBnbG9iYWxdwrssIMKrW29iamVjdCBVbmRlZmluZWRd
wrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBnbG9iYWxdwrssIMKrW29iamVj
dCBVbmRlZmluZWRdwrspIHRvIGJlIHRydWUnCkBAIC05NTEsOSArOTE1LDYgQEAgdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24v
aW50ZXJuYWxzL0NvbnN0cnVjdC9kZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQg
Z290IGEgUmVmZXJlbmNlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFJlZmVyZW5jZUVycm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVp
bHQtaW5zL0Z1bmN0aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrZnVuY3Rpb24gKCkgeycKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2Z1bmN0aW9uICgpIHsn
CiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvYmluZC9sZW5ndGgtZXhjZWVkcy1p
bnQzMi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
MMK7LCDCqzIxNDc0ODM2NDjCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywgwqsyMTQ3NDgzNjQ4wrspIHRvIGJlIHRy
dWUnCkBAIC0xMDkyLDM5ICsxMDUzLDEyIEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3Rv
dHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmluZy91
bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVG
dW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9
IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUw
MDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCiAgIHN0cmljdCBtb2Rl
OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdmdW5j
dGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVybiBi
OyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7
MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlucy9HZW5lcmF0b3JGdW5jdGlvbi9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dwrssIMKrW29iamVjdCBH
ZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dwrss
IMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQt
aW5zL0pTT04vcGFyc2UvcmV2aXZlci1vYmplY3Qtbm9uLWNvbmZpZ3VyYWJsZS1wcm9wLWNyZWF0
ZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMjLC
uywgwqsywrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqsyMsK7LCDCqzLCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5z
L01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgTWFwXcK7LCDCq1tvYmplY3QgTWFwXcK7KSB0
byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrW29iamVjdCBNYXBdwrssIMKrW29iamVjdCBNYXBdwrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXZhbEVycm9ywrssIMKrRXZhbEVycm9ywrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtFdmFsRXJyb3LCuywgwqtFdmFs
RXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SYW5nZUVy
cm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
bmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrUmFu
Z2VFcnJvcsK7LCDCq1JhbmdlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1JhbmdlRXJyb3LCuywgwqtSYW5nZUVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmVmZXJlbmNlRXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlz
IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSZWZlcmVuY2VFcnJvcsK7LCDCq1JlZmVy
ZW5jZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSZWZl
cmVuY2VFcnJvcsK7LCDCq1JlZmVyZW5jZUVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtTeW50YXhFcnJvcsK7LCDCq1N5bnRheEVycm9ywrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtTeW50YXhFcnJvcsK7LCDCq1N5
bnRheEVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvVHlw
ZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
VHlwZUVycm9ywrssIMKrVHlwZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUowqtUeXBlRXJyb3LCuywgwqtUeXBlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
YnVpbHQtaW5zL05hdGl2ZUVycm9ycy9VUklFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VSSUVycm9ywrssIMKrVVJJRXJyb3LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VSSUVycm9ywrssIMKrVVJJRXJyb3LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051bWJlci9iaWdpbnQtY29udmVyc2lvbi5q
czoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVyc2lvbiBmcm9tICdCaWdJbnQnIHRvICdu
dW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZl
cnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBpcyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1
aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqswwrssIMKrMMK7KSB0byBiZSB0cnVlJwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDC
qzDCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9lbnRyaWVzL29yZGVyLWFm
dGVyLWRlZmluZS1wcm9wZXJ0eS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4gJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8gaGF2
ZSB0aGUgc2FtZSBjb250ZW50cy4gJwpAQCAtMTE0Nyw5ICsxMDgxLDYgQEAgdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2ludGVybmFscy9EZWZpbmVPdwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L2tleXMv
b3JkZXItYWZ0ZXItZGVmaW5lLXByb3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBbYiwgYV0gYW5kIFthLCBiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAn
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbYiwgYV0gYW5kIFthLCBi
XSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAnCi10ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwog
dGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvdHlwZS90b1N0cmluZy9wcm94eS1mdW5jdGlvbi5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBGdW5jdGlvbl3CuykgdG8gYmUg
dHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgRnVuY3Rpb25dwrsp
IHRvIGJlIHRydWUnCkBAIC0xMTg2LDkgKzExMTcsNiBAQCB0ZXN0L2J1aWx0LWlucy9Qcm9taXNl
L2NyZWF0ZS1yZXNvbHZpbmctCiB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0
aW9uLW5vbmNvbnN0cnVjdG9yLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq3RydWXCuywgwqtmYWxzZcK7
KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tv
YmplY3QgUHJvbWlzZV3Cuywgwqtbb2JqZWN0IFByb21pc2VdwrspIHRvIGJlIHRydWUnCi0gIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFBy
b21pc2VdwrssIMKrW29iamVjdCBQcm9taXNlXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1p
bnMvUHJvbWlzZS9wcm90b3R5cGUvZmluYWxseS9pbnZva2VzLXRoZW4td2l0aC1mdW5jdGlvbi5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVsZmlsbG1lbnQgaGFuZGxlciBpcyBub3Qg
Y29uc3RydWN0b3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBmdWxmaWxsbWVudCBo
YW5kbGVyIGlzIG5vdCBjb25zdHJ1Y3RvcicKQEAgLTE2NTQsOSArMTU4Miw2IEBAIHRlc3QvYnVp
bHQtaW5zL1JlZ0V4cC9wcm9wZXJ0eS1lc2NhcGVzL2cKIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9w
cm9wZXJ0eS1lc2NhcGVzL2dlbmVyYXRlZC9YSURfU3RhcnQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IGBccHtYSURfU3RhcnR9YCBzaG91bGQgbWF0Y2ggVSswMDFDRkEgKGDhs7pgKScK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGBccHtYSURfU3RhcnR9YCBzaG91bGQgbWF0
Y2ggVSswMDFDRkEgKGDhs7pgKScKLXRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90by1mcm9tLWN0
b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCqy8oPzopL8K7LCDCqy8oPzopL8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrLyg/OikvwrssIMKrLyg/OikvwrspIHRv
IGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvdG90eXBlL1N5bWJvbC5tYXRjaC9i
dWlsdGluLWluZmVyLXVuaWNvZGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq++/vcK7LCDCq251bGzCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq++/vcK7LCDCq251bGzCuykg
dG8gYmUgdHJ1ZScKQEAgLTE2OTksMTIgKzE2MjQsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAv
cHJvdG90eXBlL3VuaWNvZGUvCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcXVhbnRpZmllci1pbnRl
Z2VyLWxpbWl0LmpzOgogICBkZWZhdWx0OiAnU3ludGF4RXJyb3I6IEludmFsaWQgcmVndWxhciBl
eHByZXNzaW9uOiBudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXInCiAgIHN0cmljdCBt
b2RlOiAnU3ludGF4RXJyb3I6IEludmFsaWQgcmVndWxhciBleHByZXNzaW9uOiBudW1iZXIgdG9v
IGxhcmdlIGluIHt9IHF1YW50aWZpZXInCi10ZXN0L2J1aWx0LWlucy9TZXQvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqtbb2JqZWN0IFNldF3Cuywgwqtbb2JqZWN0IFNldF3CuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgU2V0
XcK7LCDCq1tvYmplY3QgU2V0XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvU3RyaW5n
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScK
IHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq3RydWXCuywgwqtmYWxzZcK7KSB0
byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrdHJ1ZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUnCkBAIC0xNzcwLDIxICsxNjg5LDkg
QEAgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdAogdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9idWZmZXItYXJnL2xlbmd0aC10by1udW1i
ZXItZGV0YWNoYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBh
IFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
YnV0IGdvdCBhIFJhbmdlRXJyb3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvYnVmZmVyLWFyZy9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwot
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9sZW5ndGgtYXJnL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9h
dDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5
LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL25vLWFyZ3Mv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2Jq
ZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9h
dDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvb2JqZWN0
LWFyZy9sZW5ndGgtZXhjZXNzaXZlLXRocm93cy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBSYW5nZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdh
cyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvb2JqZWN0
LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDC
q1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90
eXBlZGFycmF5LWFyZy9kZXRhY2hlZC13aGVuLXNwZWNpZXMtcmV0cmlldmVkLWRpZmZlcmVudC10
eXBlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBUeXBlRXJyb3IgdGhyb3duIGZvciBk
ZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBi
dXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBUeXBlRXJyb3IgdGhyb3duIGZv
ciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCkBAIC0xODEyLDkgKzE3MTksNiBAQCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2N0CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0
b3JzL3R5cGVkYXJyYXktYXJnL290aGVyLWN0b3ItYnVmZmVyLWN0b3Itc3BlY2llcy1wcm90b3R5
cGUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3Qy
NjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24g
d2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZs
b2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRB
cnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJy
YXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScK
IHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1h
cmcvc2FtZS1jdG9yLWJ1ZmZlci1jdG9yLWFjY2Vzcy10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3
aXRoIEZsb2F0NjRBcnJheS4pJwpAQCAtMTkwMiwyNyArMTgwNiwxMiBAQCB0ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL29mCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL29mL25ldy1pbnN0YW5jZS11c2luZy1jdXN0b20tY3Rvci5qczoKICAgZGVmYXVs
dDogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBhcmd1bWVudCB0
byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0
QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWly
ZXMgaXRzIHRoaXMgYXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9y
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9XZWFrTWFwL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrTWFwXcK7LCDCq1tvYmplY3QgV2Vha01hcF3Cuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq1tvYmplY3QgV2Vha01hcF3Cuywgwqtbb2JqZWN0IFdlYWtNYXBdwrspIHRvIGJlIHRy
dWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrUmVmXcK7LCDCq1tvYmplY3QgV2Vha1Jl
Zl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vh
a1JlZl3Cuywgwqtbb2JqZWN0IFdlYWtSZWZdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlu
cy9XZWFrU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrU2V0XcK7LCDCq1tvYmplY3Qg
V2Vha1NldF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1NldF3Cuywgwqtbb2JqZWN0IFdlYWtTZXRd
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvQ29sbGF0b3IvbWlzc2luZy11bmljb2RlLWV4
dC12YWx1ZS1kZWZhdWx0cy10by10cnVlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiAi
a24iIHNob3VsZCBiZSByZXR1cm5lZCBpbiBsb2NhbGUuIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2Zh
bHNlwrssIMKrdHJ1ZcK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogImtuIiBzaG91bGQgYmUgcmV0dXJuZWQgaW4gbG9jYWxlLiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtmYWxzZcK7LCDCq3RydWXCuykgdG8gYmUgdHJ1ZScKLXRlc3QvaW50bDQwMi9Db2xsYXRvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3Qg
T2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRv
IGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvQ29sbGF0b3IvdXNhZ2UtZGUuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFvDhCwgQUVdIGFuZCBbQUUsIMOEXSB0byBoYXZlIHRo
ZSBzYW1lIGNvbnRlbnRzLiBzZWFyY2gnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBbw4QsIEFFXSBhbmQgW0FFLCDDhF0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4g
c2VhcmNoJwotdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50
bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90b3R5cGUvZm9ybWF0L3JlbGF0ZWQteWVhci16aC5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMzblubTCuywg
wqsyMDE55bex5Lql5bm0wrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqszNuW5tMK7LCDCqzIwMTnlt7HkuqXlubTCuykgdG8g
YmUgdHJ1ZScKQEAgLTE5NTYsMTIgKzE4NDUsNiBAQCB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5v
bmljYWxMb2NhbGVzL3ByCiB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3By
ZWZlcnJlZC12YXJpYW50LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtqYS1MYXRuLWFsYWxjOTfCuywgwqtqYS1MYXRuLWhlcGJ1cm4taGVwbG9jwrsp
IHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUowqtqYS1MYXRuLWFsYWxjOTfCuywgwqtqYS1MYXRuLWhlcGJ1cm4taGVwbG9jwrspIHRv
IGJlIHRydWUnCi10ZXN0L2ludGw0MDIvTnVtYmVyRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvaW50
bDQwMi9QbHVyYWxSdWxlcy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29i
amVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvbGFuZ3VhZ2UtdGFncy1p
bnZhbGlkLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBUZXN0IGRhdGEgImRlLWdyZWdv
cnktZ3JlZ29yeSIgaXMgYSBjYW5vbmljYWxpemVkIGFuZCBzdHJ1Y3R1cmFsbHkgdmFsaWQgbGFu
Z3VhZ2UgdGFnLicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFRlc3QgZGF0YSAiZGUt
Z3JlZ29yeS1ncmVnb3J5IiBpcyBhIGNhbm9uaWNhbGl6ZWQgYW5kIHN0cnVjdHVyYWxseSB2YWxp
ZCBsYW5ndWFnZSB0YWcuJwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
NjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTA0IEBACisyMDIwLTA0LTEzICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2Fs
ZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgInByb3RvdHlwZSIgaXMg
bm90IGFuIG9iamVjdCwgYnVpbHQtaW4gY29uc3RydWN0b3JzIHNob3VsZCB1c2UgTmV3VGFyZ2V0
J3MgcmVhbG0KKyAgICAgICAgdG8gb2J0YWluIGRlZmF1bHQgW1tQcm90b3R5cGVdXSB2YWx1ZSAo
Zm9yIGV4YW1wbGUsIE1hcCBjb25zdHJ1Y3RvciBbMV0pLgorICAgICAgICBCZWZvcmUgdGhpcyBj
aGFuZ2UsIHJlYWxtIG9mIGFjdGl2ZSBjb25zdHJ1Y3RvciB3YXMgdXNlZCBpbnN0ZWFkLiBUaGlz
IHBhdGNoIGFsaWducworICAgICAgICBhbGwgc3ViY2xhc3NhYmxlIEphdmFTY3JpcHRDb3JlIGNv
bnN0cnVjdG9ycyB3aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNwaWRlck1vbmtleS4KKworICAgICAg
ICBXaGlsZSBhIGR5bmFtaWNhbGx5IGNyZWF0ZWQgZnVuY3Rpb24gdXNlcyBOZXdUYXJnZXQncyBy
ZWFsbSBmb3IgaXRzIFtbUHJvdG90eXBlXV0KKyAgICAgICAgc2ltaWxhciB0byBvdGhlciBidWls
dC1pbnMsIGl0cyAicHJvdG90eXBlIiBvYmplY3QgaW5oZXJpdCBmcm9tIE9iamVjdFByb3RvdHlw
ZQorICAgICAgICBvZiBhY3RpdmUgY29uc3RydWN0b3IncyByZWFsbSBbMl0gKGp1c3QgbGlrZSB0
aGVpciBzY29wZSksIG1ha2luZyBpdCByZXRhaW4gcmVmZXJlbmNlcworICAgICAgICB0byAyIGRp
ZmZlcmVudCBnbG9iYWwgb2JqZWN0cy4gVG8gYWNjb21vZGF0ZSB0aGlzIGJlaGF2aW9yLCB0aGlz
IGNoYW5nZSBpbnRyb2R1Y2VzCisgICAgICAgIGBzY29wZUdsb2JhbE9iamVjdGAgaW4gSlNGdW5j
dGlvbi5jcHAgbWV0aG9kcy4KKworICAgICAgICBBYm92ZS1tZW50aW9uZWQgYmVoYXZpb3IgYWxz
byBzaW1wbGlmaWVzIGNyZWF0aW9uIG9mIEpTR2VuZXJhdG9yIGFuZCBKU0FzeW5jR2VuZXJhdG9y
CisgICAgICAgIGluc3RhbmNlcyBzaW5jZSBOZXdUYXJnZXQncyByZWFsbSBpcyBpcnJlbGV2YW50
IHRvIHRoZW0uCisKKyAgICAgICAgSW50bENvbGxhdG9yQ29uc3RydWN0b3I6OmNvbGxhdG9yU3Ry
dWN0dXJlKCkgYW5kIDMgc2ltaWxhciBJbnRsKkNvbnN0cnVjdG9yIG1ldGhvZHMKKyAgICAgICAg
YXJlIHJlbW92ZWQgYmVjYXVzZSBhKSB3aXRoIHRoaXMgY2hhbmdlLCBlYWNoIG9mIHRoZW0gaGF2
ZSBtYXggb25lIGNhbGwgc2l0ZSBhbmQKKyAgICAgICAgYikgb3RoZXIgSlNDIGNvbnN0cnVjdG9y
cyBoYXZlIG5vIG1ldGhvZHMgYWxpa2UuCisKKyAgICAgICAgWzFdOiBodHRwczovL3RjMzkuZXMv
ZWNtYTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvciAoc3RlcCAyKQorICAgICAgICBbMl06IGh0dHBz
Oi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtY3JlYXRlZHluYW1pY2Z1bmN0aW9uIChzdGVwcyAyMy0y
NSkKKworICAgICAgICAqIGRmZy9ERkdPcGVyYXRpb25zLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEFz
eW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RBc3luY0dl
bmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQm9vbGVhbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aEJvb2xlYW5Db25zdHJ1
Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpTTE9XX1BBVEhfREVDTCk6CisgICAgICAgICogcnVudGltZS9EYXRlQ29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3REYXRlKToKKyAgICAgICAgKiBydW50aW1lL0Vy
cm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RFcnJvckNvbnN0cnVj
dG9yKToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEVuYWJsZWRDaGVjayk6CisgICAg
ICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdEludGxDb2xsYXRvcik6CisgICAgICAgIChKU0M6OmNhbGxJbnRsQ29sbGF0b3Ip
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuaDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpT
Qzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxE
YXRlVGltZUZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9y
LmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bE51bWJlckZvcm1hdCk6CisgICAgICAg
IChKU0M6OmNhbGxJbnRsTnVtYmVyRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRsUGx1cmFsUnVsZXMp
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaDoKKyAgICAg
ICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OkpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0b3I8c2hhcmluZ01vZGU+Ojpjb25zdHJ1Y3RB
cnJheUJ1ZmZlcik6CisgICAgICAgICogcnVudGltZS9KU0Z1bmN0aW9uLmNwcDoKKyAgICAgICAg
KEpTQzo6SlNGdW5jdGlvbjo6cHJvdG90eXBlRm9yQ29uc3RydWN0aW9uKToKKyAgICAgICAgKEpT
Qzo6SlNGdW5jdGlvbjo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0pT
R2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9KU0ds
b2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5
U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbiBjb25zdCk6CisgICAgICAg
ICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1h
cCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3RvcjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRp
dmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0cnVjdG9y
LmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAg
ICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1
Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhwU3RydWN0dXJlKToKKyAgICAgICAgKEpT
Qzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpTQzo6ZXNTcGVjUmVnRXhwQ3JlYXRlKToK
KyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGlt
ZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFNldCk6CisgICAg
ICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0
cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9XZWFrTWFwQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFrTWFwKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNv
bnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1NldCk6CisgICAgICAgICogd2FzbS9qcy9X
ZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29u
c3RydWN0SlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcik6CisgICAgICAgICogd2FzbS9qcy9XZWJB
c3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RK
U1dlYkFzc2VtYmx5SW5zdGFuY2UpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlMaW5r
RXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEpTV2ViQXNzZW1i
bHlMaW5rRXJyb3IpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1
Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3I6OmNy
ZWF0ZU1vZHVsZSk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SlNXZWJBc3NlbWJseVJ1bnRp
bWVFcnJvcik6CisKIDIwMjAtMDQtMTIgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIEVuYWJsZSB0aGUgYWJpbGl0eSB0byBidWlsZCB0aGUgQVNNIExMSW50IGZvciBB
Uk12N2suCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5j
cHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3Bl
cmF0aW9ucy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5Myw3ICszOTMsMTAgQEAgSlNDZWxsKiBK
SVRfT1BFUkFUSU9OIG9wZXJhdGlvbkNyZWF0ZVBybwogICAgIENhbGxGcmFtZSogY2FsbEZyYW1l
ID0gREVDTEFSRV9DQUxMX0ZSQU1FKHZtKTsKICAgICBKSVRPcGVyYXRpb25Qcm9sb2d1ZUNhbGxG
cmFtZVRyYWNlciB0cmFjZXIodm0sIGNhbGxGcmFtZSk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmpl
Y3QtPnByb21pc2VDb25zdHJ1Y3RvcigpLCBjb25zdHJ1Y3RvciwgZ2xvYmFsT2JqZWN0LT5wcm9t
aXNlU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVy
ZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkt
PnByb21pc2VTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2Jq
ZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3IsIGJhc2VTdHJ1Y3R1cmUpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgIFJFTEVBU0VfQU5E
X1JFVFVSTihzY29wZSwgSlNQcm9taXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSkpOwogfQpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1
bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNhbGwKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5j
RnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkKIHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsKLSAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jKSk7CisgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYywgY2FsbEZyYW1lLT5uZXdU
YXJnZXQoKSkpOwogfQogCiBBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jRnVuY3Rpb25D
b25zdHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBBcmdMaXN0IGFy
Z3MoY2FsbEZyYW1lKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0
aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1v
ZGU6OkFzeW5jR2VuZXJhdG9yKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1
Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1
Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvciwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQog
CiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jR2VuZXJhdG9yRnVuY3Rp
b25Db25zdHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3Bw
CShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29s
ZWFuQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Myw3ICs0MywxMCBAQCBzdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFs
T2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
ICAgICBKU1ZhbHVlIGJvb2xlYW4gPSBqc0Jvb2xlYW4oY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50
b0Jvb2xlYW4oZ2xvYmFsT2JqZWN0KSk7Ci0gICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9i
amVjdC0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgp
KTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5n
bG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJl
KiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFz
ZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFs
dWUoKSk7CiAgICAgQm9vbGVhbk9iamVjdCogb2JqID0gQm9vbGVhbk9iamVjdDo6Y3JlYXRlKHZt
LCBib29sZWFuU3RydWN0dXJlKTsKICAgICBvYmotPnNldEludGVybmFsVmFsdWUodm0sIGJvb2xl
YW4pOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhz
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25T
bG93UGF0aHMuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yODQsNyArMjg0
LDggQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9wcm9taXNlKQogICAgICAgICBD
SEVDS19FWENFUFRJT04oKTsKICAgICAgICAgcmVzdWx0ID0gSlNJbnRlcm5hbFByb21pc2U6OmNy
ZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9IGVsc2UgewotICAgICAgICBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3JB
c09iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlU3RydWN0dXJlKCkpOworICAgICAgICBTdHJ1
Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBjb25zdHJ1Y3RvckFzT2JqZWN0LT5nbG9iYWxPYmplY3Qo
dm0pLT5wcm9taXNlU3RydWN0dXJlKCk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBn
bG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3RvcigpLCBjb25zdHJ1Y3RvckFzT2JqZWN0LCBi
YXNlU3RydWN0dXJlKTsKICAgICAgICAgQ0hFQ0tfRVhDRVBUSU9OKCk7CiAgICAgICAgIHJlc3Vs
dCA9IEpTUHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIH0KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQzLDcgKzE0Myw4IEBAIEpTT2JqZWN0KiBj
b25zdHJ1Y3REYXRlKEpTR2xvYmFsT2JqZWN0KiAKICAgICAgICAgdmFsdWUgPSBtaWxsaXNlY29u
ZHNGcm9tQ29tcG9uZW50cyhnbG9iYWxPYmplY3QsIGFyZ3MsIFdURjo6TG9jYWxUaW1lKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAotICAgIFN0cnVjdHVyZSog
ZGF0ZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5kYXRlQ29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0
LCBnbG9iYWxPYmplY3QtPmRhdGVTdHJ1Y3R1cmUoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3Ry
dWN0dXJlID0gKG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2
bSkgOiBnbG9iYWxPYmplY3QpLT5kYXRlU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBkYXRl
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGJh
c2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwog
CiAgICAgcmV0dXJuIERhdGVJbnN0YW5jZTo6Y3JlYXRlKHZtLCBkYXRlU3RydWN0dXJlLCB2YWx1
ZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3
LDEwIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0RXIKICAgICBWTSYg
dm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1df
U0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7
Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBj
YWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPmVycm9yU3RydWN0dXJlKCkpOwor
ICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NF
UlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9
IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmVycm9yU3RydWN0dXJlKCk7
CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBu
ZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1
ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxPYmplY3QsIGVycm9yU3RydWN0
dXJlLCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFsc2UpKSk7CiB9CkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1MiwxOSArMTUy
LDIwIEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEUKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAgICAgfQogCisgICAgSlNHbG9iYWxPYmplY3QqIHN0cnVjdHVyZUds
b2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSkgOiBnbG9iYWxPYmplY3Q7CiAgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBudWxscHRy
OwogICAgIHN3aXRjaCAoZnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlKSB7CiAgICAgY2FzZSBGdW5j
dGlvbkNvbnN0cnVjdGlvbk1vZGU6OkZ1bmN0aW9uOgotICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1
bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhwKGdsb2JhbE9iamVjdCwgZnVuY3Rp
b24pOworICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVGb3JO
ZXdGdW5jRXhwKHN0cnVjdHVyZUdsb2JhbE9iamVjdCwgZnVuY3Rpb24pOwogICAgICAgICBicmVh
azsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6R2VuZXJhdG9yOgotICAgICAg
ICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmdlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7
CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVu
Y3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0
cnVjdGlvbk1vZGU6OkFzeW5jOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFz
eW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xv
YmFsT2JqZWN0LT5hc3luY0Z1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvcjoKLSAgICAgICAg
c3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJl
KCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+YXN5bmNHZW5l
cmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICB9CiAKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0
b3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtOTEsNyArOTEsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
cwogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIGxldCBuZXdUYXJnZXQgYmUg
dGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmplY3QsIGVsc2UgbGV0IG5ld1RhcmdldCBiZSBOZXdUYXJn
ZXQuCiAgICAgLy8gMi4gTGV0IGNvbGxhdG9yIGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVj
dG9yKG5ld1RhcmdldCwgJUNvbGxhdG9yUHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZB
YnJ1cHQoY29sbGF0b3IpLgotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmNvbGxhdG9yU3RydWN0dXJlKHZtKSk7
CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFT
U0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJl
ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+Y29sbGF0b3JTdHJ1Y3R1
cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBu
ZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxDb2xsYXRvciogY29sbGF0b3IgPSBJbnRsQ29s
bGF0b3I6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQoY29sbGF0b3IpOwpAQCAt
MTA5LDE0ICsxMTIsMTMgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2Fs
bAogICAgIC8vIE5ld1RhcmdldCBpcyBhbHdheXMgdW5kZWZpbmVkIHdoZW4gY2FsbGVkIGFzIGEg
ZnVuY3Rpb24uCiAKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7Ci0gICAgSW50bENv
bGxhdG9yQ29uc3RydWN0b3IqIGNhbGxlZSA9IGpzQ2FzdDxJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rv
cio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7CiAKICAgICAvLyBGSVhNRTogQ29sbGF0b3IgZG9l
cyBub3QgZ2V0IHRoZSB3b3JrYXJvdW5kIGZvciBFQ01BLTQwMiAxLjAgY29tcGF0aWJpbGl0eS4K
ICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUzNjc5CiAK
ICAgICAvLyAyLiBMZXQgY29sbGF0b3IgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3Io
bmV3VGFyZ2V0LCAlQ29sbGF0b3JQcm90b3R5cGUlKS4KICAgICAvLyAzLiBSZXR1cm5JZkFicnVw
dChjb2xsYXRvcikuCi0gICAgSW50bENvbGxhdG9yKiBjb2xsYXRvciA9IEludGxDb2xsYXRvcjo6
Y3JlYXRlKHZtLCBjYWxsZWUtPmNvbGxhdG9yU3RydWN0dXJlKHZtKSk7CisgICAgSW50bENvbGxh
dG9yKiBjb2xsYXRvciA9IEludGxDb2xsYXRvcjo6Y3JlYXRlKHZtLCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCktPmdsb2JhbE9iamVjdCh2bSktPmNvbGxhdG9yU3RydWN0dXJlKCkpOwogICAgIEFTU0VS
VChjb2xsYXRvcik7CiAKICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZUNvbGxhdG9yKGNvbGxh
dG9yLCBsb2NhbGVzLCBvcHRpb25zKS4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYw
MDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3Ry
dWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNDQsOCArNDQsNiBAQCBwdWJsaWM6CiAKICAgICBE
RUNMQVJFX0lORk87CiAKLSAgICBTdHJ1Y3R1cmUqIGNvbGxhdG9yU3RydWN0dXJlKFZNJikgY29u
c3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPmNvbGxhdG9yU3RydWN0dXJlKCk7IH0KLQogcHJv
dGVjdGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJbnRsQ29sbGF0b3JQcm90b3R5
cGUqKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYw
MDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0
Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSw3ICs5MSwxMCBAQCBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgLy8gMS4gSWYgTmV3VGFyZ2V0
IGlzIHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0aGUgYWN0aXZlIGZ1bmN0aW9uIG9iamVj
dCwgZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1RhcmdldC4KICAgICAvLyAyLiBMZXQgZGF0ZVRp
bWVGb3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGUlKS4KICAgICAvLyAzLiBSZXR1cm5JZkFicnVwdChkYXRlVGlt
ZUZvcm1hdCkuCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUo
dm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7Cisg
ICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1
Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5kYXRlVGltZUZv
cm1hdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBk
YXRlVGltZUZvcm1hdCA9IEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUp
OwogICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CkBAIC0xMDgsMTQgKzExMSwxMiBAQCBzdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsCiAgICAgLy8gMS4gSWYgTmV3VGFy
Z2V0IGlzIHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0aGUgYWN0aXZlIGZ1bmN0aW9uIG9i
amVjdCwgZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1RhcmdldC4KICAgICAvLyBOZXdUYXJnZXQg
aXMgYWx3YXlzIHVuZGVmaW5lZCB3aGVuIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLgogCi0gICAgSW50
bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqIGNhbGxlZSA9IGpzQ2FzdDxJbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0KICAgICAvLyBGSVhN
RTogV29ya2Fyb3VuZCB0byBwcm92aWRlIGNvbXBhdGliaWxpdHkgd2l0aCBFQ01BLTQwMiAxLjAg
Y2FsbC9hcHBseSBwYXR0ZXJucy4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTUzNjc5Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RJ
bnRsSW5zdGFuY2VXaXRoV29ya2Fyb3VuZEZvckxlZ2FjeUludGxDb25zdHJ1Y3RvcjxJbnRsRGF0
ZVRpbWVGb3JtYXQ+KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT50aGlzVmFsdWUoKSwgY2FsbGVl
LCBbJl0gKFZNJiB2bSkgeworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0SW50
bEluc3RhbmNlV2l0aFdvcmthcm91bmRGb3JMZWdhY3lJbnRsQ29uc3RydWN0b3I8SW50bERhdGVU
aW1lRm9ybWF0PihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCksIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSwgWyZdIChWTSYgdm0pIHsKICAgICAgICAgLy8gMi4gTGV0IGRhdGVUaW1l
Rm9ybWF0IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1RhcmdldCwgJURhdGVU
aW1lRm9ybWF0UHJvdG90eXBlJSkuCiAgICAgICAgIC8vIDMuIFJldHVybklmQWJydXB0KGRhdGVU
aW1lRm9ybWF0KS4KLSAgICAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCA9
IEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlKHZtLCBjYWxsZWUtPmRhdGVUaW1lRm9ybWF0U3Ry
dWN0dXJlKHZtKSk7CisgICAgICAgIEludGxEYXRlVGltZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQg
PSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2bSwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLT5n
bG9iYWxPYmplY3Qodm0pLT5kYXRlVGltZUZvcm1hdFN0cnVjdHVyZSgpKTsKICAgICAgICAgQVNT
RVJUKGRhdGVUaW1lRm9ybWF0KTsKIAogICAgICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKS4KSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0Q29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDQsOCArNDQsNiBAQCBwdWJsaWM6CiAKICAgICBERUNMQVJFX0lORk87CiAK
LSAgICBTdHJ1Y3R1cmUqIGRhdGVUaW1lRm9ybWF0U3RydWN0dXJlKFZNJikgY29uc3QgeyByZXR1
cm4gZ2xvYmFsT2JqZWN0KCktPmRhdGVUaW1lRm9ybWF0U3RydWN0dXJlKCk7IH0KLQogcHJvdGVj
dGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGUqKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJl
ckZvcm1hdENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAw
MDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29u
c3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSw3ICs5MSwxMCBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgLy8gMS4gSWYgTmV3VGFyZ2V0IGlz
IHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0aGUgYWN0aXZlIGZ1bmN0aW9uIG9iamVjdCwg
ZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1RhcmdldC4KICAgICAvLyAyLiBMZXQgbnVtYmVyRm9y
bWF0IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1RhcmdldCwgJU51bWJlckZv
cm1hdFByb3RvdHlwZSUpLgogICAgIC8vIDMuIFJldHVybklmQWJydXB0KG51bWJlckZvcm1hdCku
Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKSwganNDYXN0PEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvcio+KGNh
bGxGcmFtZS0+anNDYWxsZWUoKSktPm51bWJlckZvcm1hdFN0cnVjdHVyZSh2bSkpOworICAgIEpT
VmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3
VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2Jq
ZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51bWJlckZvcm1hdFN0cnVjdHVyZSgp
OworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1Rh
cmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5j
b2RlZEpTVmFsdWUoKSk7CiAgICAgSW50bE51bWJlckZvcm1hdCogbnVtYmVyRm9ybWF0ID0gSW50
bE51bWJlckZvcm1hdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIEFTU0VSVChudW1iZXJG
b3JtYXQpOwpAQCAtMTA4LDE0ICsxMTEsMTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY2FsbAogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIGxldCBu
ZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmplY3QsIGVsc2UgbGV0IG5ld1Rhcmdl
dCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gTmV3VGFyZ2V0IGlzIGFsd2F5cyB1bmRlZmluZWQgd2hl
biBjYWxsZWQgYXMgYSBmdW5jdGlvbi4KIAotICAgIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
ciogY2FsbGVlID0ganNDYXN0PEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvcio+KGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSk7Ci0KICAgICAvLyBGSVhNRTogV29ya2Fyb3VuZCB0byBwcm92aWRlIGNv
bXBhdGliaWxpdHkgd2l0aCBFQ01BLTQwMiAxLjAgY2FsbC9hcHBseSBwYXR0ZXJucy4KICAgICAv
LyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUzNjc5Ci0gICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RJbnRsSW5zdGFuY2VXaXRoV29ya2Fyb3VuZEZv
ckxlZ2FjeUludGxDb25zdHJ1Y3RvcjxJbnRsTnVtYmVyRm9ybWF0PihnbG9iYWxPYmplY3QsIGNh
bGxGcmFtZS0+dGhpc1ZhbHVlKCksIGNhbGxlZSwgWyZdIChWTSYgdm0pIHsKKyAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEludGxJbnN0YW5jZVdpdGhXb3JrYXJvdW5kRm9yTGVn
YWN5SW50bENvbnN0cnVjdG9yPEludGxOdW1iZXJGb3JtYXQ+KGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLT50aGlzVmFsdWUoKSwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBbJl0gKFZNJiB2bSkgewog
ICAgICAgICAvLyAyLiBMZXQgbnVtYmVyRm9ybWF0IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0
cnVjdG9yKG5ld1RhcmdldCwgJU51bWJlckZvcm1hdFByb3RvdHlwZSUpLgogICAgICAgICAvLyAz
LiBSZXR1cm5JZkFicnVwdChudW1iZXJGb3JtYXQpLgotICAgICAgICBJbnRsTnVtYmVyRm9ybWF0
KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0OjpjcmVhdGUodm0sIGNhbGxlZS0+bnVt
YmVyRm9ybWF0U3RydWN0dXJlKHZtKSk7CisgICAgICAgIEludGxOdW1iZXJGb3JtYXQqIG51bWJl
ckZvcm1hdCA9IEludGxOdW1iZXJGb3JtYXQ6OmNyZWF0ZSh2bSwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLT5nbG9iYWxPYmplY3Qodm0pLT5udW1iZXJGb3JtYXRTdHJ1Y3R1cmUoKSk7CiAgICAgICAg
IEFTU0VSVChudW1iZXJGb3JtYXQpOwogCiAgICAgICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXpl
TnVtYmVyRm9ybWF0KG51bWJlckZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykuCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9y
bWF0Q29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ0LDggKzQ0LDYgQEAgcHVibGljOgogCiAgICAgREVDTEFSRV9JTkZPOwogCi0gICAgU3Ry
dWN0dXJlKiBudW1iZXJGb3JtYXRTdHJ1Y3R1cmUoVk0mKSBjb25zdCB7IHJldHVybiBnbG9iYWxP
YmplY3QoKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCk7IH0KLQogcHJvdGVjdGVkOgogICAgIHZv
aWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlKik7CiAKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVj
dG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
UGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtODksNyArODksMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29ucwogCiAgICAgLy8gMTMuMi4xIEludGwuUGx1cmFsUnVsZXMgKFsgbG9jYWxl
cyBbICwgb3B0aW9ucyBdIF0pCiAgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hNDAy
LyNzZWMtaW50bC5wbHVyYWxydWxlcwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsUGx1cmFs
UnVsZXNDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPnBsdXJhbFJ1bGVzU3Ry
dWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBi
YXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+cGx1
cmFsUnVsZXNTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxQbHVyYWxSdWxlcyog
cGx1cmFsUnVsZXMgPSBJbnRsUGx1cmFsUnVsZXM6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAg
ICBBU1NFUlQocGx1cmFsUnVsZXMpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5oCShyZXZpc2lv
biAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVs
ZXNDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw4ICs0NCw2IEBAIHB1YmxpYzoK
IAogICAgIERFQ0xBUkVfSU5GTzsKIAotICAgIFN0cnVjdHVyZSogcGx1cmFsUnVsZXNTdHJ1Y3R1
cmUoVk0mKSBjb25zdCB7IHJldHVybiBnbG9iYWxPYmplY3QoKS0+cGx1cmFsUnVsZXNTdHJ1Y3R1
cmUoKTsgfQotCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIEludGxQ
bHVyYWxSdWxlc1Byb3RvdHlwZSopOwogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAJKHJldmlz
aW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXJDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc5LDkgKzc5LDEwIEBAIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNHZW5lcmljQXIKICAgICBWTSYgdm0gPSBnbG9iYWxP
YmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwog
Ci0gICAgSlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvciogY29uc3RydWN0b3IgPSBqc0Nh
c3Q8SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUo
KSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpz
Q2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxPYmpl
Y3QoKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpKTsKKyAgICBKU1ZhbHVlIG5l
d1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5p
c09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdU
YXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5hcnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5nTW9k
ZSk7CisgICAgU3RydWN0dXJlKiBhcnJheUJ1ZmZlclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHsgfSk7CiAKICAgICB1bnNpZ25lZCBsZW5ndGg7CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAkocmV2aXNpb24gMjYwMDAzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTE3NCwxOCArMTc0LDE3IEBAIEpTT2JqZWN0KiBKU0Z1bmN0aW9uOjpwcm90b3R5
cGVGb3JDb25zdHIKICAgICBzY29wZS5yZWxlYXNlQXNzZXJ0Tm9FeGNlcHRpb24oKTsKICAgICBp
ZiAoTElLRUxZKHByb3RvdHlwZS5pc09iamVjdCgpKSkKICAgICAgICAgcmV0dXJuIGFzT2JqZWN0
KHByb3RvdHlwZSk7CisgICAgaWYgKGlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkpCisgICAgICAg
IHJldHVybiB0aGlzLT5nbG9iYWxPYmplY3QoKS0+b2JqZWN0UHJvdG90eXBlKCk7CiAKLSAgICBK
U0dsb2JhbE9iamVjdCogdGhpc0dsb2JhbE9iamVjdCA9IHRoaXMtPmdsb2JhbE9iamVjdCgpOwot
ICAgIGlmICghaXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICAvLyBodHRwczov
L3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1nZW5lcmF0b3ItZnVuY3Rpb24tZGVmaW5pdGlv
bnMtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGVib2R5Ci0gICAgICAgIGlmIChpc0dlbmVyYXRv
cldyYXBwZXJQYXJzZU1vZGUoanNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgpKSkKLSAgICAgICAg
ICAgIHJldHVybiB0aGlzR2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JQcm90b3R5cGUoKTsKLQotICAg
ICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1hc3luY2dlbmVyYXRv
ci1kZWZpbml0aW9ucy1ldmFsdWF0ZWJvZHkKLSAgICAgICAgaWYgKGlzQXN5bmNHZW5lcmF0b3JX
cmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpCi0gICAgICAgICAg
ICByZXR1cm4gdGhpc0dsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JQcm90b3R5cGUoKTsKLSAg
ICB9Ci0gICAgcmV0dXJuIHRoaXNHbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpOworICAg
IEpTR2xvYmFsT2JqZWN0KiBzY29wZUdsb2JhbE9iamVjdCA9IHRoaXMtPnNjb3BlKCktPmdsb2Jh
bE9iamVjdCgpOworICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLWdl
bmVyYXRvci1mdW5jdGlvbi1kZWZpbml0aW9ucy1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0ZWJv
ZHkKKyAgICBpZiAoaXNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5w
YXJzZU1vZGUoKSkpCisgICAgICAgIHJldHVybiBzY29wZUdsb2JhbE9iamVjdC0+Z2VuZXJhdG9y
UHJvdG90eXBlKCk7CisgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMt
YXN5bmNnZW5lcmF0b3ItZGVmaW5pdGlvbnMtZXZhbHVhdGVib2R5CisgICAgaWYgKGlzQXN5bmNH
ZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpCisg
ICAgICAgIHJldHVybiBzY29wZUdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JQcm90b3R5cGUo
KTsKKyAgICByZXR1cm4gc2NvcGVHbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpOwogfQog
CiBGdW5jdGlvblJhcmVEYXRhKiBKU0Z1bmN0aW9uOjphbGxvY2F0ZUFuZEluaXRpYWxpemVSYXJl
RGF0YShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBzaXplX3QgaW5saW5lQ2FwYWNpdHkp
CkBAIC00NjAsMTYgKzQ1OSwxNyBAQCBib29sIEpTRnVuY3Rpb246OmdldE93blByb3BlcnR5U2xv
dChKU09iCiAgICAgICAgIHVuc2lnbmVkIGF0dHJpYnV0ZXM7CiAgICAgICAgIFByb3BlcnR5T2Zm
c2V0IG9mZnNldCA9IHRoaXNPYmplY3QtPmdldERpcmVjdE9mZnNldCh2bSwgcHJvcGVydHlOYW1l
LCBhdHRyaWJ1dGVzKTsKICAgICAgICAgaWYgKCFpc1ZhbGlkT2Zmc2V0KG9mZnNldCkpIHsKKyAg
ICAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBzY29wZUdsb2JhbE9iamVjdCA9IHRoaXNPYmplY3Qt
PnNjb3BlKCktPmdsb2JhbE9iamVjdCgpOwogICAgICAgICAgICAgSlNPYmplY3QqIHByb3RvdHlw
ZSA9IG51bGxwdHI7CiAgICAgICAgICAgICBpZiAoaXNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2Rl
KHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpIHsKICAgICAgICAgICAg
ICAgICAvLyBVbmxpa2UgZnVuY3Rpb24gaW5zdGFuY2VzLCB0aGUgb2JqZWN0IHRoYXQgaXMgdGhl
IHZhbHVlIG9mIHRoZSBhIEdlbmVyYXRvckZ1bmN0aW9uJ3MgcHJvdG90eXBlCiAgICAgICAgICAg
ICAgICAgLy8gcHJvcGVydHkgZG9lcyBub3QgaGF2ZSBhIGNvbnN0cnVjdG9yIHByb3BlcnR5IHdo
b3NlIHZhbHVlIGlzIHRoZSBHZW5lcmF0b3JGdW5jdGlvbiBpbnN0YW5jZS4KICAgICAgICAgICAg
ICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1nZW5lcmF0b3JmdW5j
dGlvbi1pbnN0YW5jZXMtcHJvdG90eXBlCi0gICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29u
c3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCB0aGlzT2JqZWN0LT5nbG9iYWxPYmplY3Qo
KS0+Z2VuZXJhdG9yUHJvdG90eXBlKCkpOworICAgICAgICAgICAgICAgIHByb3RvdHlwZSA9IGNv
bnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCwgc2NvcGVHbG9iYWxPYmplY3QtPmdlbmVy
YXRvclByb3RvdHlwZSgpKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNBc3luY0dlbmVyYXRv
cldyYXBwZXJQYXJzZU1vZGUodGhpc09iamVjdC0+anNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgp
KSkKLSAgICAgICAgICAgICAgICBwcm90b3R5cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChnbG9i
YWxPYmplY3QsIHRoaXNPYmplY3QtPmdsb2JhbE9iamVjdCgpLT5hc3luY0dlbmVyYXRvclByb3Rv
dHlwZSgpKTsKKyAgICAgICAgICAgICAgICBwcm90b3R5cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVj
dChnbG9iYWxPYmplY3QsIHNjb3BlR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvclByb3RvdHlw
ZSgpKTsKICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIHByb3RvdHlwZSA9IGNv
bnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCk7CisgICAgICAgICAgICAgICAgcHJvdG90
eXBlID0gY29uc3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCBzY29wZUdsb2JhbE9iamVj
dC0+b2JqZWN0UHJvdG90eXBlKCkpOwogICAgICAgICAgICAgICAgIHByb3RvdHlwZS0+cHV0RGly
ZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgdGhpc09iamVjdCwgc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogICAgICAgICAg
ICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBl
ZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxp
bmVzLmgJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIxMSw5ICsyMTEsMTAgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RHZQogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBJbnRlcm5hbEZ1bmN0aW9uKiBmdW5j
dGlvbiA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsK
LSAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGZ1bmN0aW9uLT5nbG9iYWxPYmplY3Qo
KS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7
Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKSwgcGFyZW50U3RydWN0dXJlKTsKKyAgICBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVj
dCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQp
LT5nbG9iYWxPYmplY3Qodm0pLT50eXBlZEFycmF5U3RydWN0dXJlKFZpZXdDbGFzczo6VHlwZWRB
cnJheVN0b3JhZ2VUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5q
c0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgc2l6ZV90IGFyZ0NvdW50ID0g
Y2FsbEZyYW1lLT5hcmd1bWVudENvdW50KCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaAkocmV2aXNpb24gMjYw
MDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxp
bmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw3ICsxMDEsOSBAQCBBTFdBWVNfSU5MSU5FIGJv
b2wgSlNHbG9iYWxPYmplY3Q6OmlzU2V0CiAKIEFMV0FZU19JTkxJTkUgU3RydWN0dXJlKiBKU0ds
b2JhbE9iamVjdDo6YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9u
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEluZGV4aW5nVHlwZSBpbmRleGluZ1R5cGUs
IEpTVmFsdWUgbmV3VGFyZ2V0KSBjb25zdAogewotICAgIHJldHVybiBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+YXJy
YXlDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBl
RHVyaW5nQWxsb2NhdGlvbihpbmRleGluZ1R5cGUpKTsKKyAgICBWTSYgdm0gPSBnbG9iYWxPYmpl
Y3QtPnZtKCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gKG5ld1RhcmdldCA/IGFz
T2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9iYWxPYmplY3QpLT5hcnJh
eVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKTsK
KyAgICByZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmFycmF5Q29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBi
YXNlU3RydWN0dXJlKTsKIH0KIAogaW5saW5lIEpTRnVuY3Rpb24qIEpTR2xvYmFsT2JqZWN0Ojp0
aHJvd1R5cGVFcnJvckZ1bmN0aW9uKCkgY29uc3QgeyByZXR1cm4ganNDYXN0PEpTRnVuY3Rpb24q
PihsaW5rVGltZUNvbnN0YW50KExpbmtUaW1lQ29uc3RhbnQ6OnRocm93VHlwZUVycm9yRnVuY3Rp
b24pKTsgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nywx
MCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZt
ID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1ND
T1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJl
KCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAg
ICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVj
dHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm1hcFN0cnVjdHVy
ZSgpOworICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1l
LT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2
ZUVycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUsMTAgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBOYXRpdmVFcnJvcgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAg
ICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNz
YWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2Fz
dDxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZXJyb3JT
dHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUq
IGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5l
cnJvclN0cnVjdHVyZShlcnJvclR5cGUpOworICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBBU1NFUlQo
ZXJyb3JTdHJ1Y3R1cmUpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6
ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxPYmplY3QsIGVycm9yU3RydWN0dXJl
LCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFsc2UpKSk7CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCShy
ZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJD
b25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkyLDcgKzkyLDEwIEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBhdXRvIHNjb3BlID0gREVDTEFS
RV9USFJPV19TQ09QRSh2bSk7CiAgICAgZG91YmxlIG4gPSBjYWxsRnJhbWUtPmFyZ3VtZW50Q291
bnQoKSA/IGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkudG9OdW1iZXIoZ2xvYmFsT2Jq
ZWN0KSA6IDA7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUo
KSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2Fs
bEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5udW1iZXJPYmplY3RTdHJ1Y3R1cmUo
KSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAg
IEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0
dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+bnVtYmVyT2JqZWN0
U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIE51bWJlck9iamVjdCogb2JqZWN0ID0g
TnVtYmVyT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lv
biAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNyw3ICsxMjcsOCBAQCBzdGF0aWMgQUxXQVlT
X0lOTElORSBKU09iamVjdCogY29uc3RydWN0CiAgICAgLy8gMS4gSWYgTmV3VGFyZ2V0IGlzIG5l
aXRoZXIgdW5kZWZpbmVkIG5vciB0aGUgYWN0aXZlIGZ1bmN0aW9uLCB0aGVuCiAgICAgaWYgKG5l
d1RhcmdldCAmJiBuZXdUYXJnZXQgIT0gb2JqZWN0Q29uc3RydWN0b3IpIHsKICAgICAgICAgLy8g
YS4gUmV0dXJuID8gT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IoTmV3VGFyZ2V0LCAiJU9i
amVjdFByb3RvdHlwZSUiKS4KLSAgICAgICAgU3RydWN0dXJlKiBvYmplY3RTdHJ1Y3R1cmUgPSBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG9i
amVjdENvbnN0cnVjdG9yLCBuZXdUYXJnZXQsIGdsb2JhbE9iamVjdC0+b2JqZWN0U3RydWN0dXJl
Rm9yT2JqZWN0Q29uc3RydWN0b3IoKSk7CisgICAgICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVy
ZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm9iamVjdFN0cnVjdHVy
ZUZvck9iamVjdENvbnN0cnVjdG9yKCk7CisgICAgICAgIFN0cnVjdHVyZSogb2JqZWN0U3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAgICAgICAgIHJldHVybiBj
b25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgb2JqZWN0U3RydWN0dXJlKTsKICAgICB9CkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9S
ZWdFeHBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3MiwxMCArMTcyLDkgQEAg
Ym9vbCBzZXRSZWdFeHBDb25zdHJ1Y3Rvck11bHRpbGluZShKU0dsbwogCiBpbmxpbmUgU3RydWN0
dXJlKiBnZXRSZWdFeHBTdHJ1Y3R1cmUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBuZXdUYXJnZXQpCiB7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmpl
Y3QtPnJlZ0V4cFN0cnVjdHVyZSgpOwotICAgIGlmIChuZXdUYXJnZXQgIT0ganNVbmRlZmluZWQo
KSkKLSAgICAgICAgc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnJlZ0V4cENvbnN0cnVjdG9yKCks
IG5ld1RhcmdldCwgc3RydWN0dXJlKTsKLSAgICByZXR1cm4gc3RydWN0dXJlOworICAgIFZNJiB2
bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSAo
bmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKSA6IGdsb2Jh
bE9iamVjdCktPnJlZ0V4cFN0cnVjdHVyZSgpOworICAgIHJldHVybiBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cmVn
RXhwQ29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKIH0KIAogaW5saW5l
IE9wdGlvblNldDxZYXJyOjpGbGFncz4gdG9GbGFncyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU1ZhbHVlIGZsYWdzKQpAQCAtMjI5LDcgKzIyOCw3IEBAIEpTT2JqZWN0KiBjb25zdHJ1
Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QKICAgICBib29sIGNvbnN0cnVjdEFzUmVnZXhwID0gaXNS
ZWdFeHAodm0sIGdsb2JhbE9iamVjdCwgcGF0dGVybkFyZyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgbnVsbHB0cik7CiAKLSAgICBpZiAobmV3VGFyZ2V0LmlzVW5kZWZpbmVkKCkg
JiYgY29uc3RydWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgeworICAgIGlm
ICghbmV3VGFyZ2V0ICYmIGNvbnN0cnVjdEFzUmVnZXhwICYmIGZsYWdzQXJnLmlzVW5kZWZpbmVk
KCkpIHsKICAgICAgICAgSlNWYWx1ZSBjb25zdHJ1Y3RvciA9IHBhdHRlcm5BcmcuZ2V0KGdsb2Jh
bE9iamVjdCwgdm0ucHJvcGVydHlOYW1lcy0+Y29uc3RydWN0b3IpOwogICAgICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICAgICAgaWYgKGNhbGxlZSA9PSBjb25z
dHJ1Y3RvcikgewpAQCAtMjc0LDcgKzI3Myw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgZXNTcGVjUmVnRXgKIHsKICAgICBKU1ZhbHVlIHBhdHRlcm5BcmcgPSBjYWxsRnJhbWUtPmFy
Z3VtZW50KDApOwogICAgIEpTVmFsdWUgZmxhZ3NBcmcgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDEp
OwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVjdCwg
anNVbmRlZmluZWQoKSwgcGF0dGVybkFyZywgZmxhZ3NBcmcpKTsKKyAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKHJlZ0V4cENyZWF0ZShnbG9iYWxPYmplY3QsIEpTVmFsdWUoKSwgcGF0dGVybkFy
ZywgZmxhZ3NBcmcpKTsKIH0KIAogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1NwZWNJ
c1JlZ0V4cChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFt
ZSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9y
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29u
c3RydWN0b3IuaAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsNyBA
QCBwcml2YXRlOgogfTsKIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKFJlZ0V4
cENvbnN0cnVjdG9yLCBJbnRlcm5hbEZ1bmN0aW9uKTsKIAotSlNPYmplY3QqIGNvbnN0cnVjdFJl
Z0V4cChKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0g
bnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBqc1VuZGVmaW5lZCgpKTsKK0pTT2JqZWN0KiBj
b25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25zdCBBcmdMaXN0JiwgSlNPYmplY3Qq
IGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0ID0gSlNWYWx1ZSgpKTsKIAogQUxX
QVlTX0lOTElORSBib29sIGlzUmVnRXhwKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNWYWx1ZSB2YWx1ZSkKIHsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1NldENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNjcsNyArNjcsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Y29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0g
REVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmpl
Y3QtPnNldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1
Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT5zZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVy
YWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAw
MDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTE0NCw3ICsxNDQsMTAgQEAgc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsK
ICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpLCBnbG9iYWxPYmplY3QtPnN0cmluZ09iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVl
IG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1Rhcmdl
dC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChu
ZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQs
IGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsMTAg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9
IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09Q
RSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWFrTWFwU3Ry
dWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFz
ZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtN
YXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dlYWtNYXAqIHdlYWtN
YXAgPSBKU1dlYWtNYXA6OmNyZWF0ZSh2bSwgd2Vha01hcFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1
ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rv
ci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY4LDcgKzY4
LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBpZiAo
IWNhbGxGcmFtZS0+YXJndW1lbnQoMCkuaXNPYmplY3QoKSkKICAgICAgICAgcmV0dXJuIHRocm93
Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkZpcnN0IGFyZ3VtZW50IHRvIFdlYWtS
ZWYgc2hvdWxkIGJlIGFuIG9iamVjdCJfcyk7CiAKLSAgICBTdHJ1Y3R1cmUqIFdlYWtPYmplY3RS
ZWZTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KSwgZ2xvYmFsT2JqZWN0LT53ZWFrT2JqZWN0UmVmU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUg
bmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0
LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5l
d1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtPYmplY3RSZWZTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpT
VmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwgV2Vha09iamVjdFJlZlN0
cnVjdHVyZSwgY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS5nZXRPYmplY3QoKSkpKTsK
IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1Nl
dENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUs
NyArNjUsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAg
IFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdlYWtTZXRTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxG
cmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53
ZWFrU2V0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5u
ZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVj
dHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2
bSktPndlYWtTZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtTZXRTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBKU1dlYWtT
ZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0cnVjdHVyZSk7CiAg
ICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVj
dG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDcgKzQ5LDEwIEBAIHN0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBhdXRvJiB2bSA9IGdsb2JhbE9iamVj
dC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAg
SlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBhdXRvKiBzdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xv
YmFsT2JqZWN0LT53ZWJBc3NlbWJseUNvbXBpbGVFcnJvclN0cnVjdHVyZSgpKTsKKyAgICBKU1Zh
bHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1Rh
cmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVj
dChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWJBc3NlbWJseUNvbXBpbGVFcnJvclN0
cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBK
U1ZhbHVlOjplbmNvZGUoSlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcjo6Y3JlYXRlKGdsb2JhbE9i
amVjdCwgdm0sIHN0cnVjdHVyZSwgbWVzc2FnZSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5j
ZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNzUsNyArNzUsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgY29ucwogICAgIGlmICghaW1wb3J0QXJndW1lbnQuaXNVbmRlZmluZWQoKSAmJiAhaW1wb3J0
T2JqZWN0KQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJzZWNvbmQg
YXJndW1lbnQgdG8gV2ViQXNzZW1ibHkuSW5zdGFuY2UgbXVzdCBiZSB1bmRlZmluZWQgb3IgYW4g
T2JqZWN0Il9zLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIHJ1bnRpbWVUeXBlRm9yVmFsdWUodm0s
IGltcG9ydEFyZ3VtZW50KSkpKTsKICAgICAKLSAgICBTdHJ1Y3R1cmUqIGluc3RhbmNlU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2Jh
bE9iamVjdC0+d2ViQXNzZW1ibHlJbnN0YW5jZVN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5l
d1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5p
c09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdU
YXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWJBc3NlbWJseUluc3RhbmNlU3RydWN0dXJlKCk7
CisgICAgU3RydWN0dXJlKiBpbnN0YW5jZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHsgfSk7CiAKICAgICBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3RhbmNlID0gSlNXZWJB
c3NlbWJseUluc3RhbmNlOjp0cnlDcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgSlNXZWJBc3NlbWJs
eUluc3RhbmNlOjpjcmVhdGVQcml2YXRlTW9kdWxlS2V5KCksIG1vZHVsZSwgaW1wb3J0T2JqZWN0
LCBpbnN0YW5jZVN0cnVjdHVyZSwgUmVmPFdhc206Ok1vZHVsZT4obW9kdWxlLT5tb2R1bGUoKSks
IFdhc206OkNyZWF0aW9uTW9kZTo6RnJvbUpTKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29u
c3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNDksNyArNDksMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Y29ucwogICAgIGF1dG8mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUg
PSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJh
bWUtPmFyZ3VtZW50KDApOwotICAgIGF1dG8qIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5TGlu
a0Vycm9yU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5u
ZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVj
dHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2
bSktPndlYkFzc2VtYmx5TGlua0Vycm9yU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBS
RUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYkFzc2VtYmx5TGlu
a0Vycm9yOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgc3RydWN0dXJlLCBtZXNzYWdlKSkpOwog
fQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0
b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODEsNyArMTgxLDEwIEBAIEpTV2ViQXNzZW1ibHlN
b2R1bGUqIFdlYkFzc2VtYmx5TW9kdWxlQ28KICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZt
KCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgYXV0
byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlNb2R1bGVTdHJ1Y3R1cmUoKSk7CisgICAgSlNW
YWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdU
YXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmpl
Y3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2ViQXNzZW1ibHlNb2R1bGVTdHJ1Y3R1
cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBu
ZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IG51bGxwdHIpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1dlYkFzc2VtYmx5
TW9kdWxlOjpjcmVhdGVTdHViKHZtLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgV2FzbTo6TW9k
dWxlOjp2YWxpZGF0ZVN5bmMoJnZtLndhc21Db250ZXh0LCBXVEZNb3ZlKGJ1ZmZlcikpKSk7Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJv
ckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYw
MDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUxLDcgKzUxLDEwIEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBKU1ZhbHVlIG1lc3Nh
Z2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIFN0cmluZyBtZXNzYWdlU3RyaW5nID0g
bWVzc2FnZS5pc1VuZGVmaW5lZCgpID8gU3RyaW5nKCkgOiBtZXNzYWdlLnRvV1RGU3RyaW5nKGds
b2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFs
dWUoKSk7Ci0gICAgYXV0byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlSdW50aW1lRXJyb3JT
dHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBi
YXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vi
QXNzZW1ibHlSdW50aW1lRXJyb3JTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIHJldHVy
biBKU1ZhbHVlOjplbmNvZGUoSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcjo6Y3JlYXRlKGdsb2Jh
bE9iamVjdCwgdm0sIHN0cnVjdHVyZSwgV1RGTW92ZShtZXNzYWdlU3RyaW5nKSkpOwogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396323</attachid>
            <date>2020-04-13 13:19:57 -0700</date>
            <delta_ts>2020-04-16 08:48:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20200413231955.patch</filename>
            <type>text/plain</type>
            <size>74402</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjAwMDMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDIwLTA0LTEzICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcHJvbWlzZS1wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvZXhwZWN0YXRp
b25zLnlhbWw6IE1hcmsgNzggdGVzdCBjYXNlcyBhcyBwYXNzaW5nLgorCiAyMDIwLTA0LTEyICBS
b3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KIAogICAgICAgICBbRUNNQS00
MDJdIFdlYktpdCBJbnRsIGRvZXMgbm90IGFsbG93IGNhbGVuZGFyIGFuZCBudW1iZXJpbmdTeXN0
ZW0gb3B0aW9ucwpJbmRleDogSlNUZXN0cy9zdHJlc3MvcHJvbWlzZS1wcm90by1mcm9tLWN0b3It
cmVhbG0uanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJlc3MvcHJvbWlzZS1wcm90by1mcm9t
LWN0b3ItcmVhbG0uanMJKG5vbmV4aXN0ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcHJvbWlzZS1w
cm90by1mcm9tLWN0b3ItcmVhbG0uanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxNiBAQAor
ZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkgeworICAgIGlmIChhY3R1YWwgIT09
IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2YWx1ZTogJyArIGFjdHVh
bCk7Cit9CisKK2NvbnN0IHJlYWxtQSA9IGNyZWF0ZUdsb2JhbE9iamVjdCgpOworY29uc3QgcmVh
bG1CID0gY3JlYXRlR2xvYmFsT2JqZWN0KCk7CisKK2NvbnN0IGV4ZWN1dG9yID0gZnVuY3Rpb24o
KSB7fTsKK2NvbnN0IG5ld1RhcmdldCA9IG5ldyByZWFsbUEuRnVuY3Rpb24oKTsKK25ld1Rhcmdl
dC5wcm90b3R5cGUgPSBudWxsOworCitmb3IgKGxldCBpID0gMDsgaSA8IDFlNDsgKytpKSB7Cisg
ICAgbGV0IHByb21pc2UgPSBSZWZsZWN0LmNvbnN0cnVjdChyZWFsbUIuUHJvbWlzZSwgW2V4ZWN1
dG9yXSwgbmV3VGFyZ2V0KTsKKyAgICBzaG91bGRCZShPYmplY3QuZ2V0UHJvdG90eXBlT2YocHJv
bWlzZSksIHJlYWxtQS5Qcm9taXNlLnByb3RvdHlwZSk7Cit9CkluZGV4OiBKU1Rlc3RzL3Rlc3Qy
NjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy90ZXN0MjYyL2V4cGVj
dGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNjAwMDMpCisrKyBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0
YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTYxNSwxNSArNjE1LDYgQEAgdGVzdC9hbm5l
eEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3ItYXdhaQogdGVzdC9hbm5leEIvbGFuZ3VhZ2Uvc3Rh
dGVtZW50cy9mb3Itb2YvaXRlcmF0b3ItY2xvc2UtcmV0dXJuLWVtdWxhdGVzLXVuZGVmaW5lZC10
aHJvd3Mtd2hlbi1jYWxsZWQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2J1
aWx0LWlucy9BcnJheS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0
LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1
ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvQXJy
YXkvcHJvdG90eXBlL2NvbmNhdC9hcmctbGVuZ3RoLWV4Y2VlZGluZy1pbnRlZ2VyLWxpbWl0Lmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290
IGEgUmFuZ2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwpAQCAtNjkwLDkgKzY4MSw2IEBAIHRlc3Qv
YnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9zcGxpY2UvdGgKIHRlc3QvYnVpbHQtaW5zL0FycmF5
L3Byb3RvdHlwZS91bnNoaWZ0L2NsYW1wcy10by1pbnRlZ2VyLWxpbWl0LmpzOgogICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
qzQyOTQ5NjcyOTXCuywgwqs5MDA3MTk5MjU0NzQwOTkxwrspIHRvIGJlIHRydWUnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBMZW5ndGggaXMgMioqNTMgLSAxIEV4cGVjdGVkIFNhbWVW
YWx1ZSjCqzQyOTQ5NjcyOTXCuywgwqs5MDA3MTk5MjU0NzQwOTkxwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXJyYXlC
dWZmZXJdwrssIMKrW29iamVjdCBBcnJheUJ1ZmZlcl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXJyYXlC
dWZmZXJdwrssIMKrW29iamVjdCBBcnJheUJ1ZmZlcl3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTczMiwxMiArNzIwLDYgQEAgdGVzdC9i
dWlsdC1pbnMvQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdAogdGVzdC9idWlsdC1pbnMvQXN5bmNG
cm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlL3Rocm93L2Fic2VudC12YWx1ZS1ub3QtcGFzc2VkLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBQcm9taXNlIHNob3VsZCBiZSByZWplY3RlZCwgZ290OiB1bmRlZmluZWQnCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBQcm9taXNlIHNob3VsZCBiZSByZWplY3RlZCwgZ290OiB1bmRlZmluZWQnCi10
ZXN0L2J1aWx0LWlucy9Bc3luY0Z1bmN0aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcK7LCDCq1tvYmplY3Qg
QXN5bmNGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgQXN5bmNGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dwrspIHRv
IGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBc3luY0dl
bmVyYXRvckZ1bmN0aW9uXcK7LCDCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3Cuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dwrspIHRv
IGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9Bc3luY0dlbmVyYXRvclByb3RvdHlwZS9yZXR1cm4v
cmV0dXJuLXN1c3BlbmRlZFlpZWxkLXByb21pc2UuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyOkFz
eW5jVGVzdEZhaWx1cmU6VGVzdDI2MkVycm9yOiBUZXN0MjYyRXJyb3I6IEFzeW5jR2VuZXJhdG9y
UmVzb2x2ZShnZW5lcmF0b3IsIHJlc3VsdFZhbHVlLCB0cnVlKSBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IFByb21pc2VdwrssIMKrdW53cmFwcGVkLXZhbHVlwrspIHRvIGJlIHRydWUnCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBBc3luY0dlbmVyYXRvclJlc29sdmUoZ2VuZXJhdG9yLCByZXN1bHRWYWx1ZSwg
dHJ1ZSkgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBQcm9taXNlXcK7LCDCq3Vud3JhcHBl
ZC12YWx1ZcK7KSB0byBiZSB0cnVlJwpAQCAtODA0LDkgKzc4Niw2IEBAIHRlc3QvYnVpbHQtaW5z
L0JpZ0ludC9hc1VpbnROL29yZGVyLW9mLXMKIHRlc3QvYnVpbHQtaW5zL0JpZ0ludC9jb25zdHJ1
Y3Rvci1pbnRlZ2VyLmpzOgogICBkZWZhdWx0OiAnUmFuZ2VFcnJvcjogTm90IHNhZmUgaW50ZWdl
cicKICAgc3RyaWN0IG1vZGU6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2VyJwotdGVzdC9i
dWlsdC1pbnMvQm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2ZhbHNlwrssIMKrZmFsc2XCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq2ZhbHNlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L2N1c3RvbS1wcm90by1hY2Nlc3MtZGV0YWNoZXMtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4
Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0
aHJvd24gYXQgYWxsJwpAQCAtODE2LDkgKzc5NSw2IEBAIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L2RldGFjaGVkLWJ1ZmZlci4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2xlbmd0aC5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgMScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlIDEn
Ci10ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRGF0YVZp
ZXddwrssIMKrW29iamVjdCBEYXRhVmlld13CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRGF0YVZpZXddwrss
IMKrW29iamVjdCBEYXRhVmlld13CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMg
dGhyb3duIGF0IGFsbCcKQEAgLTkyMSwxOCArODk3LDYgQEAgdGVzdC9idWlsdC1pbnMvRGF0YVZp
ZXcvcHJvdG90eXBlL3NldFVpbgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3Nl
dFVpbnQ4L2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicK
LXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3Rd
wrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2Jq
ZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJl
IHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7
LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9FcnJvci9wcm90by1mcm9t
LWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq0Vycm9ywrssIMKrRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq0Vycm9ywrssIMKrRXJyb3LCuykgdG8g
YmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2NhbGwtYmluZC10aGlzLXJlYWxtLXVu
ZGVmLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBnbG9iYWxdwrssIMKrW29iamVjdCBVbmRlZmluZWRd
wrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBnbG9iYWxdwrssIMKrW29iamVj
dCBVbmRlZmluZWRdwrspIHRvIGJlIHRydWUnCkBAIC05NTEsOSArOTE1LDYgQEAgdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vaW50ZXJuYWxzL0NvbnN0cgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24v
aW50ZXJuYWxzL0NvbnN0cnVjdC9kZXJpdmVkLXRoaXMtdW5pbml0aWFsaXplZC1yZWFsbS5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQg
Z290IGEgUmVmZXJlbmNlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFJlZmVyZW5jZUVycm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKLXRlc3QvYnVp
bHQtaW5zL0Z1bmN0aW9uL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrZnVuY3Rpb24gKCkgeycKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2Z1bmN0aW9uICgpIHsn
CiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvYmluZC9sZW5ndGgtZXhjZWVkcy1p
bnQzMi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
MMK7LCDCqzIxNDc0ODM2NDjCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywgwqsyMTQ3NDgzNjQ4wrspIHRvIGJlIHRy
dWUnCkBAIC0xMDkyLDM5ICsxMDUzLDEyIEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3Rv
dHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmluZy91
bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVG
dW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9
IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUw
MDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCiAgIHN0cmljdCBtb2Rl
OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdmdW5j
dGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVybiBi
OyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7
MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlucy9HZW5lcmF0b3JGdW5jdGlvbi9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dwrssIMKrW29iamVjdCBH
ZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dwrss
IMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQt
aW5zL0pTT04vcGFyc2UvcmV2aXZlci1vYmplY3Qtbm9uLWNvbmZpZ3VyYWJsZS1wcm9wLWNyZWF0
ZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMjLC
uywgwqsywrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqsyMsK7LCDCqzLCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5z
L01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgTWFwXcK7LCDCq1tvYmplY3QgTWFwXcK7KSB0
byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrW29iamVjdCBNYXBdwrssIMKrW29iamVjdCBNYXBdwrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXZhbEVycm9ywrssIMKrRXZhbEVycm9ywrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtFdmFsRXJyb3LCuywgwqtFdmFs
RXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SYW5nZUVy
cm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
bmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrUmFu
Z2VFcnJvcsK7LCDCq1JhbmdlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1JhbmdlRXJyb3LCuywgwqtSYW5nZUVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0
L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmVmZXJlbmNlRXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlz
IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSZWZlcmVuY2VFcnJvcsK7LCDCq1JlZmVy
ZW5jZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSZWZl
cmVuY2VFcnJvcsK7LCDCq1JlZmVyZW5jZUVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtTeW50YXhFcnJvcsK7LCDCq1N5bnRheEVycm9ywrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90
eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtTeW50YXhFcnJvcsK7LCDCq1N5
bnRheEVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvVHlw
ZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
VHlwZUVycm9ywrssIMKrVHlwZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUowqtUeXBlRXJyb3LCuywgwqtUeXBlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
YnVpbHQtaW5zL05hdGl2ZUVycm9ycy9VUklFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VSSUVycm9ywrssIMKrVVJJRXJyb3LCuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VSSUVycm9ywrssIMKrVVJJRXJyb3LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051bWJlci9iaWdpbnQtY29udmVyc2lvbi5q
czoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVyc2lvbiBmcm9tICdCaWdJbnQnIHRvICdu
dW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0IG1vZGU6ICJUeXBlRXJyb3I6IENvbnZl
cnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBpcyBub3QgYWxsb3dlZC4iCi10ZXN0L2J1
aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqswwrssIMKrMMK7KSB0byBiZSB0cnVlJwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDC
qzDCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9lbnRyaWVzL29yZGVyLWFm
dGVyLWRlZmluZS1wcm9wZXJ0eS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4gJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8gaGF2
ZSB0aGUgc2FtZSBjb250ZW50cy4gJwpAQCAtMTE0Nyw5ICsxMDgxLDYgQEAgdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2ludGVybmFscy9EZWZpbmVPdwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L2tleXMv
b3JkZXItYWZ0ZXItZGVmaW5lLXByb3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBbYiwgYV0gYW5kIFthLCBiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAn
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbYiwgYV0gYW5kIFthLCBi
XSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAnCi10ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwog
dGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvdHlwZS90b1N0cmluZy9wcm94eS1mdW5jdGlvbi5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBGdW5jdGlvbl3CuykgdG8gYmUg
dHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgRnVuY3Rpb25dwrsp
IHRvIGJlIHRydWUnCkBAIC0xMTg2LDkgKzExMTcsNiBAQCB0ZXN0L2J1aWx0LWlucy9Qcm9taXNl
L2NyZWF0ZS1yZXNvbHZpbmctCiB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2V4ZWN1dG9yLWZ1bmN0
aW9uLW5vbmNvbnN0cnVjdG9yLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq3RydWXCuywgwqtmYWxzZcK7
KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tv
YmplY3QgUHJvbWlzZV3Cuywgwqtbb2JqZWN0IFByb21pc2VdwrspIHRvIGJlIHRydWUnCi0gIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFBy
b21pc2VdwrssIMKrW29iamVjdCBQcm9taXNlXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1p
bnMvUHJvbWlzZS9wcm90b3R5cGUvZmluYWxseS9pbnZva2VzLXRoZW4td2l0aC1mdW5jdGlvbi5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVsZmlsbG1lbnQgaGFuZGxlciBpcyBub3Qg
Y29uc3RydWN0b3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBmdWxmaWxsbWVudCBo
YW5kbGVyIGlzIG5vdCBjb25zdHJ1Y3RvcicKQEAgLTE2NTQsOSArMTU4Miw2IEBAIHRlc3QvYnVp
bHQtaW5zL1JlZ0V4cC9wcm9wZXJ0eS1lc2NhcGVzL2cKIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9w
cm9wZXJ0eS1lc2NhcGVzL2dlbmVyYXRlZC9YSURfU3RhcnQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IGBccHtYSURfU3RhcnR9YCBzaG91bGQgbWF0Y2ggVSswMDFDRkEgKGDhs7pgKScK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGBccHtYSURfU3RhcnR9YCBzaG91bGQgbWF0
Y2ggVSswMDFDRkEgKGDhs7pgKScKLXRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90by1mcm9tLWN0
b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCqy8oPzopL8K7LCDCqy8oPzopL8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrLyg/OikvwrssIMKrLyg/OikvwrspIHRv
IGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvdG90eXBlL1N5bWJvbC5tYXRjaC9i
dWlsdGluLWluZmVyLXVuaWNvZGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq++/vcK7LCDCq251bGzCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq++/vcK7LCDCq251bGzCuykg
dG8gYmUgdHJ1ZScKQEAgLTE2OTksMTIgKzE2MjQsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAv
cHJvdG90eXBlL3VuaWNvZGUvCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcXVhbnRpZmllci1pbnRl
Z2VyLWxpbWl0LmpzOgogICBkZWZhdWx0OiAnU3ludGF4RXJyb3I6IEludmFsaWQgcmVndWxhciBl
eHByZXNzaW9uOiBudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXInCiAgIHN0cmljdCBt
b2RlOiAnU3ludGF4RXJyb3I6IEludmFsaWQgcmVndWxhciBleHByZXNzaW9uOiBudW1iZXIgdG9v
IGxhcmdlIGluIHt9IHF1YW50aWZpZXInCi10ZXN0L2J1aWx0LWlucy9TZXQvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqtbb2JqZWN0IFNldF3Cuywgwqtbb2JqZWN0IFNldF3CuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgU2V0
XcK7LCDCq1tvYmplY3QgU2V0XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvU3RyaW5n
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScK
IHRlc3QvYnVpbHQtaW5zL1Rocm93VHlwZUVycm9yL2V4dGVuc2libGUuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq3RydWXCuywgwqtmYWxzZcK7KSB0
byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrdHJ1ZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUnCkBAIC0xNzcwLDIxICsxNjg5LDkg
QEAgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdAogdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9idWZmZXItYXJnL2xlbmd0aC10by1udW1i
ZXItZGV0YWNoYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBh
IFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
YnV0IGdvdCBhIFJhbmdlRXJyb3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvYnVmZmVyLWFyZy9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwot
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9sZW5ndGgtYXJnL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVj
dCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9h
dDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2
NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5
LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL25vLWFyZ3Mv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2Jq
ZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9h
dDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvb2JqZWN0
LWFyZy9sZW5ndGgtZXhjZXNzaXZlLXRocm93cy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBSYW5nZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdh
cyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvb2JqZWN0
LWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDC
q1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90
eXBlZGFycmF5LWFyZy9kZXRhY2hlZC13aGVuLXNwZWNpZXMtcmV0cmlldmVkLWRpZmZlcmVudC10
eXBlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBUeXBlRXJyb3IgdGhyb3duIGZvciBk
ZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBi
dXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBUeXBlRXJyb3IgdGhyb3duIGZv
ciBkZXRhY2hlZCBzb3VyY2UgYnVmZmVyIEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCkBAIC0xODEyLDkgKzE3MTksNiBAQCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2N0CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0
b3JzL3R5cGVkYXJyYXktYXJnL290aGVyLWN0b3ItYnVmZmVyLWN0b3Itc3BlY2llcy1wcm90b3R5
cGUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3Qy
NjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24g
d2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZs
b2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRB
cnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJy
YXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScK
IHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1h
cmcvc2FtZS1jdG9yLWJ1ZmZlci1jdG9yLWFjY2Vzcy10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3
aXRoIEZsb2F0NjRBcnJheS4pJwpAQCAtMTkwMiwyNyArMTgwNiwxMiBAQCB0ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL29mCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL29mL25ldy1pbnN0YW5jZS11c2luZy1jdXN0b20tY3Rvci5qczoKICAgZGVmYXVs
dDogJ1R5cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBhcmd1bWVudCB0
byBzdWJjbGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0
QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWly
ZXMgaXRzIHRoaXMgYXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9y
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9XZWFrTWFwL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrTWFwXcK7LCDCq1tvYmplY3QgV2Vha01hcF3Cuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq1tvYmplY3QgV2Vha01hcF3Cuywgwqtbb2JqZWN0IFdlYWtNYXBdwrspIHRvIGJlIHRy
dWUnCi10ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrUmVmXcK7LCDCq1tvYmplY3QgV2Vha1Jl
Zl3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vh
a1JlZl3Cuywgwqtbb2JqZWN0IFdlYWtSZWZdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlu
cy9XZWFrU2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrU2V0XcK7LCDCq1tvYmplY3Qg
V2Vha1NldF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1NldF3Cuywgwqtbb2JqZWN0IFdlYWtTZXRd
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvQ29sbGF0b3IvbWlzc2luZy11bmljb2RlLWV4
dC12YWx1ZS1kZWZhdWx0cy10by10cnVlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiAi
a24iIHNob3VsZCBiZSByZXR1cm5lZCBpbiBsb2NhbGUuIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2Zh
bHNlwrssIMKrdHJ1ZcK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogImtuIiBzaG91bGQgYmUgcmV0dXJuZWQgaW4gbG9jYWxlLiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtmYWxzZcK7LCDCq3RydWXCuykgdG8gYmUgdHJ1ZScKLXRlc3QvaW50bDQwMi9Db2xsYXRvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3Qg
T2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRv
IGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvQ29sbGF0b3IvdXNhZ2UtZGUuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFvDhCwgQUVdIGFuZCBbQUUsIMOEXSB0byBoYXZlIHRo
ZSBzYW1lIGNvbnRlbnRzLiBzZWFyY2gnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBbw4QsIEFFXSBhbmQgW0FFLCDDhF0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4g
c2VhcmNoJwotdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50
bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90b3R5cGUvZm9ybWF0L3JlbGF0ZWQteWVhci16aC5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMzblubTCuywg
wqsyMDE55bex5Lql5bm0wrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqszNuW5tMK7LCDCqzIwMTnlt7HkuqXlubTCuykgdG8g
YmUgdHJ1ZScKQEAgLTE5NTYsMTIgKzE4NDUsNiBAQCB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5v
bmljYWxMb2NhbGVzL3ByCiB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3By
ZWZlcnJlZC12YXJpYW50LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtqYS1MYXRuLWFsYWxjOTfCuywgwqtqYS1MYXRuLWhlcGJ1cm4taGVwbG9jwrsp
IHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUowqtqYS1MYXRuLWFsYWxjOTfCuywgwqtqYS1MYXRuLWhlcGJ1cm4taGVwbG9jwrspIHRv
IGJlIHRydWUnCi10ZXN0L2ludGw0MDIvTnVtYmVyRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvaW50
bDQwMi9QbHVyYWxSdWxlcy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29i
amVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvbGFuZ3VhZ2UtdGFncy1p
bnZhbGlkLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBUZXN0IGRhdGEgImRlLWdyZWdv
cnktZ3JlZ29yeSIgaXMgYSBjYW5vbmljYWxpemVkIGFuZCBzdHJ1Y3R1cmFsbHkgdmFsaWQgbGFu
Z3VhZ2UgdGFnLicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFRlc3QgZGF0YSAiZGUt
Z3JlZ29yeS1ncmVnb3J5IiBpcyBhIGNhbm9uaWNhbGl6ZWQgYW5kIHN0cnVjdHVyYWxseSB2YWxp
ZCBsYW5ndWFnZSB0YWcuJwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
NjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTA0IEBACisyMDIwLTA0LTEzICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2Fs
ZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgInByb3RvdHlwZSIgaXMg
bm90IGFuIG9iamVjdCwgYnVpbHQtaW4gY29uc3RydWN0b3JzIHNob3VsZCB1c2UgTmV3VGFyZ2V0
J3MgcmVhbG0KKyAgICAgICAgdG8gb2J0YWluIGRlZmF1bHQgW1tQcm90b3R5cGVdXSB2YWx1ZSAo
Zm9yIGV4YW1wbGUsIE1hcCBjb25zdHJ1Y3RvciBbMV0pLgorICAgICAgICBCZWZvcmUgdGhpcyBj
aGFuZ2UsIHJlYWxtIG9mIGFjdGl2ZSBjb25zdHJ1Y3RvciB3YXMgdXNlZCBpbnN0ZWFkLiBUaGlz
IHBhdGNoIGFsaWducworICAgICAgICBhbGwgc3ViY2xhc3NhYmxlIEphdmFTY3JpcHRDb3JlIGNv
bnN0cnVjdG9ycyB3aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNwaWRlck1vbmtleS4KKworICAgICAg
ICBXaGlsZSBhIGR5bmFtaWNhbGx5IGNyZWF0ZWQgZnVuY3Rpb24gdXNlcyBOZXdUYXJnZXQncyBy
ZWFsbSBmb3IgaXRzIFtbUHJvdG90eXBlXV0KKyAgICAgICAgc2ltaWxhciB0byBvdGhlciBidWls
dC1pbnMsIGl0cyAicHJvdG90eXBlIiBvYmplY3QgaW5oZXJpdCBmcm9tIE9iamVjdFByb3RvdHlw
ZQorICAgICAgICBvZiBhY3RpdmUgY29uc3RydWN0b3IncyByZWFsbSBbMl0gKGp1c3QgbGlrZSB0
aGVpciBzY29wZSksIG1ha2luZyBpdCByZXRhaW4gcmVmZXJlbmNlcworICAgICAgICB0byAyIGRp
ZmZlcmVudCBnbG9iYWwgb2JqZWN0cy4gVG8gYWNjb21vZGF0ZSB0aGlzIGJlaGF2aW9yLCB0aGlz
IGNoYW5nZSBpbnRyb2R1Y2VzCisgICAgICAgIGBzY29wZUdsb2JhbE9iamVjdGAgaW4gSlNGdW5j
dGlvbi5jcHAgbWV0aG9kcy4KKworICAgICAgICBBYm92ZS1tZW50aW9uZWQgYmVoYXZpb3IgYWxz
byBzaW1wbGlmaWVzIGNyZWF0aW9uIG9mIEpTR2VuZXJhdG9yIGFuZCBKU0FzeW5jR2VuZXJhdG9y
CisgICAgICAgIGluc3RhbmNlcyBzaW5jZSBOZXdUYXJnZXQncyByZWFsbSBpcyBpcnJlbGV2YW50
IHRvIHRoZW0uCisKKyAgICAgICAgSW50bENvbGxhdG9yQ29uc3RydWN0b3I6OmNvbGxhdG9yU3Ry
dWN0dXJlKCkgYW5kIDMgc2ltaWxhciBJbnRsKkNvbnN0cnVjdG9yIG1ldGhvZHMKKyAgICAgICAg
YXJlIHJlbW92ZWQgYmVjYXVzZSBhKSB3aXRoIHRoaXMgY2hhbmdlLCBlYWNoIG9mIHRoZW0gaGF2
ZSBtYXggb25lIGNhbGwgc2l0ZSBhbmQKKyAgICAgICAgYikgb3RoZXIgSlNDIGNvbnN0cnVjdG9y
cyBoYXZlIG5vIG1ldGhvZHMgYWxpa2UuCisKKyAgICAgICAgWzFdOiBodHRwczovL3RjMzkuZXMv
ZWNtYTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvciAoc3RlcCAyKQorICAgICAgICBbMl06IGh0dHBz
Oi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtY3JlYXRlZHluYW1pY2Z1bmN0aW9uIChzdGVwcyAyMy0y
NSkKKworICAgICAgICAqIGRmZy9ERkdPcGVyYXRpb25zLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEFz
eW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RBc3luY0dl
bmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQm9vbGVhbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2l0aEJvb2xlYW5Db25zdHJ1
Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpTTE9XX1BBVEhfREVDTCk6CisgICAgICAgICogcnVudGltZS9EYXRlQ29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3REYXRlKToKKyAgICAgICAgKiBydW50aW1lL0Vy
cm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RFcnJvckNvbnN0cnVj
dG9yKToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEVuYWJsZWRDaGVjayk6CisgICAg
ICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdEludGxDb2xsYXRvcik6CisgICAgICAgIChKU0M6OmNhbGxJbnRsQ29sbGF0b3Ip
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuaDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpT
Qzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxE
YXRlVGltZUZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9y
LmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bE51bWJlckZvcm1hdCk6CisgICAgICAg
IChKU0M6OmNhbGxJbnRsTnVtYmVyRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRsUGx1cmFsUnVsZXMp
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaDoKKyAgICAg
ICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OkpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0b3I8c2hhcmluZ01vZGU+Ojpjb25zdHJ1Y3RB
cnJheUJ1ZmZlcik6CisgICAgICAgICogcnVudGltZS9KU0Z1bmN0aW9uLmNwcDoKKyAgICAgICAg
KEpTQzo6SlNGdW5jdGlvbjo6cHJvdG90eXBlRm9yQ29uc3RydWN0aW9uKToKKyAgICAgICAgKEpT
Qzo6SlNGdW5jdGlvbjo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0pT
R2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9KU0ds
b2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5
U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbiBjb25zdCk6CisgICAgICAg
ICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1h
cCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3RvcjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRp
dmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0cnVjdG9y
LmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAg
ICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1
Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhwU3RydWN0dXJlKToKKyAgICAgICAgKEpT
Qzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpTQzo6ZXNTcGVjUmVnRXhwQ3JlYXRlKToK
KyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGlt
ZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFNldCk6CisgICAg
ICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0
cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9XZWFrTWFwQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFrTWFwKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNv
bnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1NldCk6CisgICAgICAgICogd2FzbS9qcy9X
ZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29u
c3RydWN0SlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcik6CisgICAgICAgICogd2FzbS9qcy9XZWJB
c3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RK
U1dlYkFzc2VtYmx5SW5zdGFuY2UpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlMaW5r
RXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEpTV2ViQXNzZW1i
bHlMaW5rRXJyb3IpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1
Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3I6OmNy
ZWF0ZU1vZHVsZSk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SlNXZWJBc3NlbWJseVJ1bnRp
bWVFcnJvcik6CisKIDIwMjAtMDQtMTIgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIEVuYWJsZSB0aGUgYWJpbGl0eSB0byBidWlsZCB0aGUgQVNNIExMSW50IGZvciBB
Uk12N2suCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5j
cHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3Bl
cmF0aW9ucy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5Myw3ICszOTMsOCBAQCBKU0NlbGwqIEpJ
VF9PUEVSQVRJT04gb3BlcmF0aW9uQ3JlYXRlUHJvCiAgICAgQ2FsbEZyYW1lKiBjYWxsRnJhbWUg
PSBERUNMQVJFX0NBTExfRlJBTUUodm0pOwogICAgIEpJVE9wZXJhdGlvblByb2xvZ3VlQ2FsbEZy
YW1lVHJhY2VyIHRyYWNlcih2bSwgY2FsbEZyYW1lKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFS
RV9USFJPV19TQ09QRSh2bSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVj
dC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVjdG9yLCBnbG9iYWxPYmplY3QtPnByb21p
c2VTdHJ1Y3R1cmUoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gY29uc3RydWN0
b3ItPmdsb2JhbE9iamVjdCh2bSktPnByb21pc2VTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0
b3IsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxw
dHIpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNQcm9taXNlOjpjcmVhdGUodm0s
IHN0cnVjdHVyZSkpOwogfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5
bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAw
MDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3Ry
dWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBBcmdMaXN0IGFyZ3Mo
Y2FsbEZyYW1lKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9u
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6
OkFzeW5jKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpB
c3luYywgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQogCiBBc3luY0Z1bmN0aW9uQ29uc3Ry
dWN0b3I6OkFzeW5jRnVuY3Rpb25Db25zdHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JG
dW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShyZXZpc2lv
biAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0NSw3IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25z
dHJ1Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFt
ZSkKIHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBG
dW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9yKSk7CisgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwg
YXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvciwgY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKSkpOwogfQogCiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6
OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3Ry
dWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
b29sZWFuQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00Myw3ICs0MywxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIGJvb2xlYW4gPSBqc0Jvb2xlYW4oY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKS50b0Jvb2xlYW4oZ2xvYmFsT2JqZWN0KSk7Ci0gICAgU3RydWN0
dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpKTsKKyAg
ICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJU
KG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBh
c09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5ib29sZWFuT2JqZWN0U3RydWN0
dXJlKCk7CisgICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgQm9vbGVhbk9iamVjdCogb2JqID0gQm9v
bGVhbk9iamVjdDo6Y3JlYXRlKHZtLCBib29sZWFuU3RydWN0dXJlKTsKICAgICBvYmotPnNldElu
dGVybmFsVmFsdWUodm0sIGJvb2xlYW4pOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yODQsNyArMjg0LDggQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0
ZV9wcm9taXNlKQogICAgICAgICBDSEVDS19FWENFUFRJT04oKTsKICAgICAgICAgcmVzdWx0ID0g
SlNJbnRlcm5hbFByb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9IGVsc2Ugewot
ICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3Ry
dWN0b3IoKSwgY29uc3RydWN0b3JBc09iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlU3RydWN0
dXJlKCkpOworICAgICAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBjb25zdHJ1Y3RvckFz
T2JqZWN0LT5nbG9iYWxPYmplY3Qodm0pLT5wcm9taXNlU3RydWN0dXJlKCk7CisgICAgICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3RvcigpLCBj
b25zdHJ1Y3RvckFzT2JqZWN0LCBiYXNlU3RydWN0dXJlKTsKICAgICAgICAgQ0hFQ0tfRVhDRVBU
SU9OKCk7CiAgICAgICAgIHJlc3VsdCA9IEpTUHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUp
OwogICAgIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQzLDcg
KzE0Myw4IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3REYXRlKEpTR2xvYmFsT2JqZWN0KiAKICAgICAg
ICAgdmFsdWUgPSBtaWxsaXNlY29uZHNGcm9tQ29tcG9uZW50cyhnbG9iYWxPYmplY3QsIGFyZ3Ms
IFdURjo6TG9jYWxUaW1lKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRy
KTsKIAotICAgIFN0cnVjdHVyZSogZGF0ZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5kYXRlQ29u
c3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPmRhdGVTdHJ1Y3R1cmUoKSk7Cisg
ICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gKG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9iYWxPYmplY3QpLT5kYXRlU3RydWN0dXJlKCk7
CisgICAgU3RydWN0dXJlKiBkYXRlU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVDb25zdHJ1
Y3RvcigpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIG51bGxwdHIpOwogCiAgICAgcmV0dXJuIERhdGVJbnN0YW5jZTo6Y3JlYXRlKHZt
LCBkYXRlU3RydWN0dXJlLCB2YWx1ZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTU3LDcgKzU3LDEwIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Y29uc3RydWN0RXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBz
Y29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9IGNh
bGxGcmFtZS0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3Qt
PmVycm9yU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5u
ZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVj
dHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2
bSktPmVycm9yU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5E
X1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9i
YWxPYmplY3QsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywg
ZmFsc2UpKSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlv
bkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTE1MiwxOSArMTUyLDIwIEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvblNr
aXBwaW5nRXZhbEUKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCisgICAgSlNHbG9i
YWxPYmplY3QqIHN0cnVjdHVyZUdsb2JhbE9iamVjdCA9IG5ld1RhcmdldCA/IGFzT2JqZWN0KG5l
d1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkgOiBnbG9iYWxPYmplY3Q7CiAgICAgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUgPSBudWxscHRyOwogICAgIHN3aXRjaCAoZnVuY3Rpb25Db25zdHJ1Y3Rpb25N
b2RlKSB7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkZ1bmN0aW9uOgotICAg
ICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhw
KGdsb2JhbE9iamVjdCwgZnVuY3Rpb24pOworICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9u
OjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhwKHN0cnVjdHVyZUdsb2JhbE9iamVjdCwgZnVu
Y3Rpb24pOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9k
ZTo6R2VuZXJhdG9yOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmdlbmVyYXRv
ckZ1bmN0aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2Jh
bE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAg
ICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jOgotICAgICAgICBzdHJ1Y3R1
cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3Ry
dWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2JqZWN0LT5hc3luY0Z1bmN0aW9uU3RydWN0dXJlKCk7
CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3lu
Y0dlbmVyYXRvcjoKLSAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3luY0dlbmVy
YXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUds
b2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBi
cmVhazsKICAgICB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxD
b2xsYXRvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEsNyArOTEsMTAgQEAgc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmlu
ZWQsIGxldCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmplY3QsIGVsc2UgbGV0
IG5ld1RhcmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gMi4gTGV0IGNvbGxhdG9yIGJlIE9yZGlu
YXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1RhcmdldCwgJUNvbGxhdG9yUHJvdG90eXBlJSku
CiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQoY29sbGF0b3IpLgotICAgIFN0cnVjdHVyZSogc3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpz
Q2FzdDxJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmNv
bGxhdG9yU3RydWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3Ry
dWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0
KHZtKS0+Y29sbGF0b3JTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxDb2xsYXRv
ciogY29sbGF0b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBB
U1NFUlQoY29sbGF0b3IpOwpAQCAtMTA5LDE0ICsxMTIsMTMgQEAgc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogICAgIC8vIE5ld1RhcmdldCBpcyBhbHdheXMgdW5kZWZp
bmVkIHdoZW4gY2FsbGVkIGFzIGEgZnVuY3Rpb24uCiAKICAgICBWTSYgdm0gPSBnbG9iYWxPYmpl
Y3QtPnZtKCk7Ci0gICAgSW50bENvbGxhdG9yQ29uc3RydWN0b3IqIGNhbGxlZSA9IGpzQ2FzdDxJ
bnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7CiAKICAgICAv
LyBGSVhNRTogQ29sbGF0b3IgZG9lcyBub3QgZ2V0IHRoZSB3b3JrYXJvdW5kIGZvciBFQ01BLTQw
MiAxLjAgY29tcGF0aWJpbGl0eS4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTUzNjc5CiAKICAgICAvLyAyLiBMZXQgY29sbGF0b3IgYmUgT3JkaW5hcnlD
cmVhdGVGcm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlQ29sbGF0b3JQcm90b3R5cGUlKS4KICAg
ICAvLyAzLiBSZXR1cm5JZkFicnVwdChjb2xsYXRvcikuCi0gICAgSW50bENvbGxhdG9yKiBjb2xs
YXRvciA9IEludGxDb2xsYXRvcjo6Y3JlYXRlKHZtLCBjYWxsZWUtPmNvbGxhdG9yU3RydWN0dXJl
KHZtKSk7CisgICAgSW50bENvbGxhdG9yKiBjb2xsYXRvciA9IEludGxDb2xsYXRvcjo6Y3JlYXRl
KHZtLCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCktPmdsb2JhbE9iamVjdCh2bSktPmNvbGxhdG9yU3Ry
dWN0dXJlKCkpOwogICAgIEFTU0VSVChjb2xsYXRvcik7CiAKICAgICAvLyA0LiBSZXR1cm4gSW5p
dGlhbGl6ZUNvbGxhdG9yKGNvbGxhdG9yLCBsb2NhbGVzLCBvcHRpb25zKS4KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3Ry
dWN0b3IuaAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNDQsOCArNDQs
NiBAQCBwdWJsaWM6CiAKICAgICBERUNMQVJFX0lORk87CiAKLSAgICBTdHJ1Y3R1cmUqIGNvbGxh
dG9yU3RydWN0dXJlKFZNJikgY29uc3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPmNvbGxhdG9y
U3RydWN0dXJlKCk7IH0KLQogcHJvdGVjdGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0m
LCBJbnRsQ29sbGF0b3JQcm90b3R5cGUqKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05
MSw3ICs5MSwxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAg
ICAgLy8gMS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0aGUg
YWN0aXZlIGZ1bmN0aW9uIG9iamVjdCwgZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1RhcmdldC4K
ICAgICAvLyAyLiBMZXQgZGF0ZVRpbWVGb3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3Ry
dWN0b3IobmV3VGFyZ2V0LCAlRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUlKS4KICAgICAvLyAzLiBS
ZXR1cm5JZkFicnVwdChkYXRlVGltZUZvcm1hdCkuCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwganNDYXN0PElu
dGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZGF0
ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAg
ICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxP
YmplY3Qodm0pLT5kYXRlVGltZUZvcm1hdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAg
SW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCA9IEludGxEYXRlVGltZUZvcm1hdDo6
Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CkBAIC0x
MDgsMTQgKzExMSwxMiBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxs
CiAgICAgLy8gMS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0
aGUgYWN0aXZlIGZ1bmN0aW9uIG9iamVjdCwgZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1Rhcmdl
dC4KICAgICAvLyBOZXdUYXJnZXQgaXMgYWx3YXlzIHVuZGVmaW5lZCB3aGVuIGNhbGxlZCBhcyBh
IGZ1bmN0aW9uLgogCi0gICAgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqIGNhbGxlZSA9
IGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSk7Ci0KICAgICAvLyBGSVhNRTogV29ya2Fyb3VuZCB0byBwcm92aWRlIGNvbXBhdGliaWxp
dHkgd2l0aCBFQ01BLTQwMiAxLjAgY2FsbC9hcHBseSBwYXR0ZXJucy4KICAgICAvLyBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUzNjc5Ci0gICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZShjb25zdHJ1Y3RJbnRsSW5zdGFuY2VXaXRoV29ya2Fyb3VuZEZvckxlZ2FjeUlu
dGxDb25zdHJ1Y3RvcjxJbnRsRGF0ZVRpbWVGb3JtYXQ+KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT50aGlzVmFsdWUoKSwgY2FsbGVlLCBbJl0gKFZNJiB2bSkgeworICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUoY29uc3RydWN0SW50bEluc3RhbmNlV2l0aFdvcmthcm91bmRGb3JMZWdhY3lJbnRs
Q29uc3RydWN0b3I8SW50bERhdGVUaW1lRm9ybWF0PihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+
dGhpc1ZhbHVlKCksIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgWyZdIChWTSYgdm0pIHsKICAgICAg
ICAgLy8gMi4gTGV0IGRhdGVUaW1lRm9ybWF0IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVj
dG9yKG5ld1RhcmdldCwgJURhdGVUaW1lRm9ybWF0UHJvdG90eXBlJSkuCiAgICAgICAgIC8vIDMu
IFJldHVybklmQWJydXB0KGRhdGVUaW1lRm9ybWF0KS4KLSAgICAgICAgSW50bERhdGVUaW1lRm9y
bWF0KiBkYXRlVGltZUZvcm1hdCA9IEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlKHZtLCBjYWxs
ZWUtPmRhdGVUaW1lRm9ybWF0U3RydWN0dXJlKHZtKSk7CisgICAgICAgIEludGxEYXRlVGltZUZv
cm1hdCogZGF0ZVRpbWVGb3JtYXQgPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2bSwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLT5nbG9iYWxPYmplY3Qodm0pLT5kYXRlVGltZUZvcm1hdFN0cnVj
dHVyZSgpKTsKICAgICAgICAgQVNTRVJUKGRhdGVUaW1lRm9ybWF0KTsKIAogICAgICAgICAvLyA0
LiBSZXR1cm4gSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVz
LCBvcHRpb25zKS4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYw
MDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0
Q29uc3RydWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNDQsOCArNDQsNiBAQCBwdWJsaWM6CiAK
ICAgICBERUNMQVJFX0lORk87CiAKLSAgICBTdHJ1Y3R1cmUqIGRhdGVUaW1lRm9ybWF0U3RydWN0
dXJlKFZNJikgY29uc3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPmRhdGVUaW1lRm9ybWF0U3Ry
dWN0dXJlKCk7IH0KLQogcHJvdGVjdGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJ
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSw3
ICs5MSwxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAg
Ly8gMS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0aGUgYWN0
aXZlIGZ1bmN0aW9uIG9iamVjdCwgZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1RhcmdldC4KICAg
ICAvLyAyLiBMZXQgbnVtYmVyRm9ybWF0IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9y
KG5ld1RhcmdldCwgJU51bWJlckZvcm1hdFByb3RvdHlwZSUpLgogICAgIC8vIDMuIFJldHVybklm
QWJydXB0KG51bWJlckZvcm1hdCkuCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwganNDYXN0PEludGxOdW1iZXJG
b3JtYXRDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPm51bWJlckZvcm1hdFN0
cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJn
ZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSog
YmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51
bWJlckZvcm1hdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgSW50bE51bWJlckZvcm1h
dCogbnVtYmVyRm9ybWF0ID0gSW50bE51bWJlckZvcm1hdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUp
OwogICAgIEFTU0VSVChudW1iZXJGb3JtYXQpOwpAQCAtMTA4LDE0ICsxMTEsMTIgQEAgc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogICAgIC8vIDEuIElmIE5ld1Rhcmdl
dCBpcyB1bmRlZmluZWQsIGxldCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmpl
Y3QsIGVsc2UgbGV0IG5ld1RhcmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gTmV3VGFyZ2V0IGlz
IGFsd2F5cyB1bmRlZmluZWQgd2hlbiBjYWxsZWQgYXMgYSBmdW5jdGlvbi4KIAotICAgIEludGxO
dW1iZXJGb3JtYXRDb25zdHJ1Y3RvciogY2FsbGVlID0ganNDYXN0PEludGxOdW1iZXJGb3JtYXRD
b25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0KICAgICAvLyBGSVhNRTogV29y
a2Fyb3VuZCB0byBwcm92aWRlIGNvbXBhdGliaWxpdHkgd2l0aCBFQ01BLTQwMiAxLjAgY2FsbC9h
cHBseSBwYXR0ZXJucy4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTUzNjc5Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RJbnRsSW5z
dGFuY2VXaXRoV29ya2Fyb3VuZEZvckxlZ2FjeUludGxDb25zdHJ1Y3RvcjxJbnRsTnVtYmVyRm9y
bWF0PihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCksIGNhbGxlZSwgWyZdIChW
TSYgdm0pIHsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEludGxJbnN0YW5j
ZVdpdGhXb3JrYXJvdW5kRm9yTGVnYWN5SW50bENvbnN0cnVjdG9yPEludGxOdW1iZXJGb3JtYXQ+
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT50aGlzVmFsdWUoKSwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBbJl0gKFZNJiB2bSkgewogICAgICAgICAvLyAyLiBMZXQgbnVtYmVyRm9ybWF0IGJlIE9y
ZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1RhcmdldCwgJU51bWJlckZvcm1hdFByb3Rv
dHlwZSUpLgogICAgICAgICAvLyAzLiBSZXR1cm5JZkFicnVwdChudW1iZXJGb3JtYXQpLgotICAg
ICAgICBJbnRsTnVtYmVyRm9ybWF0KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0Ojpj
cmVhdGUodm0sIGNhbGxlZS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKHZtKSk7CisgICAgICAgIElu
dGxOdW1iZXJGb3JtYXQqIG51bWJlckZvcm1hdCA9IEludGxOdW1iZXJGb3JtYXQ6OmNyZWF0ZSh2
bSwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLT5nbG9iYWxPYmplY3Qodm0pLT5udW1iZXJGb3JtYXRT
dHJ1Y3R1cmUoKSk7CiAgICAgICAgIEFTU0VSVChudW1iZXJGb3JtYXQpOwogCiAgICAgICAgIC8v
IDQuIFJldHVybiBJbml0aWFsaXplTnVtYmVyRm9ybWF0KG51bWJlckZvcm1hdCwgbG9jYWxlcywg
b3B0aW9ucykuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVy
Rm9ybWF0Q29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYwMDAzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVj
dG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDggKzQ0LDYgQEAgcHVibGljOgogCiAgICAgREVD
TEFSRV9JTkZPOwogCi0gICAgU3RydWN0dXJlKiBudW1iZXJGb3JtYXRTdHJ1Y3R1cmUoVk0mKSBj
b25zdCB7IHJldHVybiBnbG9iYWxPYmplY3QoKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCk7IH0K
LQogcHJvdGVjdGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJbnRsTnVtYmVyRm9y
bWF0UHJvdG90eXBlKik7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9u
IDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxl
c0NvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODksNyArODksMTAgQEAgc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogCiAgICAgLy8gMTMuMi4xIEludGwu
UGx1cmFsUnVsZXMgKFsgbG9jYWxlcyBbICwgb3B0aW9ucyBdIF0pCiAgICAgLy8gaHR0cHM6Ly90
YzM5LmdpdGh1Yi5pby9lY21hNDAyLyNzZWMtaW50bC5wbHVyYWxydWxlcwotICAgIFN0cnVjdHVy
ZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCksIGpzQ2FzdDxJbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxs
ZWUoKSktPnBsdXJhbFJ1bGVzU3RydWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQg
PSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3Qo
KSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKS0+cGx1cmFsUnVsZXNTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1
cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwog
ICAgIEludGxQbHVyYWxSdWxlcyogcGx1cmFsUnVsZXMgPSBJbnRsUGx1cmFsUnVsZXM6OmNyZWF0
ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQocGx1cmFsUnVsZXMpOwpJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXND
b25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC00
NCw4ICs0NCw2IEBAIHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5GTzsKIAotICAgIFN0cnVjdHVy
ZSogcGx1cmFsUnVsZXNTdHJ1Y3R1cmUoVk0mKSBjb25zdCB7IHJldHVybiBnbG9iYWxPYmplY3Qo
KS0+cGx1cmFsUnVsZXNTdHJ1Y3R1cmUoKTsgfQotCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBmaW5p
c2hDcmVhdGlvbihWTSYsIEludGxQbHVyYWxSdWxlc1Byb3RvdHlwZSopOwogCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJD
b25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTc5LDkgKzc5LDEwIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNHZW5lcmljQXIK
ICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ciogY29uc3RydWN0b3IgPSBqc0Nhc3Q8SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcio+
KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0KLSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGNv
bnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01v
ZGUpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7Cisg
ICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1
Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5hcnJheUJ1ZmZl
clN0cnVjdHVyZShzaGFyaW5nTW9kZSk7CisgICAgU3RydWN0dXJlKiBhcnJheUJ1ZmZlclN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAKICAgICB1bnNpZ25lZCBsZW5n
dGg7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNw
cAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNG
dW5jdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3NCwxOCArMTc0LDE3IEBAIEpTT2JqZWN0
KiBKU0Z1bmN0aW9uOjpwcm90b3R5cGVGb3JDb25zdHIKICAgICBzY29wZS5yZWxlYXNlQXNzZXJ0
Tm9FeGNlcHRpb24oKTsKICAgICBpZiAoTElLRUxZKHByb3RvdHlwZS5pc09iamVjdCgpKSkKICAg
ICAgICAgcmV0dXJuIGFzT2JqZWN0KHByb3RvdHlwZSk7CisgICAgaWYgKGlzSG9zdE9yQnVpbHRp
bkZ1bmN0aW9uKCkpCisgICAgICAgIHJldHVybiB0aGlzLT5nbG9iYWxPYmplY3QoKS0+b2JqZWN0
UHJvdG90eXBlKCk7CiAKLSAgICBKU0dsb2JhbE9iamVjdCogdGhpc0dsb2JhbE9iamVjdCA9IHRo
aXMtPmdsb2JhbE9iamVjdCgpOwotICAgIGlmICghaXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkg
ewotICAgICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1nZW5lcmF0
b3ItZnVuY3Rpb24tZGVmaW5pdGlvbnMtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGVib2R5Ci0g
ICAgICAgIGlmIChpc0dlbmVyYXRvcldyYXBwZXJQYXJzZU1vZGUoanNFeGVjdXRhYmxlKCktPnBh
cnNlTW9kZSgpKSkKLSAgICAgICAgICAgIHJldHVybiB0aGlzR2xvYmFsT2JqZWN0LT5nZW5lcmF0
b3JQcm90b3R5cGUoKTsKLQotICAgICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEy
NjIvI3NlYy1hc3luY2dlbmVyYXRvci1kZWZpbml0aW9ucy1ldmFsdWF0ZWJvZHkKLSAgICAgICAg
aWYgKGlzQXN5bmNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJz
ZU1vZGUoKSkpCi0gICAgICAgICAgICByZXR1cm4gdGhpc0dsb2JhbE9iamVjdC0+YXN5bmNHZW5l
cmF0b3JQcm90b3R5cGUoKTsKLSAgICB9Ci0gICAgcmV0dXJuIHRoaXNHbG9iYWxPYmplY3QtPm9i
amVjdFByb3RvdHlwZSgpOworICAgIEpTR2xvYmFsT2JqZWN0KiBzY29wZUdsb2JhbE9iamVjdCA9
IHRoaXMtPnNjb3BlKCktPmdsb2JhbE9iamVjdCgpOworICAgIC8vIGh0dHBzOi8vdGMzOS5naXRo
dWIuaW8vZWNtYTI2Mi8jc2VjLWdlbmVyYXRvci1mdW5jdGlvbi1kZWZpbml0aW9ucy1ydW50aW1l
LXNlbWFudGljcy1ldmFsdWF0ZWJvZHkKKyAgICBpZiAoaXNHZW5lcmF0b3JXcmFwcGVyUGFyc2VN
b2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpCisgICAgICAgIHJldHVybiBzY29wZUds
b2JhbE9iamVjdC0+Z2VuZXJhdG9yUHJvdG90eXBlKCk7CisgICAgLy8gaHR0cHM6Ly90YzM5Lmdp
dGh1Yi5pby9lY21hMjYyLyNzZWMtYXN5bmNnZW5lcmF0b3ItZGVmaW5pdGlvbnMtZXZhbHVhdGVi
b2R5CisgICAgaWYgKGlzQXN5bmNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJs
ZSgpLT5wYXJzZU1vZGUoKSkpCisgICAgICAgIHJldHVybiBzY29wZUdsb2JhbE9iamVjdC0+YXN5
bmNHZW5lcmF0b3JQcm90b3R5cGUoKTsKKyAgICByZXR1cm4gc2NvcGVHbG9iYWxPYmplY3QtPm9i
amVjdFByb3RvdHlwZSgpOwogfQogCiBGdW5jdGlvblJhcmVEYXRhKiBKU0Z1bmN0aW9uOjphbGxv
Y2F0ZUFuZEluaXRpYWxpemVSYXJlRGF0YShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBz
aXplX3QgaW5saW5lQ2FwYWNpdHkpCkBAIC00NjAsMTYgKzQ1OSwxNyBAQCBib29sIEpTRnVuY3Rp
b246OmdldE93blByb3BlcnR5U2xvdChKU09iCiAgICAgICAgIHVuc2lnbmVkIGF0dHJpYnV0ZXM7
CiAgICAgICAgIFByb3BlcnR5T2Zmc2V0IG9mZnNldCA9IHRoaXNPYmplY3QtPmdldERpcmVjdE9m
ZnNldCh2bSwgcHJvcGVydHlOYW1lLCBhdHRyaWJ1dGVzKTsKICAgICAgICAgaWYgKCFpc1ZhbGlk
T2Zmc2V0KG9mZnNldCkpIHsKKyAgICAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBzY29wZUdsb2Jh
bE9iamVjdCA9IHRoaXNPYmplY3QtPnNjb3BlKCktPmdsb2JhbE9iamVjdCgpOwogICAgICAgICAg
ICAgSlNPYmplY3QqIHByb3RvdHlwZSA9IG51bGxwdHI7CiAgICAgICAgICAgICBpZiAoaXNHZW5l
cmF0b3JXcmFwcGVyUGFyc2VNb2RlKHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5wYXJzZU1v
ZGUoKSkpIHsKICAgICAgICAgICAgICAgICAvLyBVbmxpa2UgZnVuY3Rpb24gaW5zdGFuY2VzLCB0
aGUgb2JqZWN0IHRoYXQgaXMgdGhlIHZhbHVlIG9mIHRoZSBhIEdlbmVyYXRvckZ1bmN0aW9uJ3Mg
cHJvdG90eXBlCiAgICAgICAgICAgICAgICAgLy8gcHJvcGVydHkgZG9lcyBub3QgaGF2ZSBhIGNv
bnN0cnVjdG9yIHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIHRoZSBHZW5lcmF0b3JGdW5jdGlvbiBp
bnN0YW5jZS4KICAgICAgICAgICAgICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEy
NjIvI3NlYy1nZW5lcmF0b3JmdW5jdGlvbi1pbnN0YW5jZXMtcHJvdG90eXBlCi0gICAgICAgICAg
ICAgICAgcHJvdG90eXBlID0gY29uc3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCB0aGlz
T2JqZWN0LT5nbG9iYWxPYmplY3QoKS0+Z2VuZXJhdG9yUHJvdG90eXBlKCkpOworICAgICAgICAg
ICAgICAgIHByb3RvdHlwZSA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCwgc2Nv
cGVHbG9iYWxPYmplY3QtPmdlbmVyYXRvclByb3RvdHlwZSgpKTsKICAgICAgICAgICAgIH0gZWxz
ZSBpZiAoaXNBc3luY0dlbmVyYXRvcldyYXBwZXJQYXJzZU1vZGUodGhpc09iamVjdC0+anNFeGVj
dXRhYmxlKCktPnBhcnNlTW9kZSgpKSkKLSAgICAgICAgICAgICAgICBwcm90b3R5cGUgPSBjb25z
dHJ1Y3RFbXB0eU9iamVjdChnbG9iYWxPYmplY3QsIHRoaXNPYmplY3QtPmdsb2JhbE9iamVjdCgp
LT5hc3luY0dlbmVyYXRvclByb3RvdHlwZSgpKTsKKyAgICAgICAgICAgICAgICBwcm90b3R5cGUg
PSBjb25zdHJ1Y3RFbXB0eU9iamVjdChnbG9iYWxPYmplY3QsIHNjb3BlR2xvYmFsT2JqZWN0LT5h
c3luY0dlbmVyYXRvclByb3RvdHlwZSgpKTsKICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAg
ICAgICAgIHByb3RvdHlwZSA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCk7Cisg
ICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29uc3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2Jq
ZWN0LCBzY29wZUdsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90eXBlKCkpOwogICAgICAgICAgICAg
ICAgIHByb3RvdHlwZS0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3Rv
ciwgdGhpc09iamVjdCwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpE
b250RW51bSkpOwogICAgICAgICAgICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmgJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJ
bmxpbmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIxMSw5ICsyMTEsMTAgQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RHZQogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+
dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBJ
bnRlcm5hbEZ1bmN0aW9uKiBmdW5jdGlvbiA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpKTsKLSAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGZ1
bmN0aW9uLT5nbG9iYWxPYmplY3QoKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5
cGVkQXJyYXlTdG9yYWdlVHlwZSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgcGFyZW50U3RydWN0dXJlKTsK
KyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNT
RVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUg
PSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT50eXBlZEFycmF5U3RydWN0
dXJlKFZpZXdDbGFzczo6VHlwZWRBcnJheVN0b3JhZ2VUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAg
ICAgc2l6ZV90IGFyZ0NvdW50ID0gY2FsbEZyYW1lLT5hcmd1bWVudENvdW50KCk7CkluZGV4OiBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdElu
bGluZXMuaAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw3ICsxMDEs
OSBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgSlNHbG9iYWxPYmplY3Q6OmlzU2V0CiAKIEFMV0FZU19J
TkxJTkUgU3RydWN0dXJlKiBKU0dsb2JhbE9iamVjdDo6YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGlu
Z1R5cGVEdXJpbmdBbGxvY2F0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEluZGV4
aW5nVHlwZSBpbmRleGluZ1R5cGUsIEpTVmFsdWUgbmV3VGFyZ2V0KSBjb25zdAogewotICAgIHJl
dHVybiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGdsb2JhbE9iamVjdC0+YXJyYXlDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGFycmF5U3Ry
dWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihpbmRleGluZ1R5cGUpKTsKKyAg
ICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0
dXJlID0gKG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSkg
OiBnbG9iYWxPYmplY3QpLT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9j
YXRpb24oaW5kZXhpbmdUeXBlKTsKKyAgICByZXR1cm4gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmFycmF5Q29uc3Ry
dWN0b3IoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKIH0KIAogaW5saW5lIEpTRnVuY3Rp
b24qIEpTR2xvYmFsT2JqZWN0Ojp0aHJvd1R5cGVFcnJvckZ1bmN0aW9uKCkgY29uc3QgeyByZXR1
cm4ganNDYXN0PEpTRnVuY3Rpb24qPihsaW5rVGltZUNvbnN0YW50KExpbmtUaW1lQ29uc3RhbnQ6
OnRocm93VHlwZUVycm9yRnVuY3Rpb24pKTsgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC02Nyw3ICs2NywxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2Nv
cGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2Jh
bE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAg
IFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9i
amVjdCh2bSktPm1hcFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBj
YWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBKU1ZhbHVl
IGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3Bw
CShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRp
dmVFcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUsMTAgQEAg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBOYXRpdmVFcnJvcgogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBT
dHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1l
LT5qc0NhbGxlZSgpKS0+ZXJyb3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBKU1ZhbHVlIG5ld1Rhcmdl
dCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVj
dCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQp
LT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0cnVjdHVyZShlcnJvclR5cGUpOworICAgIFN0cnVj
dHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBi
YXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNW
YWx1ZSgpKTsKICAgICBBU1NFUlQoZXJyb3JTdHJ1Y3R1cmUpOwogICAgIFJFTEVBU0VfQU5EX1JF
VFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxP
YmplY3QsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFs
c2UpKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVt
YmVyQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTky
LDcgKzkyLDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAg
ICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgZG91YmxlIG4gPSBj
YWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSA/IGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQo
MCkudG9OdW1iZXIoZ2xvYmFsT2JqZWN0KSA6IDA7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxG
cmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5u
dW1iZXJPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJh
bWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAg
U3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2Jq
ZWN0KHZtKS0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIE51
bWJlck9iamVjdCogb2JqZWN0ID0gTnVtYmVyT2JqZWN0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29u
c3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNyw3ICsx
MjcsOCBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU09iamVjdCogY29uc3RydWN0CiAgICAgLy8g
MS4gSWYgTmV3VGFyZ2V0IGlzIG5laXRoZXIgdW5kZWZpbmVkIG5vciB0aGUgYWN0aXZlIGZ1bmN0
aW9uLCB0aGVuCiAgICAgaWYgKG5ld1RhcmdldCAmJiBuZXdUYXJnZXQgIT0gb2JqZWN0Q29uc3Ry
dWN0b3IpIHsKICAgICAgICAgLy8gYS4gUmV0dXJuID8gT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3Ry
dWN0b3IoTmV3VGFyZ2V0LCAiJU9iamVjdFByb3RvdHlwZSUiKS4KLSAgICAgICAgU3RydWN0dXJl
KiBvYmplY3RTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIG9iamVjdENvbnN0cnVjdG9yLCBuZXdUYXJnZXQsIGdsb2JhbE9i
amVjdC0+b2JqZWN0U3RydWN0dXJlRm9yT2JqZWN0Q29uc3RydWN0b3IoKSk7CisgICAgICAgIFN0
cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSktPm9iamVjdFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCk7CisgICAgICAgIFN0
cnVjdHVyZSogb2JqZWN0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBi
YXNlU3RydWN0dXJlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0
cik7CiAgICAgICAgIHJldHVybiBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgb2JqZWN0U3RydWN0
dXJlKTsKICAgICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTE3MiwxMCArMTcyLDkgQEAgYm9vbCBzZXRSZWdFeHBDb25zdHJ1Y3Rvck11bHRpbGluZShK
U0dsbwogCiBpbmxpbmUgU3RydWN0dXJlKiBnZXRSZWdFeHBTdHJ1Y3R1cmUoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBuZXdUYXJnZXQpCiB7Ci0gICAgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpOwotICAgIGlmIChuZXdU
YXJnZXQgIT0ganNVbmRlZmluZWQoKSkKLSAgICAgICAgc3RydWN0dXJlID0gSW50ZXJuYWxGdW5j
dGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3Qt
PnJlZ0V4cENvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgc3RydWN0dXJlKTsKLSAgICByZXR1cm4g
c3RydWN0dXJlOworICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKKyAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSAobmV3VGFyZ2V0ID8gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKSA6IGdsb2JhbE9iamVjdCktPnJlZ0V4cFN0cnVjdHVyZSgpOworICAgIHJl
dHVybiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGdsb2JhbE9iamVjdC0+cmVnRXhwQ29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBiYXNlU3Ry
dWN0dXJlKTsKIH0KIAogaW5saW5lIE9wdGlvblNldDxZYXJyOjpGbGFncz4gdG9GbGFncyhKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZsYWdzKQpAQCAtMjI5LDcgKzIyOCw3
IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QKICAgICBib29sIGNv
bnN0cnVjdEFzUmVnZXhwID0gaXNSZWdFeHAodm0sIGdsb2JhbE9iamVjdCwgcGF0dGVybkFyZyk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKLSAgICBpZiAobmV3
VGFyZ2V0LmlzVW5kZWZpbmVkKCkgJiYgY29uc3RydWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcuaXNV
bmRlZmluZWQoKSkgeworICAgIGlmICghbmV3VGFyZ2V0ICYmIGNvbnN0cnVjdEFzUmVnZXhwICYm
IGZsYWdzQXJnLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNWYWx1ZSBjb25zdHJ1Y3RvciA9
IHBhdHRlcm5BcmcuZ2V0KGdsb2JhbE9iamVjdCwgdm0ucHJvcGVydHlOYW1lcy0+Y29uc3RydWN0
b3IpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICAg
ICAgaWYgKGNhbGxlZSA9PSBjb25zdHJ1Y3RvcikgewpAQCAtMjc0LDcgKzI3Myw3IEBAIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXNTcGVjUmVnRXgKIHsKICAgICBKU1ZhbHVlIHBhdHRl
cm5BcmcgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIEpTVmFsdWUgZmxhZ3NBcmcgPSBj
YWxsRnJhbWUtPmFyZ3VtZW50KDEpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhw
Q3JlYXRlKGdsb2JhbE9iamVjdCwganNVbmRlZmluZWQoKSwgcGF0dGVybkFyZywgZmxhZ3NBcmcp
KTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4cENyZWF0ZShnbG9iYWxPYmplY3Qs
IEpTVmFsdWUoKSwgcGF0dGVybkFyZywgZmxhZ3NBcmcpKTsKIH0KIAogRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBlc1NwZWNJc1JlZ0V4cChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYwMDAzKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAkod29ya2luZyBj
b3B5KQpAQCAtNTcsNyArNTcsNyBAQCBwcml2YXRlOgogfTsKIFNUQVRJQ19BU1NFUlRfSVNPX1NV
QlNQQUNFX1NIQVJBQkxFKFJlZ0V4cENvbnN0cnVjdG9yLCBJbnRlcm5hbEZ1bmN0aW9uKTsKIAot
SlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3Qm
LCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBqc1VuZGVm
aW5lZCgpKTsKK0pTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25z
dCBBcmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0
ID0gSlNWYWx1ZSgpKTsKIAogQUxXQVlTX0lOTElORSBib29sIGlzUmVnRXhwKFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKIHsKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlz
aW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsMTAgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0o
KTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1
Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5l
d1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPnNldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5l
d1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5p
c09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdU
YXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUq
IHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1
Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkp
OwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0NCw3ICsxNDQsMTAg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9
IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09Q
RSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPnN0cmluZ09iamVjdFN0cnVj
dHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7
CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VT
dHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5zdHJpbmdP
YmplY3RTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5q
c0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFy
Z3VtZW50Q291bnQoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtN
YXBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNjUsNyArNjUsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xv
YmFsT2JqZWN0LT53ZWFrTWFwU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0g
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkp
OworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmds
b2JhbE9iamVjdCh2bSktPndlYWtNYXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtN
YXBTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0
dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICBKU1dlYWtNYXAqIHdlYWtNYXAgPSBKU1dlYWtNYXA6OmNyZWF0ZSh2bSwgd2Vha01hcFN0
cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3Ry
dWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTY4LDcgKzY4LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnMKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJndW1lbnQoMCkuaXNPYmplY3QoKSkK
ICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkZp
cnN0IGFyZ3VtZW50IHRvIFdlYWtSZWYgc2hvdWxkIGJlIGFuIG9iamVjdCJfcyk7CiAKLSAgICBT
dHJ1Y3R1cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwg
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWFrT2JqZWN0UmVmU3RydWN0
dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsK
KyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0
cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtPYmpl
Y3RSZWZTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIFdlYWtPYmplY3RSZWZTdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNF
X0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0
ZSh2bSwgV2Vha09iamVjdFJlZlN0cnVjdHVyZSwgY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVu
dCgwKS5nZXRPYmplY3QoKSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBh
dXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdl
YWtTZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJn
ZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWFrU2V0U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0Lmlz
T2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYWtTZXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1
cmUqIHdlYWtTZXRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBi
YXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNW
YWx1ZSgpKTsKICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dlYWtTZXQ6OmNyZWF0ZSh2bSwg
d2Vha1NldFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJn
dW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDcg
KzQ5LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBh
dXRvJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVu
dCgwKTsKLSAgICBhdXRvKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseUNvbXBpbGVFcnJvclN0
cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJh
c2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWJB
c3NlbWJseUNvbXBpbGVFcnJvclN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFT
RV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNXZWJBc3NlbWJseUNvbXBpbGVF
cnJvcjo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgdm0sIHN0cnVjdHVyZSwgbWVzc2FnZSkpKTsKIH0K
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0
cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzUsNyArNzUsMTAgQEAgc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGlmICghaW1wb3J0QXJndW1lbnQuaXNV
bmRlZmluZWQoKSAmJiAhaW1wb3J0T2JqZWN0KQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsICJzZWNvbmQgYXJndW1lbnQgdG8gV2ViQXNzZW1ibHkuSW5zdGFuY2UgbXVz
dCBiZSB1bmRlZmluZWQgb3IgYW4gT2JqZWN0Il9zLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIHJ1
bnRpbWVUeXBlRm9yVmFsdWUodm0sIGltcG9ydEFyZ3VtZW50KSkpKTsKICAgICAKLSAgICBTdHJ1
Y3R1cmUqIGluc3RhbmNlU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlJbnN0YW5jZVN0cnVjdHVy
ZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7Cisg
ICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1
Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWJBc3NlbWJs
eUluc3RhbmNlU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBpbnN0YW5jZVN0cnVjdHVyZSA9
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAKICAgICBKU1dlYkFzc2VtYmx5SW5zdGFu
Y2UqIGluc3RhbmNlID0gSlNXZWJBc3NlbWJseUluc3RhbmNlOjp0cnlDcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgSlNXZWJBc3NlbWJseUluc3RhbmNlOjpjcmVhdGVQcml2YXRlTW9kdWxlS2V5KCks
IG1vZHVsZSwgaW1wb3J0T2JqZWN0LCBpbnN0YW5jZVN0cnVjdHVyZSwgUmVmPFdhc206Ok1vZHVs
ZT4obW9kdWxlLT5tb2R1bGUoKSksIFdhc206OkNyZWF0aW9uTW9kZTo6RnJvbUpTKTsKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3Ry
dWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAwMDMpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDksNyArNDksMTAgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGF1dG8mIHZtID0gZ2xvYmFsT2JqZWN0LT52
bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1Zh
bHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIGF1dG8qIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxP
YmplY3QtPndlYkFzc2VtYmx5TGlua0Vycm9yU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3
VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0Lmlz
T2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1Rh
cmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYkFzc2VtYmx5TGlua0Vycm9yU3RydWN0dXJlKCk7
CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFy
Z2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVu
Y29kZShKU1dlYkFzc2VtYmx5TGlua0Vycm9yOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgc3Ry
dWN0dXJlLCBtZXNzYWdlKSkpOwogfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI2MDAwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5TW9kdWxlQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODEsNyArMTgx
LDEwIEBAIEpTV2ViQXNzZW1ibHlNb2R1bGUqIFdlYkFzc2VtYmx5TW9kdWxlQ28KICAgICBWTSYg
dm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1df
U0NPUEUodm0pOwogCi0gICAgYXV0byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlNb2R1bGVT
dHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBi
YXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2Vi
QXNzZW1ibHlNb2R1bGVTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJO
KHNjb3BlLCBKU1dlYkFzc2VtYmx5TW9kdWxlOjpjcmVhdGVTdHViKHZtLCBnbG9iYWxPYmplY3Qs
IHN0cnVjdHVyZSwgV2FzbTo6TW9kdWxlOjp2YWxpZGF0ZVN5bmMoJnZtLndhc21Db250ZXh0LCBX
VEZNb3ZlKGJ1ZmZlcikpKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMDAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTUxLDcgKzUxLDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNv
bnMKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIFN0
cmluZyBtZXNzYWdlU3RyaW5nID0gbWVzc2FnZS5pc1VuZGVmaW5lZCgpID8gU3RyaW5nKCkgOiBt
ZXNzYWdlLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0gICAgYXV0byogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vi
QXNzZW1ibHlSdW50aW1lRXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQg
PSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3Qo
KSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+
Z2xvYmFsT2JqZWN0KHZtKS0+d2ViQXNzZW1ibHlSdW50aW1lRXJyb3JTdHJ1Y3R1cmUoKTsKKyAg
ICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQs
IGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNXZWJBc3NlbWJseVJ1bnRp
bWVFcnJvcjo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgdm0sIHN0cnVjdHVyZSwgV1RGTW92ZShtZXNz
YWdlU3RyaW5nKSkpOwogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396653</attachid>
            <date>2020-04-16 08:48:42 -0700</date>
            <delta_ts>2020-04-17 13:00:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20200416184840.patch</filename>
            <type>text/plain</type>
            <size>74106</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjAxODUpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDIwLTA0LTE2ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcHJvbWlzZS1wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvZXhwZWN0YXRp
b25zLnlhbWw6IE1hcmsgNzggdGVzdCBjYXNlcyBhcyBwYXNzaW5nLgorCiAyMDIwLTA0LTE2ICBZ
dXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gSW1wbGVt
ZW50IEpTTWFwSXRlcmF0b3IvSlNTZXRJdGVyYXRvciB3aXRoIEpTSW50ZXJuYWxGaWVsZE9iamVj
dEltcGwKSW5kZXg6IEpTVGVzdHMvc3RyZXNzL3Byb21pc2UtcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvc3RyZXNzL3Byb21pc2UtcHJvdG8tZnJvbS1jdG9y
LXJlYWxtLmpzCShub25leGlzdGVudCkKKysrIEpTVGVzdHMvc3RyZXNzL3Byb21pc2UtcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTYgQEAKK2Z1bmN0
aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0dWFsICE9PSBleHBl
Y3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBhY3R1YWwpOwor
fQorCitjb25zdCByZWFsbUEgPSBjcmVhdGVHbG9iYWxPYmplY3QoKTsKK2NvbnN0IHJlYWxtQiA9
IGNyZWF0ZUdsb2JhbE9iamVjdCgpOworCitjb25zdCBleGVjdXRvciA9IGZ1bmN0aW9uKCkge307
Citjb25zdCBuZXdUYXJnZXQgPSBuZXcgcmVhbG1BLkZ1bmN0aW9uKCk7CituZXdUYXJnZXQucHJv
dG90eXBlID0gbnVsbDsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxZTQ7ICsraSkgeworICAgIGxl
dCBwcm9taXNlID0gUmVmbGVjdC5jb25zdHJ1Y3QocmVhbG1CLlByb21pc2UsIFtleGVjdXRvcl0s
IG5ld1RhcmdldCk7CisgICAgc2hvdWxkQmUoT2JqZWN0LmdldFByb3RvdHlwZU9mKHByb21pc2Up
LCByZWFsbUEuUHJvbWlzZS5wcm90b3R5cGUpOworfQpJbmRleDogSlNUZXN0cy90ZXN0MjYyL2V4
cGVjdGF0aW9ucy55YW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlv
bnMueWFtbAkocmV2aXNpb24gMjYwMTg1KQorKysgSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sCSh3b3JraW5nIGNvcHkpCkBAIC02MTUsMTUgKzYxNSw2IEBAIHRlc3QvYW5uZXhCL2xh
bmd1YWdlL3N0YXRlbWVudHMvZm9yLWF3YWkKIHRlc3QvYW5uZXhCL2xhbmd1YWdlL3N0YXRlbWVu
dHMvZm9yLW9mL2l0ZXJhdG9yLWNsb3NlLXJldHVybi1lbXVsYXRlcy11bmRlZmluZWQtdGhyb3dz
LXdoZW4tY2FsbGVkLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5
cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJl
IHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwotdGVzdC9idWlsdC1p
bnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvC
uywgwqvCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rv
ci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90by1mcm9tLWN0b3ItcmVhbG0temVyby5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0FycmF5L3By
b3RvdHlwZS9jb25jYXQvYXJnLWxlbmd0aC1leGNlZWRpbmctaW50ZWdlci1saW1pdC5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJh
bmdlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVF
cnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicKQEAgLTY5MCw5ICs2ODEsNiBAQCB0ZXN0L2J1aWx0
LWlucy9BcnJheS9wcm90b3R5cGUvc3BsaWNlL3RoCiB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90
b3R5cGUvdW5zaGlmdC9jbGFtcHMtdG8taW50ZWdlci1saW1pdC5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogTGVuZ3RoIGlzIDIqKjUzIC0gMSBFeHBlY3RlZCBTYW1lVmFsdWUowqs0Mjk0
OTY3Mjk1wrssIMKrOTAwNzE5OTI1NDc0MDk5McK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogTGVuZ3RoIGlzIDIqKjUzIC0gMSBFeHBlY3RlZCBTYW1lVmFsdWUo
wqs0Mjk0OTY3Mjk1wrssIMKrOTAwNzE5OTI1NDc0MDk5McK7KSB0byBiZSB0cnVlJwotdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFycmF5QnVmZmVy
XcK7LCDCq1tvYmplY3QgQXJyYXlCdWZmZXJdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFycmF5QnVmZmVy
XcK7LCDCq1tvYmplY3QgQXJyYXlCdWZmZXJdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZmZXIuanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93
biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNl
cHRpb24gd2FzIHRocm93biBhdCBhbGwnCkBAIC03MzIsMTIgKzcyMCw2IEBAIHRlc3QvYnVpbHQt
aW5zL0FzeW5jRnJvbVN5bmNJdGVyYXRvclByb3QKIHRlc3QvYnVpbHQtaW5zL0FzeW5jRnJvbVN5
bmNJdGVyYXRvclByb3RvdHlwZS90aHJvdy9hYnNlbnQtdmFsdWUtbm90LXBhc3NlZC5qczoKICAg
ZGVmYXVsdDogJ1Rlc3QyNjI6QXN5bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFRlc3QyNjJF
cnJvcjogUHJvbWlzZSBzaG91bGQgYmUgcmVqZWN0ZWQsIGdvdDogdW5kZWZpbmVkJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjI6QXN5bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFRlc3QyNjJF
cnJvcjogUHJvbWlzZSBzaG91bGQgYmUgcmVqZWN0ZWQsIGdvdDogdW5kZWZpbmVkJwotdGVzdC9i
dWlsdC1pbnMvQXN5bmNGdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5j
RnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IEFzeW5jRnVuY3Rpb25dwrssIMKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcK7KSB0byBiZSB0
cnVlJwotdGVzdC9idWlsdC1pbnMvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi9wcm90by1mcm9tLWN0
b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgQXN5bmNHZW5lcmF0
b3JGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25dwrspIHRvIGJl
IHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBl
IGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFzeW5jR2VuZXJhdG9y
RnVuY3Rpb25dwrssIMKrW29iamVjdCBBc3luY0dlbmVyYXRvckZ1bmN0aW9uXcK7KSB0byBiZSB0
cnVlJwogdGVzdC9idWlsdC1pbnMvQXN5bmNHZW5lcmF0b3JQcm90b3R5cGUvcmV0dXJuL3JldHVy
bi1zdXNwZW5kZWRZaWVsZC1wcm9taXNlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MjpBc3luY1Rl
c3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVzdDI2MkVycm9yOiBBc3luY0dlbmVyYXRvclJlc29s
dmUoZ2VuZXJhdG9yLCByZXN1bHRWYWx1ZSwgdHJ1ZSkgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29i
amVjdCBQcm9taXNlXcK7LCDCq3Vud3JhcHBlZC12YWx1ZcK7KSB0byBiZSB0cnVlJwogICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjI6QXN5bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFRlc3QyNjJF
cnJvcjogQXN5bmNHZW5lcmF0b3JSZXNvbHZlKGdlbmVyYXRvciwgcmVzdWx0VmFsdWUsIHRydWUp
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgUHJvbWlzZV3Cuywgwqt1bndyYXBwZWQtdmFs
dWXCuykgdG8gYmUgdHJ1ZScKQEAgLTgwNCw5ICs3ODYsNiBAQCB0ZXN0L2J1aWx0LWlucy9CaWdJ
bnQvYXNVaW50Ti9vcmRlci1vZi1zCiB0ZXN0L2J1aWx0LWlucy9CaWdJbnQvY29uc3RydWN0b3It
aW50ZWdlci5qczoKICAgZGVmYXVsdDogJ1JhbmdlRXJyb3I6IE5vdCBzYWZlIGludGVnZXInCiAg
IHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogTm90IHNhZmUgaW50ZWdlcicKLXRlc3QvYnVpbHQt
aW5zL0Jvb2xlYW4vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtmYWxzZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtm
YWxzZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9j
dXN0b20tcHJvdG8tYWNjZXNzLWRldGFjaGVzLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRp
b24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3du
IGF0IGFsbCcKQEAgLTgxNiw5ICs3OTUsNiBAQCB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9kZXRh
Y2hlZC1idWZmZXIuCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9sZW5ndGguanM6CiAgIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxkIGJlIDEnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9yIHZhbHVlIHNob3VsZCBiZSAxJwotdGVz
dC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IERhdGFWaWV3XcK7
LCDCq1tvYmplY3QgRGF0YVZpZXddwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IERhdGFWaWV3XcK7LCDCq1tv
YmplY3QgRGF0YVZpZXddwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9w
cm90b3R5cGUvYnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0
aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93
biBhdCBhbGwnCkBAIC05MjEsMTggKzg5Nyw2IEBAIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3By
b3RvdHlwZS9zZXRVaW4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRVaW50
OC9kZXRhY2hlZC1idWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3InCi10ZXN0
L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS1vbmUuanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDC
q1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBP
YmplY3RdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rv
ci1yZWFsbS10d28uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29i
amVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1
aWx0LWlucy9EYXRlL3Byb3RvLWZyb20tY3Rvci1yZWFsbS16ZXJvLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtb
b2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2Jq
ZWN0XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRXJyb3IvcHJvdG8tZnJvbS1jdG9y
LXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtFcnJvcsK7LCDCq0Vycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtFcnJvcsK7LCDCq0Vycm9ywrspIHRvIGJlIHRy
dWUnCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9jYWxsLWJpbmQtdGhpcy1yZWFsbS11bmRlZi5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogaW1wbGljaXQgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq1tvYmplY3QgZ2xvYmFsXcK7LCDCq1tvYmplY3QgVW5kZWZpbmVkXcK7KSB0
byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogaW1wbGljaXQgdW5kZWZp
bmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgZ2xvYmFsXcK7LCDCq1tvYmplY3QgVW5k
ZWZpbmVkXcK7KSB0byBiZSB0cnVlJwpAQCAtOTUxLDkgKzkxNSw2IEBAIHRlc3QvYnVpbHQtaW5z
L0Z1bmN0aW9uL2ludGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVy
bmFscy9Db25zdHJ1Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVhbG0uanM6CiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgYnV0IGdvdCBh
IFJlZmVyZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
YSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10ZXN0L2J1aWx0LWlu
cy9GdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2Z1bmN0aW9uICgpIHsnCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtmdW5jdGlvbiAoKSB7JwogdGVz
dC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvbGVuZ3RoLWV4Y2VlZHMtaW50MzIu
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywg
wqsyMTQ3NDgzNjQ4wrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUowqswwrssIMKrMjE0NzQ4MzY0OMK7KSB0byBiZSB0cnVlJwpA
QCAtMTA5MiwzOSArMTA1MywxMiBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUv
dG9TdHJpCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpbmcvdW5pY29k
ZS5qczoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rp
b24gU3ludGF4OiAnZnVuY3Rpb24gYShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7
MDAwNjN9OyByZXR1cm4gYjsgfScuKGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2Mykg
eyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0pIgogICBzdHJpY3QgbW9kZTogIlRl
c3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnZnVuY3Rpb24g
YShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfScu
KGZ1bmN0aW9uIFxcdTAwNjEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYz
fTsgcmV0dXJuIGI7IH0pIgotdGVzdC9idWlsdC1pbnMvR2VuZXJhdG9yRnVuY3Rpb24vcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXcK7LCDCq1tvYmplY3QgR2VuZXJh
dG9yRnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXcK7LCDCq1tv
YmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9K
U09OL3BhcnNlL3Jldml2ZXItb2JqZWN0LW5vbi1jb25maWd1cmFibGUtcHJvcC1jcmVhdGUuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzIywrssIMKr
MsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMKrMjLCuywgwqsywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9NYXAv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE1hcF3Cuywgwqtbb2JqZWN0IE1hcF3CuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgTWFwXcK7LCDCq1tvYmplY3QgTWFwXcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWls
dC1pbnMvTmF0aXZlRXJyb3JzL0V2YWxFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq0V2YWxFcnJvcsK7LCDCq0V2YWxFcnJvcsK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXZhbEVycm9ywrssIMKrRXZhbEVycm9y
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmFuZ2VFcnJvci9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1JhbmdlRXJy
b3LCuywgwqtSYW5nZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFs
dWUowqtSYW5nZUVycm9ywrssIMKrUmFuZ2VFcnJvcsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWls
dC1pbnMvTmF0aXZlRXJyb3JzL1JlZmVyZW5jZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5q
czoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRl
ZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrUmVmZXJlbmNlRXJyb3LCuywgwqtSZWZlcmVuY2VF
cnJvcsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFy
Z2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrUmVmZXJlbmNl
RXJyb3LCuywgwqtSZWZlcmVuY2VFcnJvcsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMv
TmF0aXZlRXJyb3JzL1N5bnRheEVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrU3ludGF4RXJyb3LCuywgwqtTeW50YXhFcnJvcsK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrU3ludGF4RXJyb3LCuywgwqtTeW50YXhF
cnJvcsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1R5cGVFcnJv
ci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1R5cGVF
cnJvcsK7LCDCq1R5cGVFcnJvcsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrVHlwZUVycm9ywrssIMKrVHlwZUVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvVVJJRXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUowqtVUklFcnJvcsK7LCDCq1VSSUVycm9ywrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVu
ZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtVUklFcnJvcsK7LCDCq1VSSUVycm9ywrspIHRv
IGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9OdW1iZXIvYmlnaW50LWNvbnZlcnNpb24uanM6CiAg
IGRlZmF1bHQ6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVy
JyBpcyBub3QgYWxsb3dlZC4iCiAgIHN0cmljdCBtb2RlOiAiVHlwZUVycm9yOiBDb252ZXJzaW9u
IGZyb20gJ0JpZ0ludCcgdG8gJ251bWJlcicgaXMgbm90IGFsbG93ZWQuIgotdGVzdC9idWlsdC1p
bnMvTnVtYmVyL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzDCuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywgwqswwrsp
IHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9PYmplY3QvZW50cmllcy9vcmRlci1hZnRlci1k
ZWZpbmUtcHJvcGVydHkuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFti
LCBhXSBhbmQgW2EsIGJdIHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuICcKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFtiLCBhXSBhbmQgW2EsIGJdIHRvIGhhdmUgdGhl
IHNhbWUgY29udGVudHMuICcKQEAgLTExNDcsOSArMTA4MSw2IEBAIHRlc3QvYnVpbHQtaW5zL09i
amVjdC9pbnRlcm5hbHMvRGVmaW5lT3cKIHRlc3QvYnVpbHQtaW5zL09iamVjdC9rZXlzL29yZGVy
LWFmdGVyLWRlZmluZS1wcm9wZXJ0eS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4gJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8g
aGF2ZSB0aGUgc2FtZSBjb250ZW50cy4gJwotdGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtb
b2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKIHRlc3Qv
YnVpbHQtaW5zL09iamVjdC9wcm90b3R5cGUvdG9TdHJpbmcvcHJveHktZnVuY3Rpb24uanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgRnVuY3Rpb25dwrspIHRvIGJlIHRydWUn
CiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IEZ1bmN0aW9uXcK7KSB0byBi
ZSB0cnVlJwpAQCAtMTE4Niw5ICsxMTE3LDYgQEAgdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9jcmVh
dGUtcmVzb2x2aW5nLQogdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9leGVjdXRvci1mdW5jdGlvbi1u
b25jb25zdHJ1Y3Rvci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrdHJ1ZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8g
YmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL1Byb21pc2UvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0
IFByb21pc2VdwrssIMKrW29iamVjdCBQcm9taXNlXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBQcm9taXNl
XcK7LCDCq1tvYmplY3QgUHJvbWlzZV3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1By
b21pc2UvcHJvdG90eXBlL2ZpbmFsbHkvaW52b2tlcy10aGVuLXdpdGgtZnVuY3Rpb24uanM6CiAg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGZ1bGZpbGxtZW50IGhhbmRsZXIgaXMgbm90IGNvbnN0
cnVjdG9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZnVsZmlsbG1lbnQgaGFuZGxl
ciBpcyBub3QgY29uc3RydWN0b3InCkBAIC0xNjU0LDkgKzE1ODIsNiBAQCB0ZXN0L2J1aWx0LWlu
cy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9nCiB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVy
dHktZXNjYXBlcy9nZW5lcmF0ZWQvWElEX1N0YXJ0LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBgXHB7WElEX1N0YXJ0fWAgc2hvdWxkIG1hdGNoIFUrMDAxQ0ZBIChg4bO6YCknCiAgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBgXHB7WElEX1N0YXJ0fWAgc2hvdWxkIG1hdGNoIFUr
MDAxQ0ZBIChg4bO6YCknCi10ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvdG8tZnJvbS1jdG9yLXJl
YWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsv
KD86KS/CuywgwqsvKD86KS/CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqy8oPzopL8K7LCDCqy8oPzopL8K7KSB0byBiZSB0
cnVlJwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3RvdHlwZS9TeW1ib2wubWF0Y2gvYnVpbHRp
bi1pbmZlci11bmljb2RlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqvvv73CuywgwqtudWxswrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvvv73CuywgwqtudWxswrspIHRvIGJl
IHRydWUnCkBAIC0xNjk5LDEyICsxNjI0LDYgQEAgdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3Rv
dHlwZS91bmljb2RlLwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3F1YW50aWZpZXItaW50ZWdlci1s
aW1pdC5qczoKICAgZGVmYXVsdDogJ1N5bnRheEVycm9yOiBJbnZhbGlkIHJlZ3VsYXIgZXhwcmVz
c2lvbjogbnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyJwogICBzdHJpY3QgbW9kZTog
J1N5bnRheEVycm9yOiBJbnZhbGlkIHJlZ3VsYXIgZXhwcmVzc2lvbjogbnVtYmVyIHRvbyBsYXJn
ZSBpbiB7fSBxdWFudGlmaWVyJwotdGVzdC9idWlsdC1pbnMvU2V0L3Byb3RvLWZyb20tY3Rvci1y
ZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
W29iamVjdCBTZXRdwrssIMKrW29iamVjdCBTZXRdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFNldF3Cuywg
wqtbb2JqZWN0IFNldF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCiB0ZXN0
L2J1aWx0LWlucy9UaHJvd1R5cGVFcnJvci9leHRlbnNpYmxlLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUg
dHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q3RydWXCuywgwqtmYWxzZcK7KSB0byBiZSB0cnVlJwpAQCAtMTc3MCwyMSArMTY4OSw5IEBAIHRl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvYnVmZmVyLWFyZy9sZW5ndGgtdG8tbnVtYmVyLWRl
dGFjaGJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBl
RXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBn
b3QgYSBSYW5nZUVycm9yIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvcHJvdG8tZnJvbS1j
dG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRB
cnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4p
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29i
amVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvbGVuZ3RoLWFyZy9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwot
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9uby1hcmdzL3Byb3Rv
LWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
U2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBG
bG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0
QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFy
cmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
CiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcv
bGVuZ3RoLWV4Y2Vzc2l2ZS10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBSYW5nZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5Likn
Ci10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2Jq
ZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9h
dDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRh
cnJheS1hcmcvZGV0YWNoZWQtd2hlbi1zcGVjaWVzLXJldHJpZXZlZC1kaWZmZXJlbnQtdHlwZS5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogVHlwZUVycm9yIHRocm93biBmb3IgZGV0YWNo
ZWQgc291cmNlIGJ1ZmZlciBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5v
IGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4p
JwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogVHlwZUVycm9yIHRocm93biBmb3IgZGV0
YWNoZWQgc291cmNlIGJ1ZmZlciBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwpAQCAtMTgxMiw5ICsxNzE5LDYgQEAgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy9jdAogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90
eXBlZGFycmF5LWFyZy9vdGhlci1jdG9yLWJ1ZmZlci1jdG9yLXNwZWNpZXMtcHJvdG90eXBlLXRo
cm93cy5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJy
b3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rp
bmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0
aHJvd24gYXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0
QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tv
YmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3Nh
bWUtY3Rvci1idWZmZXItY3Rvci1hY2Nlc3MtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBG
bG9hdDY0QXJyYXkuKScKQEAgLTE5MDIsMjQgKzE4MDYsOSBAQCB0ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL29mCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0
b3JzL29mL25ldy1pbnN0YW5jZS11c2luZy1jdXN0b20tY3Rvci5qczoKICAgZGVmYXVsdDogJ1R5
cGVFcnJvcjogVHlwZWRBcnJheS5vZiByZXF1aXJlcyBpdHMgdGhpcyBhcmd1bWVudCB0byBzdWJj
bGFzcyBhIFR5cGVkQXJyYXkgY29uc3RydWN0b3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKICAgc3RyaWN0IG1vZGU6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWlyZXMgaXRz
IHRoaXMgYXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9yIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9XZWFrTWFwL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBXZWFrTWFwXcK7LCDCq1tvYmplY3QgV2Vha01hcF3CuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgV2Vha01hcF3Cuywgwqtbb2JqZWN0IFdlYWtNYXBdwrspIHRvIGJlIHRydWUnCi10
ZXN0L2J1aWx0LWlucy9XZWFrUmVmL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrUmVmXcK7LCDCq1tvYmplY3QgV2Vha1JlZl3Cuykg
dG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90
b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1JlZl3C
uywgwqtbb2JqZWN0IFdlYWtSZWZdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9XZWFr
U2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBXZWFrU2V0XcK7LCDCq1tvYmplY3QgV2Vha1Nl
dF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1NldF3Cuywgwqtbb2JqZWN0IFdlYWtTZXRdwrspIHRv
IGJlIHRydWUnCi10ZXN0L2ludGw0MDIvQ29sbGF0b3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9i
amVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1Rh
cmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3Qg
T2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAy
L0NvbGxhdG9yL3VzYWdlLWRlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBbw4QsIEFFXSBhbmQgW0FFLCDDhF0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4gc2VhcmNo
JwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgW8OELCBBRV0gYW5kIFtB
RSwgw4RdIHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuIHNlYXJjaCcKLXRlc3QvaW50bDQwMi9E
YXRlVGltZUZvcm1hdC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVW
YWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVl
JwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0MDIvRGF0ZVRpbWVGb3JtYXQvcHJv
dG90eXBlL3Jlc29sdmVkT3B0aW9ucy9ob3VyQ3ljbGUtZGVmYXVsdC5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKraDI0wrssIMKraDIzwrspIHRvIGJl
IHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtoMjTCuywgwqtoMjPCuykgdG8gYmUgdHJ1ZScKQEAgLTE5NDEsMTIgKzE4MzAsNiBAQCB0ZXN0
L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3ByCiB0ZXN0L2ludGw0MDIvSW50bC9n
ZXRDYW5vbmljYWxMb2NhbGVzL3ByZWZlcnJlZC12YXJpYW50LmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtqYS1MYXRuLWFsYWxjOTfCuywgwqtqYS1M
YXRuLWhlcGJ1cm4taGVwbG9jwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtqYS1MYXRuLWFsYWxjOTfCuywgwqtqYS1MYXRu
LWhlcGJ1cm4taGVwbG9jwrspIHRvIGJlIHRydWUnCi10ZXN0L2ludGw0MDIvTnVtYmVyRm9ybWF0
L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3
VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVj
dCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3Cuykg
dG8gYmUgdHJ1ZScKLXRlc3QvaW50bDQwMi9QbHVyYWxSdWxlcy9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmpl
Y3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
bmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29i
amVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2lu
dGw0MDIvbGFuZ3VhZ2UtdGFncy1pbnZhbGlkLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBUZXN0IGRhdGEgImRlLWdyZWdvcnktZ3JlZ29yeSIgaXMgYSBjYW5vbmljYWxpemVkIGFuZCBz
dHJ1Y3R1cmFsbHkgdmFsaWQgbGFuZ3VhZ2UgdGFnLicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IFRlc3QgZGF0YSAiZGUtZ3JlZ29yeS1ncmVnb3J5IiBpcyBhIGNhbm9uaWNhbGl6ZWQg
YW5kIHN0cnVjdHVyYWxseSB2YWxpZCBsYW5ndWFnZSB0YWcuJwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiAyNjAxODUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTA0IEBACisyMDIwLTA0LTE2ICBBbGV4
ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGds
b2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgSWYgInByb3RvdHlwZSIgaXMgbm90IGFuIG9iamVjdCwgYnVpbHQtaW4gY29uc3RydWN0b3Jz
IHNob3VsZCB1c2UgTmV3VGFyZ2V0J3MgcmVhbG0KKyAgICAgICAgdG8gb2J0YWluIGRlZmF1bHQg
W1tQcm90b3R5cGVdXSB2YWx1ZSAoZm9yIGV4YW1wbGUsIE1hcCBjb25zdHJ1Y3RvciBbMV0pLgor
ICAgICAgICBCZWZvcmUgdGhpcyBjaGFuZ2UsIHJlYWxtIG9mIGFjdGl2ZSBjb25zdHJ1Y3RvciB3
YXMgdXNlZCBpbnN0ZWFkLiBUaGlzIHBhdGNoIGFsaWducworICAgICAgICBhbGwgc3ViY2xhc3Nh
YmxlIEphdmFTY3JpcHRDb3JlIGNvbnN0cnVjdG9ycyB3aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNw
aWRlck1vbmtleS4KKworICAgICAgICBXaGlsZSBhIGR5bmFtaWNhbGx5IGNyZWF0ZWQgZnVuY3Rp
b24gdXNlcyBOZXdUYXJnZXQncyByZWFsbSBmb3IgaXRzIFtbUHJvdG90eXBlXV0KKyAgICAgICAg
c2ltaWxhciB0byBvdGhlciBidWlsdC1pbnMsIGl0cyAicHJvdG90eXBlIiBvYmplY3QgaW5oZXJp
dCBmcm9tIE9iamVjdFByb3RvdHlwZQorICAgICAgICBvZiBhY3RpdmUgY29uc3RydWN0b3IncyBy
ZWFsbSBbMl0gKGp1c3QgbGlrZSB0aGVpciBzY29wZSksIG1ha2luZyBpdCByZXRhaW4gcmVmZXJl
bmNlcworICAgICAgICB0byAyIGRpZmZlcmVudCBnbG9iYWwgb2JqZWN0cy4gVG8gYWNjb21vZGF0
ZSB0aGlzIGJlaGF2aW9yLCB0aGlzIGNoYW5nZSBpbnRyb2R1Y2VzCisgICAgICAgIGBzY29wZUds
b2JhbE9iamVjdGAgaW4gSlNGdW5jdGlvbi5jcHAgbWV0aG9kcy4KKworICAgICAgICBBYm92ZS1t
ZW50aW9uZWQgYmVoYXZpb3IgYWxzbyBzaW1wbGlmaWVzIGNyZWF0aW9uIG9mIEpTR2VuZXJhdG9y
IGFuZCBKU0FzeW5jR2VuZXJhdG9yCisgICAgICAgIGluc3RhbmNlcyBzaW5jZSBOZXdUYXJnZXQn
cyByZWFsbSBpcyBpcnJlbGV2YW50IHRvIHRoZW0uCisKKyAgICAgICAgSW50bENvbGxhdG9yQ29u
c3RydWN0b3I6OmNvbGxhdG9yU3RydWN0dXJlKCkgYW5kIDMgc2ltaWxhciBJbnRsKkNvbnN0cnVj
dG9yIG1ldGhvZHMKKyAgICAgICAgYXJlIHJlbW92ZWQgYmVjYXVzZSBhKSB3aXRoIHRoaXMgY2hh
bmdlLCBlYWNoIG9mIHRoZW0gaGF2ZSBtYXggb25lIGNhbGwgc2l0ZSBhbmQKKyAgICAgICAgYikg
b3RoZXIgSlNDIGNvbnN0cnVjdG9ycyBoYXZlIG5vIG1ldGhvZHMgYWxpa2UuCisKKyAgICAgICAg
WzFdOiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLW1hcC1jb25zdHJ1Y3RvciAoc3RlcCAy
KQorICAgICAgICBbMl06IGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtY3JlYXRlZHluYW1p
Y2Z1bmN0aW9uIChzdGVwcyAyMy0yNSkKKworICAgICAgICAqIGRmZy9ERkdPcGVyYXRpb25zLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICog
cnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAg
ICAqIHJ1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3Ry
dWN0V2l0aEJvb2xlYW5Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Db21tb25TbG93
UGF0aHMuY3BwOgorICAgICAgICAoSlNDOjpTTE9XX1BBVEhfREVDTCk6CisgICAgICAgICogcnVu
dGltZS9EYXRlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3REYXRlKToK
KyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpj
b25zdHJ1Y3RFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZh
bEVuYWJsZWRDaGVjayk6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEludGxDb2xsYXRvcik6CisgICAgICAgIChK
U0M6OmNhbGxJbnRsQ29sbGF0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bENvbGxhdG9yQ29u
c3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToKKyAg
ICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51
bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bE51
bWJlckZvcm1hdCk6CisgICAgICAgIChKU0M6OmNhbGxJbnRsTnVtYmVyRm9ybWF0KToKKyAgICAg
ICAgKiBydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1
bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25z
dHJ1Y3RJbnRsUGx1cmFsUnVsZXMpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0b3I8c2hh
cmluZ01vZGU+Ojpjb25zdHJ1Y3RBcnJheUJ1ZmZlcik6CisgICAgICAgICogcnVudGltZS9KU0Z1
bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6cHJvdG90eXBlRm9yQ29uc3Ry
dWN0aW9uKToKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6Z2V0T3duUHJvcGVydHlTbG90KToK
KyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxp
bmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmlldyk6Cisg
ICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKEpTQzo6
SlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2Nh
dGlvbiBjb25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3RvcjxlcnJv
clR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50
aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0TnVtYmVy
Q29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAgICAgKiBy
dW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVnRXhwU3Ry
dWN0dXJlKToKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAgKEpTQzo6
ZXNTcGVjUmVnRXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9y
Lmg6CisgICAgICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdFNldCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6CisgICAgICAg
ICogcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1
Y3RXZWFrTWFwKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1bnRpbWUv
V2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha1NldCk6
CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcik6Cisg
ICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoSlNDOjpjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5SW5zdGFuY2UpOgorICAgICAgICAqIHdh
c20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6
OmNvbnN0cnVjdEpTV2ViQXNzZW1ibHlMaW5rRXJyb3IpOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5
TW9kdWxlQ29uc3RydWN0b3I6OmNyZWF0ZU1vZHVsZSk6CisgICAgICAgICogd2FzbS9qcy9XZWJB
c3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3Ry
dWN0SlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcik6CisKIDIwMjAtMDQtMTYgIFl1c3VrZSBTdXp1
a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBJbXBsZW1lbnQgSlNNYXBJ
dGVyYXRvci9KU1NldEl0ZXJhdG9yIHdpdGggSlNJbnRlcm5hbEZpZWxkT2JqZWN0SW1wbApJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3BwCShyZXZpc2lv
biAyNjAxODUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0zOTMsNyArMzkzLDggQEAgSlNDZWxsKiBKSVRfT1BFUkFUSU9O
IG9wZXJhdGlvbkNyZWF0ZVBybwogICAgIENhbGxGcmFtZSogY2FsbEZyYW1lID0gREVDTEFSRV9D
QUxMX0ZSQU1FKHZtKTsKICAgICBKSVRPcGVyYXRpb25Qcm9sb2d1ZUNhbGxGcmFtZVRyYWNlciB0
cmFjZXIodm0sIGNhbGxGcmFtZSk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VD
b25zdHJ1Y3RvcigpLCBjb25zdHJ1Y3RvciwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlU3RydWN0dXJl
KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGNvbnN0cnVjdG9yLT5nbG9iYWxP
YmplY3Qodm0pLT5wcm9taXNlU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVjdG9yLCBiYXNlU3Ry
dWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICBS
RUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTUHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUp
KTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMTg1KQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjYWxsCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgQXJnTGlzdCBhcmdzKGNhbGxGcmFtZSk7
Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYykpOwor
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmMsIGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCkpKTsKIH0KIAogQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yOjpBc3lu
Y0Z1bmN0aW9uQ29uc3RydWN0b3IoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25z
dHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMTg1KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNv
bnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zdHJ1Y3RBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAg
QXJnTGlzdCBhcmdzKGNhbGxGcmFtZSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25z
dHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25z
dHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvcikpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0
aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3IsIGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCkpKTsKIH0KIAogQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yOjpBc3luY0dlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3IoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0
cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDMsNyArNDMs
MTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2
bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19T
Q09QRSh2bSk7CiAgICAgSlNWYWx1ZSBib29sZWFuID0ganNCb29sZWFuKGNhbGxGcmFtZS0+YXJn
dW1lbnQoMCkudG9Cb29sZWFuKGdsb2JhbE9iamVjdCkpOwotICAgIFN0cnVjdHVyZSogYm9vbGVh
blN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgp
LCBnbG9iYWxPYmplY3QtPmJvb2xlYW5PYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBu
ZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQu
aXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3
VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpOworICAg
IFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdU
YXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOwogICAgIEJvb2xlYW5PYmplY3QqIG9iaiA9IEJvb2xlYW5PYmplY3Q6
OmNyZWF0ZSh2bSwgYm9vbGVhblN0cnVjdHVyZSk7CiAgICAgb2JqLT5zZXRJbnRlcm5hbFZhbHVl
KHZtLCBib29sZWFuKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1v
blNsb3dQYXRocy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQ29tbW9uU2xvd1BhdGhzLmNwcAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
Mjg0LDcgKzI4NCw4IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfcHJvbWlzZSkK
ICAgICAgICAgQ0hFQ0tfRVhDRVBUSU9OKCk7CiAgICAgICAgIHJlc3VsdCA9IEpTSW50ZXJuYWxQ
cm9taXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVj
dHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCksIGNv
bnN0cnVjdG9yQXNPYmplY3QsIGdsb2JhbE9iamVjdC0+cHJvbWlzZVN0cnVjdHVyZSgpKTsKKyAg
ICAgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gY29uc3RydWN0b3JBc09iamVjdC0+Z2xv
YmFsT2JqZWN0KHZtKS0+cHJvbWlzZVN0cnVjdHVyZSgpOworICAgICAgICBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3JB
c09iamVjdCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAg
ICAgICByZXN1bHQgPSBKU1Byb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rv
ci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0Myw3ICsxNDMsOCBAQCBK
U09iamVjdCogY29uc3RydWN0RGF0ZShKU0dsb2JhbE9iamVjdCogCiAgICAgICAgIHZhbHVlID0g
bWlsbGlzZWNvbmRzRnJvbUNvbXBvbmVudHMoZ2xvYmFsT2JqZWN0LCBhcmdzLCBXVEY6OkxvY2Fs
VGltZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKLSAgICBT
dHJ1Y3R1cmUqIGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCks
IG5ld1RhcmdldCwgZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCkpOworICAgIFN0cnVjdHVy
ZSogYmFzZVN0cnVjdHVyZSA9IChuZXdUYXJnZXQgPyBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9i
YWxPYmplY3Qodm0pIDogZ2xvYmFsT2JqZWN0KS0+ZGF0ZVN0cnVjdHVyZSgpOworICAgIFN0cnVj
dHVyZSogZGF0ZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5kYXRlQ29uc3RydWN0b3IoKSwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBu
dWxscHRyKTsKIAogICAgIHJldHVybiBEYXRlSW5zdGFuY2U6OmNyZWF0ZSh2bSwgZGF0ZVN0cnVj
dHVyZSwgdmFsdWUpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC01Nyw3ICs1NywxMCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEVy
CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFy
Z3VtZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5lcnJvclN0cnVj
dHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7
CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VT
dHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5lcnJvclN0
cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2Nv
cGUsIEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBl
cnJvclN0cnVjdHVyZSwgbWVzc2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwog
fQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
NTIsMTkgKzE1MiwyMCBAQCBKU09iamVjdCogY29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxF
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAorICAgIEpTR2xvYmFsT2JqZWN0KiBz
dHJ1Y3R1cmVHbG9iYWxPYmplY3QgPSBuZXdUYXJnZXQgPyBhc09iamVjdChuZXdUYXJnZXQpLT5n
bG9iYWxPYmplY3Qodm0pIDogZ2xvYmFsT2JqZWN0OwogICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gbnVsbHB0cjsKICAgICBzd2l0Y2ggKGZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZSkgewogICAg
IGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpGdW5jdGlvbjoKLSAgICAgICAgc3RydWN0
dXJlID0gSlNGdW5jdGlvbjo6c2VsZWN0U3RydWN0dXJlRm9yTmV3RnVuY0V4cChnbG9iYWxPYmpl
Y3QsIGZ1bmN0aW9uKTsKKyAgICAgICAgc3RydWN0dXJlID0gSlNGdW5jdGlvbjo6c2VsZWN0U3Ry
dWN0dXJlRm9yTmV3RnVuY0V4cChzdHJ1Y3R1cmVHbG9iYWxPYmplY3QsIGZ1bmN0aW9uKTsKICAg
ICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkdlbmVyYXRv
cjoKLSAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0
cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmdl
bmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVu
Y3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYzoKLSAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFs
T2JqZWN0LT5hc3luY0Z1bmN0aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0
cnVjdHVyZUdsb2JhbE9iamVjdC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBi
cmVhazsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3I6
Ci0gICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JGdW5jdGlv
blN0cnVjdHVyZSgpOworICAgICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3Qt
PmFzeW5jR2VuZXJhdG9yRnVuY3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAg
fQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAxODUpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTkxLDcgKzkxLDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3
VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQg
YmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBjb2xsYXRvciBiZSBPcmRpbmFyeUNyZWF0ZUZy
b21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVDb2xsYXRvclByb3RvdHlwZSUpLgogICAgIC8vIDMu
IFJldHVybklmQWJydXB0KGNvbGxhdG9yKS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8SW50bENv
bGxhdG9yQ29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpLT5jb2xsYXRvclN0cnVj
dHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFz
ZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmNvbGxh
dG9yU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBJbnRsQ29sbGF0b3IqIGNvbGxhdG9y
ID0gSW50bENvbGxhdG9yOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgQVNTRVJUKGNvbGxh
dG9yKTsKQEAgLTEwOSwxNCArMTEyLDEzIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNhbGwKICAgICAvLyBOZXdUYXJnZXQgaXMgYWx3YXlzIHVuZGVmaW5lZCB3aGVuIGNh
bGxlZCBhcyBhIGZ1bmN0aW9uLgogCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwot
ICAgIEludGxDb2xsYXRvckNvbnN0cnVjdG9yKiBjYWxsZWUgPSBqc0Nhc3Q8SW50bENvbGxhdG9y
Q29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwogCiAgICAgLy8gRklYTUU6IENv
bGxhdG9yIGRvZXMgbm90IGdldCB0aGUgd29ya2Fyb3VuZCBmb3IgRUNNQS00MDIgMS4wIGNvbXBh
dGliaWxpdHkuCiAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1MzY3OQogCiAgICAgLy8gMi4gTGV0IGNvbGxhdG9yIGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNv
bnN0cnVjdG9yKG5ld1RhcmdldCwgJUNvbGxhdG9yUHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0
dXJuSWZBYnJ1cHQoY29sbGF0b3IpLgotICAgIEludGxDb2xsYXRvciogY29sbGF0b3IgPSBJbnRs
Q29sbGF0b3I6OmNyZWF0ZSh2bSwgY2FsbGVlLT5jb2xsYXRvclN0cnVjdHVyZSh2bSkpOworICAg
IEludGxDb2xsYXRvciogY29sbGF0b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgY2FsbEZy
YW1lLT5qc0NhbGxlZSgpLT5nbG9iYWxPYmplY3Qodm0pLT5jb2xsYXRvclN0cnVjdHVyZSgpKTsK
ICAgICBBU1NFUlQoY29sbGF0b3IpOwogCiAgICAgLy8gNC4gUmV0dXJuIEluaXRpYWxpemVDb2xs
YXRvcihjb2xsYXRvciwgbG9jYWxlcywgb3B0aW9ucykuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmgJKHJl
dmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xs
YXRvckNvbnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDggKzQ0LDYgQEAgcHVibGlj
OgogCiAgICAgREVDTEFSRV9JTkZPOwogCi0gICAgU3RydWN0dXJlKiBjb2xsYXRvclN0cnVjdHVy
ZShWTSYpIGNvbnN0IHsgcmV0dXJuIGdsb2JhbE9iamVjdCgpLT5jb2xsYXRvclN0cnVjdHVyZSgp
OyB9Ci0KIHByb3RlY3RlZDoKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bENvbGxh
dG9yUHJvdG90eXBlKik7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAJKHJl
dmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEsNyArOTEsMTAg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIC8vIDEuIElm
IE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIGxldCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5j
dGlvbiBvYmplY3QsIGVsc2UgbGV0IG5ld1RhcmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gMi4g
TGV0IGRhdGVUaW1lRm9ybWF0IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1Rh
cmdldCwgJURhdGVUaW1lRm9ybWF0UHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1
cHQoZGF0ZVRpbWVGb3JtYXQpLgotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUt
PmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmRhdGVUaW1lRm9ybWF0
U3RydWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1Rh
cmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJl
KiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+
ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxEYXRlVGlt
ZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQgPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2bSwg
c3RydWN0dXJlKTsKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwpAQCAtMTA4LDE0ICsxMTEs
MTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogICAgIC8vIDEu
IElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIGxldCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBm
dW5jdGlvbiBvYmplY3QsIGVsc2UgbGV0IG5ld1RhcmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8g
TmV3VGFyZ2V0IGlzIGFsd2F5cyB1bmRlZmluZWQgd2hlbiBjYWxsZWQgYXMgYSBmdW5jdGlvbi4K
IAotICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKiBjYWxsZWUgPSBqc0Nhc3Q8SW50
bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCiAg
ICAgLy8gRklYTUU6IFdvcmthcm91bmQgdG8gcHJvdmlkZSBjb21wYXRpYmlsaXR5IHdpdGggRUNN
QS00MDIgMS4wIGNhbGwvYXBwbHkgcGF0dGVybnMuCiAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzY3OQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
Y29uc3RydWN0SW50bEluc3RhbmNlV2l0aFdvcmthcm91bmRGb3JMZWdhY3lJbnRsQ29uc3RydWN0
b3I8SW50bERhdGVUaW1lRm9ybWF0PihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVl
KCksIGNhbGxlZSwgWyZdIChWTSYgdm0pIHsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNv
bnN0cnVjdEludGxJbnN0YW5jZVdpdGhXb3JrYXJvdW5kRm9yTGVnYWN5SW50bENvbnN0cnVjdG9y
PEludGxEYXRlVGltZUZvcm1hdD4oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgp
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIFsmXSAoVk0mIHZtKSB7CiAgICAgICAgIC8vIDIuIExl
dCBkYXRlVGltZUZvcm1hdCBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJn
ZXQsICVEYXRlVGltZUZvcm1hdFByb3RvdHlwZSUpLgogICAgICAgICAvLyAzLiBSZXR1cm5JZkFi
cnVwdChkYXRlVGltZUZvcm1hdCkuCi0gICAgICAgIEludGxEYXRlVGltZUZvcm1hdCogZGF0ZVRp
bWVGb3JtYXQgPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZSh2bSwgY2FsbGVlLT5kYXRlVGlt
ZUZvcm1hdFN0cnVjdHVyZSh2bSkpOworICAgICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGRhdGVU
aW1lRm9ybWF0ID0gSW50bERhdGVUaW1lRm9ybWF0OjpjcmVhdGUodm0sIGNhbGxGcmFtZS0+anND
YWxsZWUoKS0+Z2xvYmFsT2JqZWN0KHZtKS0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUoKSk7CiAg
ICAgICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAKICAgICAgICAgLy8gNC4gUmV0dXJuIElu
aXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucyku
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRD
b25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDggKzQ0LDYgQEAgcHVibGljOgogCiAgICAgREVDTEFS
RV9JTkZPOwogCi0gICAgU3RydWN0dXJlKiBkYXRlVGltZUZvcm1hdFN0cnVjdHVyZShWTSYpIGNv
bnN0IHsgcmV0dXJuIGdsb2JhbE9iamVjdCgpLT5kYXRlVGltZUZvcm1hdFN0cnVjdHVyZSgpOyB9
Ci0KIHByb3RlY3RlZDoKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlKik7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJl
ckZvcm1hdENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEsNyArOTEsMTAgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIC8vIDEuIElmIE5l
d1RhcmdldCBpcyB1bmRlZmluZWQsIGxldCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlv
biBvYmplY3QsIGVsc2UgbGV0IG5ld1RhcmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gMi4gTGV0
IG51bWJlckZvcm1hdCBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQs
ICVOdW1iZXJGb3JtYXRQcm90b3R5cGUlKS4KICAgICAvLyAzLiBSZXR1cm5JZkFicnVwdChudW1i
ZXJGb3JtYXQpLgotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsTnVtYmVyRm9ybWF0Q29uc3Ry
dWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpLT5udW1iZXJGb3JtYXRTdHJ1Y3R1cmUodm0p
KTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAg
QVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1
cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5udW1iZXJGb3JtYXRT
dHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIEludGxOdW1iZXJGb3JtYXQqIG51bWJlckZv
cm1hdCA9IEludGxOdW1iZXJGb3JtYXQ6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NF
UlQobnVtYmVyRm9ybWF0KTsKQEAgLTEwOCwxNCArMTExLDEyIEBAIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZp
bmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxl
dCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIE5ld1RhcmdldCBpcyBhbHdheXMgdW5k
ZWZpbmVkIHdoZW4gY2FsbGVkIGFzIGEgZnVuY3Rpb24uCiAKLSAgICBJbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IqIGNhbGxlZSA9IGpzQ2FzdDxJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3Iq
PihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCiAgICAgLy8gRklYTUU6IFdvcmthcm91bmQgdG8g
cHJvdmlkZSBjb21wYXRpYmlsaXR5IHdpdGggRUNNQS00MDIgMS4wIGNhbGwvYXBwbHkgcGF0dGVy
bnMuCiAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzY3
OQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0SW50bEluc3RhbmNlV2l0aFdv
cmthcm91bmRGb3JMZWdhY3lJbnRsQ29uc3RydWN0b3I8SW50bE51bWJlckZvcm1hdD4oZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpLCBjYWxsZWUsIFsmXSAoVk0mIHZtKSB7Cisg
ICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RJbnRsSW5zdGFuY2VXaXRoV29ya2Fy
b3VuZEZvckxlZ2FjeUludGxDb25zdHJ1Y3RvcjxJbnRsTnVtYmVyRm9ybWF0PihnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCksIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgWyZdIChW
TSYgdm0pIHsKICAgICAgICAgLy8gMi4gTGV0IG51bWJlckZvcm1hdCBiZSBPcmRpbmFyeUNyZWF0
ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVOdW1iZXJGb3JtYXRQcm90b3R5cGUlKS4KICAg
ICAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0KS4KLSAgICAgICAgSW50bE51
bWJlckZvcm1hdCogbnVtYmVyRm9ybWF0ID0gSW50bE51bWJlckZvcm1hdDo6Y3JlYXRlKHZtLCBj
YWxsZWUtPm51bWJlckZvcm1hdFN0cnVjdHVyZSh2bSkpOworICAgICAgICBJbnRsTnVtYmVyRm9y
bWF0KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0OjpjcmVhdGUodm0sIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKS0+Z2xvYmFsT2JqZWN0KHZtKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCkp
OwogICAgICAgICBBU1NFUlQobnVtYmVyRm9ybWF0KTsKIAogICAgICAgICAvLyA0LiBSZXR1cm4g
SW5pdGlhbGl6ZU51bWJlckZvcm1hdChudW1iZXJGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpLgpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0
cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00NCw4ICs0NCw2IEBAIHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5GTzsK
IAotICAgIFN0cnVjdHVyZSogbnVtYmVyRm9ybWF0U3RydWN0dXJlKFZNJikgY29uc3QgeyByZXR1
cm4gZ2xvYmFsT2JqZWN0KCktPm51bWJlckZvcm1hdFN0cnVjdHVyZSgpOyB9Ci0KIHByb3RlY3Rl
ZDoKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZSopOwogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVs
ZXNDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAxODUpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rv
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg5LDcgKzg5LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKIAogICAgIC8vIDEzLjIuMSBJbnRsLlBsdXJhbFJ1bGVz
IChbIGxvY2FsZXMgWyAsIG9wdGlvbnMgXSBdKQogICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIu
aW8vZWNtYTQwMi8jc2VjLWludGwucGx1cmFscnVsZXMKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpLT5wbHVy
YWxSdWxlc1N0cnVjdHVyZSh2bSkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0
cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSktPnBsdXJhbFJ1bGVzU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBJbnRsUGx1
cmFsUnVsZXMqIHBsdXJhbFJ1bGVzID0gSW50bFBsdXJhbFJ1bGVzOjpjcmVhdGUodm0sIHN0cnVj
dHVyZSk7CiAgICAgQVNTRVJUKHBsdXJhbFJ1bGVzKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3Iu
aAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNDQsOCArNDQsNiBA
QCBwdWJsaWM6CiAKICAgICBERUNMQVJFX0lORk87CiAKLSAgICBTdHJ1Y3R1cmUqIHBsdXJhbFJ1
bGVzU3RydWN0dXJlKFZNJikgY29uc3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPnBsdXJhbFJ1
bGVzU3RydWN0dXJlKCk7IH0KLQogcHJvdGVjdGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
Vk0mLCBJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUqKTsKIApJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNjAxODUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03OSw5ICs3OSwx
MCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTR2VuZXJpY0FyCiAgICAgVk0mIHZt
ID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1ND
T1BFKHZtKTsKIAotICAgIEpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0b3IqIGNvbnN0cnVj
dG9yID0ganNDYXN0PEpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0b3IqPihjYWxsRnJhbWUt
PmpzQ2FsbGVlKCkpOwotCi0gICAgU3RydWN0dXJlKiBhcnJheUJ1ZmZlclN0cnVjdHVyZSA9IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBjb25zdHJ1Y3Rvci0+
Z2xvYmFsT2JqZWN0KCktPmFycmF5QnVmZmVyU3RydWN0dXJlKHNoYXJpbmdNb2RlKSk7CisgICAg
SlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChu
ZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUo
c2hhcmluZ01vZGUpOworICAgIFN0cnVjdHVyZSogYXJyYXlCdWZmZXJTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxG
cmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoOwpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAJKHJldmlzaW9u
IDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNzQsMTggKzE3NCwxNyBAQCBKU09iamVjdCogSlNGdW5jdGlv
bjo6cHJvdG90eXBlRm9yQ29uc3RyCiAgICAgc2NvcGUucmVsZWFzZUFzc2VydE5vRXhjZXB0aW9u
KCk7CiAgICAgaWYgKExJS0VMWShwcm90b3R5cGUuaXNPYmplY3QoKSkpCiAgICAgICAgIHJldHVy
biBhc09iamVjdChwcm90b3R5cGUpOworICAgIGlmIChpc0hvc3RPckJ1aWx0aW5GdW5jdGlvbigp
KQorICAgICAgICByZXR1cm4gdGhpcy0+Z2xvYmFsT2JqZWN0KCktPm9iamVjdFByb3RvdHlwZSgp
OwogCi0gICAgSlNHbG9iYWxPYmplY3QqIHRoaXNHbG9iYWxPYmplY3QgPSB0aGlzLT5nbG9iYWxP
YmplY3QoKTsKLSAgICBpZiAoIWlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkpIHsKLSAgICAgICAg
Ly8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtZ2VuZXJhdG9yLWZ1bmN0aW9u
LWRlZmluaXRpb25zLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRlYm9keQotICAgICAgICBpZiAo
aXNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkp
Ci0gICAgICAgICAgICByZXR1cm4gdGhpc0dsb2JhbE9iamVjdC0+Z2VuZXJhdG9yUHJvdG90eXBl
KCk7Ci0KLSAgICAgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtYXN5
bmNnZW5lcmF0b3ItZGVmaW5pdGlvbnMtZXZhbHVhdGVib2R5Ci0gICAgICAgIGlmIChpc0FzeW5j
R2VuZXJhdG9yV3JhcHBlclBhcnNlTW9kZShqc0V4ZWN1dGFibGUoKS0+cGFyc2VNb2RlKCkpKQot
ICAgICAgICAgICAgcmV0dXJuIHRoaXNHbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yUHJvdG90
eXBlKCk7Ci0gICAgfQotICAgIHJldHVybiB0aGlzR2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5
cGUoKTsKKyAgICBKU0dsb2JhbE9iamVjdCogc2NvcGVHbG9iYWxPYmplY3QgPSB0aGlzLT5zY29w
ZSgpLT5nbG9iYWxPYmplY3QoKTsKKyAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEy
NjIvI3NlYy1nZW5lcmF0b3ItZnVuY3Rpb24tZGVmaW5pdGlvbnMtcnVudGltZS1zZW1hbnRpY3Mt
ZXZhbHVhdGVib2R5CisgICAgaWYgKGlzR2VuZXJhdG9yV3JhcHBlclBhcnNlTW9kZShqc0V4ZWN1
dGFibGUoKS0+cGFyc2VNb2RlKCkpKQorICAgICAgICByZXR1cm4gc2NvcGVHbG9iYWxPYmplY3Qt
PmdlbmVyYXRvclByb3RvdHlwZSgpOworICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNt
YTI2Mi8jc2VjLWFzeW5jZ2VuZXJhdG9yLWRlZmluaXRpb25zLWV2YWx1YXRlYm9keQorICAgIGlm
IChpc0FzeW5jR2VuZXJhdG9yV3JhcHBlclBhcnNlTW9kZShqc0V4ZWN1dGFibGUoKS0+cGFyc2VN
b2RlKCkpKQorICAgICAgICByZXR1cm4gc2NvcGVHbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9y
UHJvdG90eXBlKCk7CisgICAgcmV0dXJuIHNjb3BlR2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5
cGUoKTsKIH0KIAogRnVuY3Rpb25SYXJlRGF0YSogSlNGdW5jdGlvbjo6YWxsb2NhdGVBbmRJbml0
aWFsaXplUmFyZURhdGEoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgc2l6ZV90IGlubGlu
ZUNhcGFjaXR5KQpAQCAtNDYwLDE2ICs0NTksMTcgQEAgYm9vbCBKU0Z1bmN0aW9uOjpnZXRPd25Q
cm9wZXJ0eVNsb3QoSlNPYgogICAgICAgICB1bnNpZ25lZCBhdHRyaWJ1dGVzOwogICAgICAgICBQ
cm9wZXJ0eU9mZnNldCBvZmZzZXQgPSB0aGlzT2JqZWN0LT5nZXREaXJlY3RPZmZzZXQodm0sIHBy
b3BlcnR5TmFtZSwgYXR0cmlidXRlcyk7CiAgICAgICAgIGlmICghaXNWYWxpZE9mZnNldChvZmZz
ZXQpKSB7CisgICAgICAgICAgICBKU0dsb2JhbE9iamVjdCogc2NvcGVHbG9iYWxPYmplY3QgPSB0
aGlzT2JqZWN0LT5zY29wZSgpLT5nbG9iYWxPYmplY3QoKTsKICAgICAgICAgICAgIEpTT2JqZWN0
KiBwcm90b3R5cGUgPSBudWxscHRyOwogICAgICAgICAgICAgaWYgKGlzR2VuZXJhdG9yV3JhcHBl
clBhcnNlTW9kZSh0aGlzT2JqZWN0LT5qc0V4ZWN1dGFibGUoKS0+cGFyc2VNb2RlKCkpKSB7CiAg
ICAgICAgICAgICAgICAgLy8gVW5saWtlIGZ1bmN0aW9uIGluc3RhbmNlcywgdGhlIG9iamVjdCB0
aGF0IGlzIHRoZSB2YWx1ZSBvZiB0aGUgYSBHZW5lcmF0b3JGdW5jdGlvbidzIHByb3RvdHlwZQog
ICAgICAgICAgICAgICAgIC8vIHByb3BlcnR5IGRvZXMgbm90IGhhdmUgYSBjb25zdHJ1Y3RvciBw
cm9wZXJ0eSB3aG9zZSB2YWx1ZSBpcyB0aGUgR2VuZXJhdG9yRnVuY3Rpb24gaW5zdGFuY2UuCiAg
ICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtZ2Vu
ZXJhdG9yZnVuY3Rpb24taW5zdGFuY2VzLXByb3RvdHlwZQotICAgICAgICAgICAgICAgIHByb3Rv
dHlwZSA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCwgdGhpc09iamVjdC0+Z2xv
YmFsT2JqZWN0KCktPmdlbmVyYXRvclByb3RvdHlwZSgpKTsKKyAgICAgICAgICAgICAgICBwcm90
b3R5cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChnbG9iYWxPYmplY3QsIHNjb3BlR2xvYmFsT2Jq
ZWN0LT5nZW5lcmF0b3JQcm90b3R5cGUoKSk7CiAgICAgICAgICAgICB9IGVsc2UgaWYgKGlzQXN5
bmNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5w
YXJzZU1vZGUoKSkpCi0gICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29uc3RydWN0RW1wdHlP
YmplY3QoZ2xvYmFsT2JqZWN0LCB0aGlzT2JqZWN0LT5nbG9iYWxPYmplY3QoKS0+YXN5bmNHZW5l
cmF0b3JQcm90b3R5cGUoKSk7CisgICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29uc3RydWN0
RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCBzY29wZUdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0
b3JQcm90b3R5cGUoKSk7CiAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBwcm90
b3R5cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChnbG9iYWxPYmplY3QpOworICAgICAgICAgICAg
ICAgIHByb3RvdHlwZSA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCwgc2NvcGVH
bG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpKTsKICAgICAgICAgICAgICAgICBwcm90b3R5
cGUtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+Y29uc3RydWN0b3IsIHRoaXNPYmpl
Y3QsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsK
ICAgICAgICAgICAgIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNH
ZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0
cnVjdG9ySW5saW5lcy5oCShyZXZpc2lvbiAyNjAxODUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMTEsOSArMjExLDEwIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgY29uc3RydWN0R2UKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAg
YXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSW50ZXJuYWxGdW5j
dGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGNhbGxGcmFtZS0+anND
YWxsZWUoKSk7Ci0gICAgU3RydWN0dXJlKiBwYXJlbnRTdHJ1Y3R1cmUgPSBmdW5jdGlvbi0+Z2xv
YmFsT2JqZWN0KCktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5U3Rv
cmFnZVR5cGUpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIHBhcmVudFN0cnVjdHVyZSk7CisgICAgSlNWYWx1
ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJn
ZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3Qo
bmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xh
c3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJ
bnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNh
bGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIHNpemVfdCBh
cmdDb3VudCA9IGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpOwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJKHJl
dmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFs
T2JqZWN0SW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDEsNyArMTAxLDkgQEAgQUxXQVlT
X0lOTElORSBib29sIEpTR2xvYmFsT2JqZWN0Ojppc1NldAogCiBBTFdBWVNfSU5MSU5FIFN0cnVj
dHVyZSogSlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5n
QWxsb2NhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBJbmRleGluZ1R5cGUgaW5k
ZXhpbmdUeXBlLCBKU1ZhbHVlIG5ld1RhcmdldCkgY29uc3QKIHsKLSAgICByZXR1cm4gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPmFycmF5Q29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBhcnJheVN0cnVjdHVyZUZvcklu
ZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKSk7CisgICAgVk0mIHZtID0g
Z2xvYmFsT2JqZWN0LT52bSgpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IChuZXdU
YXJnZXQgPyBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pIDogZ2xvYmFsT2Jq
ZWN0KS0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKGluZGV4
aW5nVHlwZSk7CisgICAgcmV0dXJuIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9yKCksIG5l
d1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiB9CiAKIGlubGluZSBKU0Z1bmN0aW9uKiBKU0dsb2Jh
bE9iamVjdDo6dGhyb3dUeXBlRXJyb3JGdW5jdGlvbigpIGNvbnN0IHsgcmV0dXJuIGpzQ2FzdDxK
U0Z1bmN0aW9uKj4obGlua1RpbWVDb25zdGFudChMaW5rVGltZUNvbnN0YW50Ojp0aHJvd1R5cGVF
cnJvckZ1bmN0aW9uKSk7IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01h
cENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NjcsNyArNjcsMTAgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwog
ICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFS
RV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPm1h
cFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUq
IGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5t
YXBTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5q
c0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9
IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24g
MjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU1LDcgKzU1LDEwIEBAIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgTmF0aXZlRXJyb3IKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3Qt
PnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpT
VmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJlKiBl
cnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpLCBqc0Nhc3Q8TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUo
KSktPmVycm9yU3RydWN0dXJlKHZtKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJh
bWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAg
U3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2Jq
ZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9y
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVy
ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAg
ICAgQVNTRVJUKGVycm9yU3RydWN0dXJlKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUs
IEpTVmFsdWU6OmVuY29kZShFcnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJv
clN0cnVjdHVyZSwgbWVzc2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Miw3ICs5MiwxMCBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIGRvdWJsZSBuID0gY2FsbEZyYW1lLT5h
cmd1bWVudENvdW50KCkgPyBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApLnRvTnVtYmVy
KGdsb2JhbE9iamVjdCkgOiAwOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlv
bjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bnVtYmVyT2JqZWN0
U3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJn
ZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSog
YmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPm51
bWJlck9iamVjdFN0cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKICAgICBOdW1iZXJPYmplY3Qq
IG9iamVjdCA9IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNw
cAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2Jq
ZWN0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjcsNyArMTI3LDggQEAgc3Rh
dGljIEFMV0FZU19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVjdAogICAgIC8vIDEuIElmIE5ld1Rh
cmdldCBpcyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFjdGl2ZSBmdW5jdGlvbiwgdGhlbgog
ICAgIGlmIChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9iamVjdENvbnN0cnVjdG9yKSB7CiAg
ICAgICAgIC8vIGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKE5ld1Rh
cmdldCwgIiVPYmplY3RQcm90b3R5cGUlIikuCi0gICAgICAgIFN0cnVjdHVyZSogb2JqZWN0U3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3QtPm9iamVj
dFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOworICAgICAgICBTdHJ1Y3R1cmUqIGJh
c2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT5vYmpl
Y3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1Y3RvcigpOworICAgICAgICBTdHJ1Y3R1cmUqIG9i
amVjdFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3IsIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVy
ZSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAg
ICByZXR1cm4gY29uc3RydWN0RW1wdHlPYmplY3Qodm0sIG9iamVjdFN0cnVjdHVyZSk7CiAgICAg
fQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENv
bnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsMTAg
KzE3Miw5IEBAIGJvb2wgc2V0UmVnRXhwQ29uc3RydWN0b3JNdWx0aWxpbmUoSlNHbG8KIAogaW5s
aW5lIFN0cnVjdHVyZSogZ2V0UmVnRXhwU3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0KQogewotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
Z2xvYmFsT2JqZWN0LT5yZWdFeHBTdHJ1Y3R1cmUoKTsKLSAgICBpZiAobmV3VGFyZ2V0ICE9IGpz
VW5kZWZpbmVkKCkpCi0gICAgICAgIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBDb25z
dHJ1Y3RvcigpLCBuZXdUYXJnZXQsIHN0cnVjdHVyZSk7Ci0gICAgcmV0dXJuIHN0cnVjdHVyZTsK
KyAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgU3RydWN0dXJlKiBiYXNlU3Ry
dWN0dXJlID0gKG5ld1RhcmdldCA/IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2
bSkgOiBnbG9iYWxPYmplY3QpLT5yZWdFeHBTdHJ1Y3R1cmUoKTsKKyAgICByZXR1cm4gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPnJlZ0V4cENvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiB9
CiAKIGlubGluZSBPcHRpb25TZXQ8WWFycjo6RmxhZ3M+IHRvRmxhZ3MoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBmbGFncykKQEAgLTIyOSw3ICsyMjgsNyBAQCBKU09iamVj
dCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0CiAgICAgYm9vbCBjb25zdHJ1Y3RBc1Jl
Z2V4cCA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIHBhdHRlcm5BcmcpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCi0gICAgaWYgKG5ld1RhcmdldC5pc1Vu
ZGVmaW5lZCgpICYmIGNvbnN0cnVjdEFzUmVnZXhwICYmIGZsYWdzQXJnLmlzVW5kZWZpbmVkKCkp
IHsKKyAgICBpZiAoIW5ld1RhcmdldCAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5p
c1VuZGVmaW5lZCgpKSB7CiAgICAgICAgIEpTVmFsdWUgY29uc3RydWN0b3IgPSBwYXR0ZXJuQXJn
LmdldChnbG9iYWxPYmplY3QsIHZtLnByb3BlcnR5TmFtZXMtPmNvbnN0cnVjdG9yKTsKICAgICAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAgICAgICAgIGlmIChjYWxs
ZWUgPT0gY29uc3RydWN0b3IpIHsKQEAgLTI3NCw3ICsyNzMsNyBAQCBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGVzU3BlY1JlZ0V4CiB7CiAgICAgSlNWYWx1ZSBwYXR0ZXJuQXJnID0gY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIGZsYWdzQXJnID0gY2FsbEZyYW1lLT5h
cmd1bWVudCgxKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4cENyZWF0ZShnbG9i
YWxPYmplY3QsIGpzVW5kZWZpbmVkKCksIHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7CisgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUoZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlKCks
IHBhdHRlcm5BcmcsIGZsYWdzQXJnKSk7CiB9CiAKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgZXNTcGVjSXNSZWdFeHAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
b25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3
LDcgKzU3LDcgQEAgcHJpdmF0ZToKIH07CiBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFS
QUJMRShSZWdFeHBDb25zdHJ1Y3RvciwgSW50ZXJuYWxGdW5jdGlvbik7CiAKLUpTT2JqZWN0KiBj
b25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmplY3QqLCBjb25zdCBBcmdMaXN0JiwgSlNPYmplY3Qq
IGNhbGxlZSA9IG51bGxwdHIsIEpTVmFsdWUgbmV3VGFyZ2V0ID0ganNVbmRlZmluZWQoKSk7CitK
U09iamVjdCogY29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYs
IEpTT2JqZWN0KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVlIG5ld1RhcmdldCA9IEpTVmFsdWUo
KSk7CiAKIEFMV0FZU19JTkxJTkUgYm9vbCBpc1JlZ0V4cChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCiB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAxODUp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTY3LDcgKzY3LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiBzZXRT
dHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9i
YWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwg
Z2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKSk7CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBj
YWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7
CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xv
YmFsT2JqZWN0KHZtKS0+c2V0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzZXRTdHJ1Y3R1
cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIEpT
VmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29u
c3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDQsNyArMTQ0LDEwIEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmpl
Y3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0g
ICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSk7Cisg
ICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VS
VChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0g
YXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+c3RyaW5nT2JqZWN0U3RydWN0
dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwg
bmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVudENvdW50
KCkpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtN
YXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1
LDcgKzY1LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAg
ICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+
d2Vha01hcFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1
Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qo
dm0pLT53ZWFrTWFwU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiB3ZWFrTWFwU3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgSlNXZWFr
TWFwKiB3ZWFrTWFwID0gSlNXZWFrTWFwOjpjcmVhdGUodm0sIHdlYWtNYXBTdHJ1Y3R1cmUpOwog
ICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVm
Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAxODUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC02OCw3ICs2OCwxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
CiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzT2JqZWN0KCkpCiAgICAgICAgIHJl
dHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJGaXJzdCBhcmd1bWVu
dCB0byBXZWFrUmVmIHNob3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0gICAgU3RydWN0dXJlKiBX
ZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpKTsKKyAg
ICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJU
KG5ld1RhcmdldC5pc09iamVjdCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBh
c09iamVjdChuZXdUYXJnZXQpLT5nbG9iYWxPYmplY3Qodm0pLT53ZWFrT2JqZWN0UmVmU3RydWN0
dXJlKCk7CisgICAgU3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUt
PmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJO
KHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNXZWFrT2JqZWN0UmVmOjpjcmVhdGUodm0sIFdlYWtP
YmplY3RSZWZTdHJ1Y3R1cmUsIGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkuZ2V0T2Jq
ZWN0KCkpKSk7CiB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0
Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTY1LDcgKzY1LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0
dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2Jh
bE9iamVjdC0+d2Vha1NldFN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsK
KyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9i
YWxPYmplY3Qodm0pLT53ZWFrU2V0U3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiB3ZWFrU2V0
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVy
ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAg
ICAgSlNXZWFrU2V0KiB3ZWFrU2V0ID0gSlNXZWFrU2V0OjpjcmVhdGUodm0sIHdlYWtTZXRTdHJ1
Y3R1cmUpOwogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJy
b3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2
MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGls
ZUVycm9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSwxMCBAQCBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Ci0gICAg
YXV0byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlDb21waWxlRXJyb3JTdHJ1Y3R1cmUoKSk7
CisgICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFT
U0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJl
ID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2ViQXNzZW1ibHlDb21w
aWxlRXJyb3JTdHJ1Y3R1cmUoKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBuZXdUYXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3I6OmNyZWF0
ZShnbG9iYWxPYmplY3QsIHZtLCBzdHJ1Y3R1cmUsIG1lc3NhZ2UpKSk7CiB9CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTc1LDcgKzc1LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGNvbnMKICAgICBpZiAoIWltcG9ydEFyZ3VtZW50LmlzVW5kZWZpbmVkKCkg
JiYgIWltcG9ydE9iamVjdCkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd0V4
Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCAic2Vjb25kIGFyZ3VtZW50IHRvIFdlYkFzc2VtYmx5Lkluc3RhbmNlIG11c3QgYmUgdW5kZWZp
bmVkIG9yIGFuIE9iamVjdCJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBydW50aW1lVHlwZUZv
clZhbHVlKHZtLCBpbXBvcnRBcmd1bWVudCkpKSk7CiAgICAgCi0gICAgU3RydWN0dXJlKiBpbnN0
YW5jZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5SW5zdGFuY2VTdHJ1Y3R1cmUoKSk7CisgICAg
SlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxsRnJhbWUtPm5ld1RhcmdldCgpOworICAgIEFTU0VSVChu
ZXdUYXJnZXQuaXNPYmplY3QoKSk7CisgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNP
YmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFsT2JqZWN0KHZtKS0+d2ViQXNzZW1ibHlJbnN0YW5jZVN0
cnVjdHVyZSgpOworICAgIFN0cnVjdHVyZSogaW5zdGFuY2VTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+
anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgSlNXZWJBc3NlbWJseUluc3RhbmNlKiBpbnN0YW5j
ZSA9IEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIEpT
V2ViQXNzZW1ibHlJbnN0YW5jZTo6Y3JlYXRlUHJpdmF0ZU1vZHVsZUtleSgpLCBtb2R1bGUsIGlt
cG9ydE9iamVjdCwgaW5zdGFuY2VTdHJ1Y3R1cmUsIFJlZjxXYXNtOjpNb2R1bGU+KG1vZHVsZS0+
bW9kdWxlKCkpLCBXYXNtOjpDcmVhdGlvbk1vZGU6OkZyb21KUyk7CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxp
bmtFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMTg1KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTQ5LDcgKzQ5LDEwIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGNvbnMKICAgICBhdXRvJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBh
dXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdl
ID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBhdXRvKiBzdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWJB
c3NlbWJseUxpbmtFcnJvclN0cnVjdHVyZSgpKTsKKyAgICBKU1ZhbHVlIG5ld1RhcmdldCA9IGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCk7CisgICAgQVNTRVJUKG5ld1RhcmdldC5pc09iamVjdCgpKTsK
KyAgICBTdHJ1Y3R1cmUqIGJhc2VTdHJ1Y3R1cmUgPSBhc09iamVjdChuZXdUYXJnZXQpLT5nbG9i
YWxPYmplY3Qodm0pLT53ZWJBc3NlbWJseUxpbmtFcnJvclN0cnVjdHVyZSgpOworICAgIFN0cnVj
dHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIG5ld1RhcmdldCwgYmFzZVN0
cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUo
KSk7CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNXZWJB
c3NlbWJseUxpbmtFcnJvcjo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgdm0sIHN0cnVjdHVyZSwgbWVz
c2FnZSkpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TW9kdWxlQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NjAxODUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgxLDcgKzE4MSwxMCBAQCBKU1dl
YkFzc2VtYmx5TW9kdWxlKiBXZWJBc3NlbWJseU1vZHVsZUNvCiAgICAgVk0mIHZtID0gZ2xvYmFs
T2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsK
IAotICAgIGF1dG8qIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5TW9kdWxlU3RydWN0dXJlKCkp
OworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQoKTsKKyAgICBB
U1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVy
ZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPndlYkFzc2VtYmx5TW9k
dWxlU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anND
YWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBudWxscHRyKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNX
ZWJBc3NlbWJseU1vZHVsZTo6Y3JlYXRlU3R1Yih2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUs
IFdhc206Ok1vZHVsZTo6dmFsaWRhdGVTeW5jKCZ2bS53YXNtQ29udGV4dCwgV1RGTW92ZShidWZm
ZXIpKSkpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHJl
dmlzaW9uIDI2MDE4NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MSw3ICs1
MSwxMCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgSlNW
YWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBTdHJpbmcgbWVzc2Fn
ZVN0cmluZyA9IG1lc3NhZ2UuaXNVbmRlZmluZWQoKSA/IFN0cmluZygpIDogbWVzc2FnZS50b1dU
RlN0cmluZyhnbG9iYWxPYmplY3QpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOwotICAgIGF1dG8qIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxl
ZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5UnVu
dGltZUVycm9yU3RydWN0dXJlKCkpOworICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKTsKKyAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOworICAgIFN0
cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVj
dCh2bSktPndlYkFzc2VtYmx5UnVudGltZUVycm9yU3RydWN0dXJlKCk7CisgICAgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0
dXJlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3I6OmNy
ZWF0ZShnbG9iYWxPYmplY3QsIHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUobWVzc2FnZVN0cmluZykp
KTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396784</attachid>
            <date>2020-04-17 13:00:17 -0700</date>
            <delta_ts>2020-04-26 05:09:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20200417230015.patch</filename>
            <type>text/plain</type>
            <size>93976</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjAyNzUpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDIwLTA0LTE3ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcHJvbWlzZS1wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvZXhwZWN0YXRp
b25zLnlhbWw6IE1hcmsgNzggdGVzdCBjYXNlcyBhcyBwYXNzaW5nLgorCiAyMDIwLTA0LTE3ICBE
ZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW5hbWUgTnVsbGlz
aEVxIC8gTlVMTElTSEVRVUFMIHRvIENvYWxlc2NlRXEgLyBDT0FMRVNDRUVRVUFMIHRvIG1hdGNo
IHRoZSBzcGVjCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9wcm9taXNlLXByb3RvLWZyb20tY3Rvci1y
ZWFsbS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBKU1Rlc3RzL3N0cmVzcy9wcm9taXNlLXByb3RvLWZyb20t
Y3Rvci1yZWFsbS5qcwkobm9uZXhpc3RlbnQpCisrKyBKU1Rlc3RzL3N0cmVzcy9wcm9taXNlLXBy
b3RvLWZyb20tY3Rvci1yZWFsbS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE2IEBACitm
dW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAgaWYgKGFjdHVhbCAhPT0g
ZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFs
KTsKK30KKworY29uc3QgcmVhbG1BID0gY3JlYXRlR2xvYmFsT2JqZWN0KCk7Citjb25zdCByZWFs
bUIgPSBjcmVhdGVHbG9iYWxPYmplY3QoKTsKKworY29uc3QgZXhlY3V0b3IgPSBmdW5jdGlvbigp
IHt9OworY29uc3QgbmV3VGFyZ2V0ID0gbmV3IHJlYWxtQS5GdW5jdGlvbigpOworbmV3VGFyZ2V0
LnByb3RvdHlwZSA9IG51bGw7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMWU0OyArK2kpIHsKKyAg
ICBsZXQgcHJvbWlzZSA9IFJlZmxlY3QuY29uc3RydWN0KHJlYWxtQi5Qcm9taXNlLCBbZXhlY3V0
b3JdLCBuZXdUYXJnZXQpOworICAgIHNob3VsZEJlKE9iamVjdC5nZXRQcm90b3R5cGVPZihwcm9t
aXNlKSwgcmVhbG1BLlByb21pc2UucHJvdG90eXBlKTsKK30KSW5kZXg6IEpTVGVzdHMvdGVzdDI2
Mi9leHBlY3RhdGlvbnMueWFtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0
YXRpb25zLnlhbWwJKHJldmlzaW9uIDI2MDI3NCkKKysrIEpTVGVzdHMvdGVzdDI2Mi9leHBlY3Rh
dGlvbnMueWFtbAkod29ya2luZyBjb3B5KQpAQCAtNjE1LDE1ICs2MTUsNiBAQCB0ZXN0L2FubmV4
Qi9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Zvci1hd2FpCiB0ZXN0L2FubmV4Qi9sYW5ndWFnZS9zdGF0
ZW1lbnRzL2Zvci1vZi9pdGVyYXRvci1jbG9zZS1yZXR1cm4tZW11bGF0ZXMtdW5kZWZpbmVkLXRo
cm93cy13aGVuLWNhbGxlZC5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
YSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBh
bGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKLXRlc3QvYnVp
bHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS1vbmUuanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90by1mcm9t
LWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9BcnJh
eS9wcm90b3R5cGUvY29uY2F0L2FyZy1sZW5ndGgtZXhjZWVkaW5nLWludGVnZXItbGltaXQuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3Qg
YSBSYW5nZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBU
eXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3InCkBAIC02OTAsOSArNjgxLDYgQEAgdGVzdC9i
dWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3NwbGljZS90aAogdGVzdC9idWlsdC1pbnMvQXJyYXkv
cHJvdG90eXBlL3Vuc2hpZnQvY2xhbXBzLXRvLWludGVnZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
NDI5NDk2NzI5NcK7LCDCqzkwMDcxOTkyNTQ3NDA5OTHCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrNDI5NDk2NzI5NcK7LCDCqzkwMDcxOTkyNTQ3NDA5OTHCuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBcnJheUJ1
ZmZlcl3Cuywgwqtbb2JqZWN0IEFycmF5QnVmZmVyXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBcnJheUJ1
ZmZlcl3Cuywgwqtbb2JqZWN0IEFycmF5QnVmZmVyXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWls
dC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtNzMyLDEyICs3MjAsNiBAQCB0ZXN0L2J1
aWx0LWlucy9Bc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90CiB0ZXN0L2J1aWx0LWlucy9Bc3luY0Zy
b21TeW5jSXRlcmF0b3JQcm90b3R5cGUvdGhyb3cvYWJzZW50LXZhbHVlLW5vdC1wYXNzZWQuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyOkFzeW5jVGVzdEZhaWx1cmU6VGVzdDI2MkVycm9yOiBUZXN0
MjYyRXJyb3I6IFByb21pc2Ugc2hvdWxkIGJlIHJlamVjdGVkLCBnb3Q6IHVuZGVmaW5lZCcKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyOkFzeW5jVGVzdEZhaWx1cmU6VGVzdDI2MkVycm9yOiBUZXN0
MjYyRXJyb3I6IFByb21pc2Ugc2hvdWxkIGJlIHJlamVjdGVkLCBnb3Q6IHVuZGVmaW5lZCcKLXRl
c3QvYnVpbHQtaW5zL0FzeW5jRnVuY3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dwrssIMKrW29iamVjdCBB
c3luY0Z1bmN0aW9uXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
W29iamVjdCBBc3luY0Z1bmN0aW9uXcK7LCDCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3CuykgdG8g
YmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24vcHJvdG8tZnJv
bS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJv
dG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFzeW5jR2Vu
ZXJhdG9yRnVuY3Rpb25dwrssIMKrW29iamVjdCBBc3luY0dlbmVyYXRvckZ1bmN0aW9uXcK7KSB0
byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3Rv
dHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBc3luY0dlbmVy
YXRvckZ1bmN0aW9uXcK7LCDCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8g
YmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlL3JldHVybi9y
ZXR1cm4tc3VzcGVuZGVkWWllbGQtcHJvbWlzZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6QXN5
bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFRlc3QyNjJFcnJvcjogQXN5bmNHZW5lcmF0b3JS
ZXNvbHZlKGdlbmVyYXRvciwgcmVzdWx0VmFsdWUsIHRydWUpIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgUHJvbWlzZV3Cuywgwqt1bndyYXBwZWQtdmFsdWXCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyOkFzeW5jVGVzdEZhaWx1cmU6VGVzdDI2MkVycm9yOiBUZXN0
MjYyRXJyb3I6IEFzeW5jR2VuZXJhdG9yUmVzb2x2ZShnZW5lcmF0b3IsIHJlc3VsdFZhbHVlLCB0
cnVlKSBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFByb21pc2VdwrssIMKrdW53cmFwcGVk
LXZhbHVlwrspIHRvIGJlIHRydWUnCkBAIC04MDQsOSArNzg2LDYgQEAgdGVzdC9idWlsdC1pbnMv
QmlnSW50L2FzVWludE4vb3JkZXItb2YtcwogdGVzdC9idWlsdC1pbnMvQmlnSW50L2NvbnN0cnVj
dG9yLWludGVnZXIuanM6CiAgIGRlZmF1bHQ6ICdSYW5nZUVycm9yOiBOb3Qgc2FmZSBpbnRlZ2Vy
JwogICBzdHJpY3QgbW9kZTogJ1JhbmdlRXJyb3I6IE5vdCBzYWZlIGludGVnZXInCi10ZXN0L2J1
aWx0LWlucy9Cb29sZWFuL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrZmFsc2XCuywgwqtmYWxzZcK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrZmFsc2XCuywgwqtmYWxzZcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRGF0YVZp
ZXcvY3VzdG9tLXByb3RvLWFjY2Vzcy1kZXRhY2hlcy1idWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhj
ZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRo
cm93biBhdCBhbGwnCkBAIC04MTYsOSArNzk1LDYgQEAgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcv
ZGV0YWNoZWQtYnVmZmVyLgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvbGVuZ3RoLmpzOgogICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBkZXNjcmlwdG9yIHZhbHVlIHNob3VsZCBiZSAxJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUgMScK
LXRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBEYXRhVmll
d13Cuywgwqtbb2JqZWN0IERhdGFWaWV3XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBEYXRhVmlld13Cuywg
wqtbb2JqZWN0IERhdGFWaWV3XcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRGF0YVZp
ZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4
Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0
aHJvd24gYXQgYWxsJwpAQCAtOTIxLDE4ICs4OTcsNiBAQCB0ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9wcm90b3R5cGUvc2V0VWluCiB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0
VWludDgvZGV0YWNoZWQtYnVmZmVyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yJwot
dGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0tb25lLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3C
uywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmpl
Y3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9t
LWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotdGVz
dC9idWlsdC1pbnMvRGF0ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0temVyby5qczoKLSAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3Rdwrss
IMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0
IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0Vycm9yL3Byb3RvLWZyb20t
Y3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrRXJyb3LCuywgwqtFcnJvcsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXJyb3LCuywgwqtFcnJvcsK7KSB0byBi
ZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vY2FsbC1iaW5kLXRoaXMtcmVhbG0tdW5k
ZWYuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVuZGVmaW5lZCBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IGdsb2JhbF3Cuywgwqtbb2JqZWN0IFVuZGVmaW5lZF3C
uykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGltcGxpY2l0IHVu
ZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IGdsb2JhbF3Cuywgwqtbb2JqZWN0
IFVuZGVmaW5lZF3CuykgdG8gYmUgdHJ1ZScKQEAgLTk1MSw5ICs5MTUsNiBAQCB0ZXN0L2J1aWx0
LWlucy9GdW5jdGlvbi9pbnRlcm5hbHMvQ29uc3RyCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9p
bnRlcm5hbHMvQ29uc3RydWN0L2Rlcml2ZWQtdGhpcy11bmluaXRpYWxpemVkLXJlYWxtLmpzOgog
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJlZmVyZW5jZUVycm9yIGJ1dCBn
b3QgYSBSZWZlcmVuY2VFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIGEgUmVmZXJlbmNlRXJyb3IgYnV0IGdvdCBhIFJlZmVyZW5jZUVycm9yJwotdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtmdW5jdGlvbiAoKSB7JwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrZnVuY3Rpb24gKCkgeycK
IHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS9iaW5kL2xlbmd0aC1leGNlZWRzLWlu
dDMyLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsw
wrssIMKrMjE0NzQ4MzY0OMK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzIxNDc0ODM2NDjCuykgdG8gYmUgdHJ1
ZScKQEAgLTEwOTIsMzkgKzEwNTMsMTIgQEAgdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG90
eXBlL3RvU3RyaQogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL3RvU3RyaW5nL3Vu
aWNvZGUuanM6CiAgIGRlZmF1bHQ6ICJUZXN0MjYyRXJyb3I6IENvbmZvcm1zIHRvIE5hdGl2ZUZ1
bmN0aW9uIFN5bnRheDogJ2Z1bmN0aW9uIGEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0g
XFx1ezAwMDYzfTsgcmV0dXJuIGI7IH0nLihmdW5jdGlvbiBcXHUwMDYxKFxcdXs2Mn0sIFxcdTAw
NjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVybiBiOyB9KSIKICAgc3RyaWN0IG1vZGU6
ICJUZXN0MjYyRXJyb3I6IENvbmZvcm1zIHRvIE5hdGl2ZUZ1bmN0aW9uIFN5bnRheDogJ2Z1bmN0
aW9uIGEoXFx1ezYyfSwgXFx1MDA2MykgeyBcXHUwMDYyID0gXFx1ezAwMDYzfTsgcmV0dXJuIGI7
IH0nLihmdW5jdGlvbiBcXHUwMDYxKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXsw
MDA2M307IHJldHVybiBiOyB9KSIKLXRlc3QvYnVpbHQtaW5zL0dlbmVyYXRvckZ1bmN0aW9uL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3Cuywgwqtbb2JqZWN0IEdl
bmVyYXRvckZ1bmN0aW9uXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3Cuywg
wqtbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1p
bnMvSlNPTi9wYXJzZS9yZXZpdmVyLW9iamVjdC1ub24tY29uZmlndXJhYmxlLXByb3AtY3JlYXRl
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsyMsK7
LCDCqzLCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCqzIywrssIMKrMsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMv
TWFwL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBNYXBdwrssIMKrW29iamVjdCBNYXBdwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqtbb2JqZWN0IE1hcF3Cuywgwqtbb2JqZWN0IE1hcF3CuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
YnVpbHQtaW5zL05hdGl2ZUVycm9ycy9FdmFsRXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpz
OgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVm
aW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtFdmFsRXJyb3LCuywgwqtFdmFsRXJyb3LCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq0V2YWxFcnJvcsK7LCDCq0V2YWxF
cnJvcsK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvTmF0aXZlRXJyb3JzL1JhbmdlRXJy
b3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSYW5n
ZUVycm9ywrssIMKrUmFuZ2VFcnJvcsK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrUmFuZ2VFcnJvcsK7LCDCq1JhbmdlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
YnVpbHQtaW5zL05hdGl2ZUVycm9ycy9SZWZlcmVuY2VFcnJvci9wcm90by1mcm9tLWN0b3ItcmVh
bG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1JlZmVyZW5jZUVycm9ywrssIMKrUmVmZXJl
bmNlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1JlZmVy
ZW5jZUVycm9ywrssIMKrUmVmZXJlbmNlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQt
aW5zL05hdGl2ZUVycm9ycy9TeW50YXhFcnJvci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1N5bnRheEVycm9ywrssIMKrU3ludGF4RXJyb3LCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1N5bnRheEVycm9ywrssIMKrU3lu
dGF4RXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9UeXBl
RXJyb3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtU
eXBlRXJyb3LCuywgwqtUeXBlRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1R5cGVFcnJvcsK7LCDCq1R5cGVFcnJvcsK7KSB0byBiZSB0cnVlJwotdGVzdC9i
dWlsdC1pbnMvTmF0aXZlRXJyb3JzL1VSSUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrVVJJRXJyb3LCuywgwqtVUklFcnJvcsK7KSB0byBiZSB0
cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBp
cyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrVVJJRXJyb3LCuywgwqtVUklFcnJvcsK7
KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvTnVtYmVyL2JpZ2ludC1jb252ZXJzaW9uLmpz
OgogICBkZWZhdWx0OiAiVHlwZUVycm9yOiBDb252ZXJzaW9uIGZyb20gJ0JpZ0ludCcgdG8gJ251
bWJlcicgaXMgbm90IGFsbG93ZWQuIgogICBzdHJpY3QgbW9kZTogIlR5cGVFcnJvcjogQ29udmVy
c2lvbiBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKLXRlc3QvYnVp
bHQtaW5zL051bWJlci9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywgwqswwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqswwrssIMKr
MMK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L2VudHJpZXMvb3JkZXItYWZ0
ZXItZGVmaW5lLXByb3BlcnR5LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBbYiwgYV0gYW5kIFthLCBiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAnCiAgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbYiwgYV0gYW5kIFthLCBiXSB0byBoYXZl
IHRoZSBzYW1lIGNvbnRlbnRzLiAnCkBAIC0xMTQ3LDkgKzEwODEsNiBAQCB0ZXN0L2J1aWx0LWlu
cy9PYmplY3QvaW50ZXJuYWxzL0RlZmluZU93CiB0ZXN0L2J1aWx0LWlucy9PYmplY3Qva2V5cy9v
cmRlci1hZnRlci1kZWZpbmUtcHJvcGVydHkuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFtiLCBhXSBhbmQgW2EsIGJdIHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuICcK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFtiLCBhXSBhbmQgW2EsIGJd
IHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuICcKLXRlc3QvYnVpbHQtaW5zL09iamVjdC9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBi
ZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCiB0
ZXN0L2J1aWx0LWlucy9PYmplY3QvcHJvdG90eXBlL3RvU3RyaW5nL3Byb3h5LWZ1bmN0aW9uLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBmdW5jdGlvbiBwcm94eSBFeHBlY3RlZCBTYW1l
VmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IEZ1bmN0aW9uXcK7KSB0byBiZSB0
cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rpb24gcHJveHkgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBGdW5jdGlvbl3Cuykg
dG8gYmUgdHJ1ZScKQEAgLTExODMsOSArMTExNCw2IEBAIHRlc3QvYnVpbHQtaW5zL1Byb21pc2Uv
Y3JlYXRlLXJlc29sdmluZy0KIHRlc3QvYnVpbHQtaW5zL1Byb21pc2UvZXhlY3V0b3ItZnVuY3Rp
b24tbm9uY29uc3RydWN0b3IuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq3RydWXCuywgwqtmYWxzZcK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrdHJ1ZcK7LCDCq2ZhbHNlwrsp
IHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9Qcm9taXNlL3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29i
amVjdCBQcm9taXNlXcK7LCDCq1tvYmplY3QgUHJvbWlzZV3CuykgdG8gYmUgdHJ1ZScKLSAgc3Ry
aWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgUHJv
bWlzZV3Cuywgwqtbb2JqZWN0IFByb21pc2VdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlu
cy9Qcm9taXNlL3Byb3RvdHlwZS9maW5hbGx5L2ludm9rZXMtdGhlbi13aXRoLWZ1bmN0aW9uLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBmdWxmaWxsbWVudCBoYW5kbGVyIGlzIG5vdCBj
b25zdHJ1Y3RvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGZ1bGZpbGxtZW50IGhh
bmRsZXIgaXMgbm90IGNvbnN0cnVjdG9yJwpAQCAtMTY1MSw5ICsxNTc5LDYgQEAgdGVzdC9idWls
dC1pbnMvUmVnRXhwL3Byb3BlcnR5LWVzY2FwZXMvZwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3By
b3BlcnR5LWVzY2FwZXMvZ2VuZXJhdGVkL1hJRF9TdGFydC5qczoKICAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogYFxwe1hJRF9TdGFydH1gIHNob3VsZCBtYXRjaCBVKzAwMUNGQSAoYOGzumApJwog
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogYFxwe1hJRF9TdGFydH1gIHNob3VsZCBtYXRj
aCBVKzAwMUNGQSAoYOGzumApJwotdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3RvLWZyb20tY3Rv
ci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrLyg/OikvwrssIMKrLyg/OikvwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsvKD86KS/CuywgwqsvKD86KS/CuykgdG8g
YmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9wcm90b3R5cGUvU3ltYm9sLm1hdGNoL2J1
aWx0aW4taW5mZXItdW5pY29kZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKr77+9wrssIMKrbnVsbMK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr77+9wrssIMKrbnVsbMK7KSB0
byBiZSB0cnVlJwpAQCAtMTY5NiwxMiArMTYyMSw2IEBAIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9w
cm90b3R5cGUvdW5pY29kZS8KIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9xdWFudGlmaWVyLWludGVn
ZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6ICdTeW50YXhFcnJvcjogSW52YWxpZCByZWd1bGFyIGV4
cHJlc3Npb246IG51bWJlciB0b28gbGFyZ2UgaW4ge30gcXVhbnRpZmllcicKICAgc3RyaWN0IG1v
ZGU6ICdTeW50YXhFcnJvcjogSW52YWxpZCByZWd1bGFyIGV4cHJlc3Npb246IG51bWJlciB0b28g
bGFyZ2UgaW4ge30gcXVhbnRpZmllcicKLXRlc3QvYnVpbHQtaW5zL1NldC9wcm90by1mcm9tLWN0
b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1tvYmplY3QgU2V0XcK7LCDCq1tvYmplY3QgU2V0XcK7KSB0byBiZSB0cnVlJwotICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBTZXRd
wrssIMKrW29iamVjdCBTZXRdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9TdHJpbmcv
cHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwog
dGVzdC9idWlsdC1pbnMvVGhyb3dUeXBlRXJyb3IvZXh0ZW5zaWJsZS5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrdHJ1ZcK7LCDCq2ZhbHNlwrspIHRv
IGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKQEAgLTE3NjcsMjEgKzE2ODYsOSBA
QCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0CiB0ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvbGVuZ3RoLXRvLW51bWJl
ci1kZXRhY2hidWZmZXIuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5
LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBi
dXQgZ290IGEgUmFuZ2VFcnJvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9idWZmZXItYXJnL3Byb3RvLWZy
b20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9h
dDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5
UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2xlbmd0aC1hcmcvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0
IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0
NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0
QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvbm8tYXJncy9w
cm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmpl
Y3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxv
YXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0
NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9vYmplY3Qt
YXJnL2xlbmd0aC1leGNlc3NpdmUtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2Fz
IHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy9vYmplY3Qt
YXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKr
W29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0
aCBGbG9hdDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3Qg
RmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2
NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5
cGVkYXJyYXktYXJnL2RldGFjaGVkLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50LXR5
cGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9yIGRl
dGFjaGVkIHNvdXJjZSBidWZmZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFR5cGVFcnJvciB0aHJvd24gZm9y
IGRldGFjaGVkIHNvdXJjZSBidWZmZXIgRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3du
IGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0
QXJyYXkuKScKQEAgLTE4MDksOSArMTcxNiw2IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3Rv
cnMvdHlwZWRhcnJheS1hcmcvb3RoZXItY3Rvci1idWZmZXItY3Rvci1zcGVjaWVzLXByb3RvdHlw
ZS10aHJvd3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2
MkVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChU
ZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBhIFRlc3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3
YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWls
dC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwog
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFy
Zy9zYW1lLWN0b3ItYnVmZmVyLWN0b3ItYWNjZXNzLXRocm93cy5qczoKICAgZGVmYXVsdDogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBl
eGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9yIHRv
IGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5nIHdp
dGggRmxvYXQ2NEFycmF5LiknCkBAIC0xODk5LDI0ICsxODAzLDkgQEAgdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy9vZgogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy9vZi9uZXctaW5zdGFuY2UtdXNpbmctY3VzdG9tLWN0b3IuanM6CiAgIGRlZmF1bHQ6
ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXkub2YgcmVxdWlyZXMgaXRzIHRoaXMgYXJndW1lbnQgdG8g
c3ViY2xhc3MgYSBUeXBlZEFycmF5IGNvbnN0cnVjdG9yIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFy
cmF5LiknCiAgIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVz
IGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1YmNsYXNzIGEgVHlwZWRBcnJheSBjb25zdHJ1Y3RvciAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvV2Vha01hcC9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha01hcF3Cuywgwqtbb2JqZWN0IFdlYWtNYXBdwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqtbb2JqZWN0IFdlYWtNYXBdwrssIMKrW29iamVjdCBXZWFrTWFwXcK7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvV2Vha1JlZi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4
cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1JlZl3Cuywgwqtbb2JqZWN0IFdlYWtSZWZd
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFdlYWtS
ZWZdwrssIMKrW29iamVjdCBXZWFrUmVmXcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMv
V2Vha1NldC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vha1NldF3Cuywgwqtbb2JqZWN0IFdl
YWtTZXRdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFdlYWtTZXRdwrssIMKrW29iamVjdCBXZWFrU2V0XcK7
KSB0byBiZSB0cnVlJwotdGVzdC9pbnRsNDAyL0NvbGxhdG9yL3Byb3RvLWZyb20tY3Rvci1yZWFs
bS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1
bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKIHRlc3QvaW50
bDQwMi9Db2xsYXRvci91c2FnZS1kZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgW8OELCBBRV0gYW5kIFtBRSwgw4RdIHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuIHNl
YXJjaCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFvDhCwgQUVdIGFu
ZCBbQUUsIMOEXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiBzZWFyY2gnCi10ZXN0L2ludGw0
MDIvRGF0ZVRpbWVGb3JtYXQvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUg
dHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUg
aXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tv
YmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0
L3Byb3RvdHlwZS9yZXNvbHZlZE9wdGlvbnMvaG91ckN5Y2xlLWRlZmF1bHQuanM6CiAgIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2gyNMK7LCDCq2gyM8K7KSB0
byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZh
bHVlKMKraDI0wrssIMKraDIzwrspIHRvIGJlIHRydWUnCkBAIC0xOTM4LDEyICsxODI3LDYgQEAg
dGVzdC9pbnRsNDAyL0ludGwvZ2V0Q2Fub25pY2FsTG9jYWxlcy9wcgogdGVzdC9pbnRsNDAyL0lu
dGwvZ2V0Q2Fub25pY2FsTG9jYWxlcy9wcmVmZXJyZWQtdmFyaWFudC5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKramEtTGF0bi1hbGFsYzk3wrssIMKr
amEtTGF0bi1oZXBidXJuLWhlcGxvY8K7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKramEtTGF0bi1hbGFsYzk3wrssIMKramEt
TGF0bi1oZXBidXJuLWhlcGxvY8K7KSB0byBiZSB0cnVlJwotdGVzdC9pbnRsNDAyL051bWJlckZv
cm1hdC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tv
YmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3Rd
wrspIHRvIGJlIHRydWUnCi10ZXN0L2ludGw0MDIvUGx1cmFsUnVsZXMvcHJvdG8tZnJvbS1jdG9y
LXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBl
IGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtb
b2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwogdGVz
dC9pbnRsNDAyL2xhbmd1YWdlLXRhZ3MtaW52YWxpZC5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJF
cnJvcjogVGVzdCBkYXRhICJkZS1ncmVnb3J5LWdyZWdvcnkiIGlzIGEgY2Fub25pY2FsaXplZCBh
bmQgc3RydWN0dXJhbGx5IHZhbGlkIGxhbmd1YWdlIHRhZy4nCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBUZXN0IGRhdGEgImRlLWdyZWdvcnktZ3JlZ29yeSIgaXMgYSBjYW5vbmljYWxp
emVkIGFuZCBzdHJ1Y3R1cmFsbHkgdmFsaWQgbGFuZ3VhZ2UgdGFnLicKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDExNyBAQAorMjAyMC0wNC0xNyAg
QWxleGV5IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CisKKyAgICAgICAgSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUgc2hvdWxkIHVzZSBuZXdUYXJnZXQn
cyBnbG9iYWxPYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwMjU5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIElmICJwcm90b3R5cGUiIG9mIE5ld1RhcmdldCBpcyBub3QgYW4gb2JqZWN0LCBidWls
dC1pbiBjb25zdHJ1Y3RvcnMgWzFdIHNob3VsZCBhY3F1aXJlCisgICAgICAgIGRlZmF1bHQgW1tQ
cm90b3R5cGVdXSBmcm9tIHJlYWxtIG9mIE5ld1RhcmdldCwgdXRpbGl6aW5nIEdldEZ1bmN0aW9u
UmVhbG0gaGVscGVyIFsyXS4KKyAgICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBh
Y3RpdmUgY29uc3RydWN0b3Igd2FzIHVzZWQgaW5zdGVhZC4gVGhpcyBwYXRjaCBpbnRyb2R1Y2Vz
CisgICAgICAgIEdldEZ1bmN0aW9uUmVhbG0gYW5kIGFsaWducyBhbGwgc3ViY2xhc3NhYmxlIGNv
bnN0cnVjdG9ycyB3aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNwaWRlck1vbmtleS4KKworICAgICAg
ICBUaGlzIGNoYW5nZSBpbmxpbmVzIGZhc3QgcGF0aHMgY2hlY2tzIG9mIEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKCkgYW5kCisgICAgICAgIHNpbXBsaWZpZXMgaXRz
IHNpZ25hdHVyZTsgZ2V0RnVuY3Rpb25SZWFsbSgpIGlzIGludm9rZWQgaW4gc2xvdyBwYXRocyBv
bmx5LgorCisgICAgICAgIFdoaWxlIGEgZHluYW1pY2FsbHkgY3JlYXRlZCBmdW5jdGlvbiB1c2Vz
IE5ld1RhcmdldCdzIHJlYWxtIGZvciBpdHMgZGVmYXVsdCBbW1Byb3RvdHlwZV1dCisgICAgICAg
IHNpbWlsYXIgdG8gb3RoZXIgYnVpbHQtaW5zLCBpdHMgInByb3RvdHlwZSIgb2JqZWN0IGluaGVy
aXQgZnJvbSBPYmplY3RQcm90b3R5cGUKKyAgICAgICAgb2YgYWN0aXZlIGNvbnN0cnVjdG9yJ3Mg
cmVhbG0gWzNdIChqdXN0IGxpa2UgdGhlaXIgc2NvcGUpLCBtYWtpbmcgaXQgcmV0YWluIHJlZmVy
ZW5jZXMKKyAgICAgICAgdG8gMiBkaWZmZXJlbnQgZ2xvYmFsIG9iamVjdHMuIFRvIGFjY29tb2Rh
dGUgdGhpcyBiZWhhdmlvciwgdGhpcyBjaGFuZ2UgaW50cm9kdWNlcworICAgICAgICBgc2NvcGVH
bG9iYWxPYmplY3RgIGluIEpTRnVuY3Rpb24uY3BwIG1ldGhvZHMuCisKKyAgICAgICAgQWJvdmUt
bWVudGlvbmVkIGJlaGF2aW9yIGFsc28gc2ltcGxpZmllcyBjcmVhdGlvbiBvZiBKU0dlbmVyYXRv
ciBhbmQgSlNBc3luY0dlbmVyYXRvcgorICAgICAgICBpbnN0YW5jZXMgc2luY2UgTmV3VGFyZ2V0
J3MgcmVhbG0gaXMgaXJyZWxldmFudCB0byB0aGVtLgorCisgICAgICAgIEludGxDb2xsYXRvckNv
bnN0cnVjdG9yOjpjb2xsYXRvclN0cnVjdHVyZSgpIGFuZCAzIHNpbWlsYXIgSW50bCpDb25zdHJ1
Y3RvciBtZXRob2RzCisgICAgICAgIGFyZSByZW1vdmVkIGJlY2F1c2UgYSkgd2l0aCB0aGlzIGNo
YW5nZSwgZWFjaCBvZiB0aGVtIGhhdmUgbWF4IG9uZSBjYWxsIHNpdGUgYW5kCisgICAgICAgIGIp
IG90aGVyIEpTQyBjb25zdHJ1Y3RvcnMgaGF2ZSBubyBtZXRob2RzIGFsaWtlLgorCisgICAgICAg
IFsxXTogaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1tYXAtY29uc3RydWN0b3IgKHN0ZXAg
MikKKyAgICAgICAgWzJdOiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLWdldGZ1bmN0aW9u
cmVhbG0KKyAgICAgICAgWzNdOiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLWNyZWF0ZWR5
bmFtaWNmdW5jdGlvbiAoc3RlcHMgMjMtMjUpCisKKyAgICAgICAgKiBkZmcvREZHT3BlcmF0aW9u
cy5jcHA6CisgICAgICAgICogcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6Y29uc3RydWN0QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcik6CisgICAg
ICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
Ojpjb25zdHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUv
QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29u
c3RydWN0QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50
aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhC
b29sZWFuQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNw
cDoKKyAgICAgICAgKEpTQzo6U0xPV19QQVRIX0RFQ0wpOgorICAgICAgICAoSlNDOjpjcmVhdGVJ
bnRlcm5hbEZpZWxkT2JqZWN0KToKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdERhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvRXJy
b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEVycm9yQ29uc3RydWN0
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRW5hYmxlZENoZWNrKToKKyAgICAg
ICAgKiBydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSk6CisgICAgICAgIChKU0M6OmdldEZ1
bmN0aW9uUmVhbG0pOgorICAgICAgICAoSlNDOjpJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZVNsb3cpOiBEZWxldGVkLgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxG
dW5jdGlvbi5oOgorICAgICAgICAoSlNDOjpJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZSk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEludGxDb2xsYXRvcik6CisgICAg
ICAgIChKU0M6OmNhbGxJbnRsQ29sbGF0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bENvbGxh
dG9yQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0
KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgICogcnVu
dGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUv
SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
SW50bE51bWJlckZvcm1hdCk6CisgICAgICAgIChKU0M6OmNhbGxJbnRsTnVtYmVyRm9ybWF0KToK
KyAgICAgICAgKiBydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
Ojpjb25zdHJ1Y3RJbnRsUGx1cmFsUnVsZXMpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJh
bFJ1bGVzQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTR2VuZXJpY0FycmF5QnVmZmVyQ29uc3RydWN0
b3I8c2hhcmluZ01vZGU+Ojpjb25zdHJ1Y3RBcnJheUJ1ZmZlcik6CisgICAgICAgICogcnVudGlt
ZS9KU0Z1bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6cHJvdG90eXBlRm9y
Q29uc3RydWN0aW9uKToKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6Z2V0T3duUHJvcGVydHlT
bG90KToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0
b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFycmF5Vmll
dyk6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAg
KEpTQzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5n
QWxsb2NhdGlvbiBjb25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
cjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAg
KiBydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
TnVtYmVyQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RPYmplY3RXaXRoTmV3VGFyZ2V0KToKKyAgICAg
ICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Z2V0UmVn
RXhwU3RydWN0dXJlKToKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0UmVnRXhwKToKKyAgICAgICAg
KEpTQzo6ZXNTcGVjUmVnRXhwQ3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0
cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdFNldCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdpdGhTdHJpbmdDb25zdHJ1Y3Rvcik6Cisg
ICAgICAgICogcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpj
b25zdHJ1Y3RXZWFrTWFwKToKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1
Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFdlYWtSZWYpOgorICAgICAgICAqIHJ1
bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vh
a1NldCk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SlNXZWJBc3NlbWJseUNvbXBpbGVFcnJv
cik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5SW5zdGFuY2UpOgorICAgICAg
ICAqIHdhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdEpTV2ViQXNzZW1ibHlMaW5rRXJyb3IpOgorICAgICAgICAqIHdhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OldlYkFz
c2VtYmx5TW9kdWxlQ29uc3RydWN0b3I6OmNyZWF0ZU1vZHVsZSk6CisgICAgICAgICogd2FzbS9q
cy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Y29uc3RydWN0SlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcik6CisKIDIwMjAtMDQtMTcgIERldmlu
IFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBQcm9taXNl
LmFueSBhbmQgQWdncmVnYXRlRXJyb3IKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHT3BlcmF0aW9ucy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdPcGVyYXRpb25zLmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzk1LDcgKzM5
NSw5IEBAIEpTQ2VsbCogSklUX09QRVJBVElPTiBvcGVyYXRpb25DcmVhdGVQcm8KICAgICBDYWxs
RnJhbWUqIGNhbGxGcmFtZSA9IERFQ0xBUkVfQ0FMTF9GUkFNRSh2bSk7CiAgICAgSklUT3BlcmF0
aW9uUHJvbG9ndWVDYWxsRnJhbWVUcmFjZXIgdHJhY2VyKHZtLCBjYWxsRnJhbWUpOwogICAgIGF1
dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3IsIGds
b2JhbE9iamVjdC0+cHJvbWlzZVN0cnVjdHVyZSgpKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IGNvbnN0cnVjdG9yID09IGdsb2JhbE9iamVjdC0+cHJvbWlzZUNvbnN0cnVjdG9yKCkKKyAg
ICAgICAgPyBnbG9iYWxPYmplY3QtPnByb21pc2VTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVy
bmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY29uc3Ry
dWN0b3IsIGdldEZ1bmN0aW9uUmVhbG0odm0sIGNvbnN0cnVjdG9yKS0+cHJvbWlzZVN0cnVjdHVy
ZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTUHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpKTsK
IH0KQEAgLTQwNiw3ICs0MDgsOSBAQCBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uQ3Jl
YXRlSW50CiAgICAgQ2FsbEZyYW1lKiBjYWxsRnJhbWUgPSBERUNMQVJFX0NBTExfRlJBTUUodm0p
OwogICAgIEpJVE9wZXJhdGlvblByb2xvZ3VlQ2FsbEZyYW1lVHJhY2VyIHRyYWNlcih2bSwgY2Fs
bEZyYW1lKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7Ci0gICAg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+aW50ZXJuYWxQcm9taXNlQ29uc3Ry
dWN0b3IoKSwgY29uc3RydWN0b3IsIGdsb2JhbE9iamVjdC0+aW50ZXJuYWxQcm9taXNlU3RydWN0
dXJlKCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gY29uc3RydWN0b3IgPT0gZ2xvYmFs
T2JqZWN0LT5pbnRlcm5hbFByb21pc2VDb25zdHJ1Y3RvcigpCisgICAgICAgID8gZ2xvYmFsT2Jq
ZWN0LT5pbnRlcm5hbFByb21pc2VTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY29uc3RydWN0b3IsIGdl
dEZ1bmN0aW9uUmVhbG0odm0sIGNvbnN0cnVjdG9yKS0+aW50ZXJuYWxQcm9taXNlU3RydWN0dXJl
KCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgIFJFTEVB
U0VfQU5EX1JFVFVSTihzY29wZSwgSlNJbnRlcm5hbFByb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0
dXJlKSk7CiB9CkBAIC00MTcsNyArNDIxLDcgQEAgSlNDZWxsKiBKSVRfT1BFUkFUSU9OIG9wZXJh
dGlvbkNyZWF0ZUdlbgogICAgIENhbGxGcmFtZSogY2FsbEZyYW1lID0gREVDTEFSRV9DQUxMX0ZS
QU1FKHZtKTsKICAgICBKSVRPcGVyYXRpb25Qcm9sb2d1ZUNhbGxGcmFtZVRyYWNlciB0cmFjZXIo
dm0sIGNhbGxGcmFtZSk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBudWxscHRyLCBjb25zdHJ1Y3RvciwgZ2xvYmFs
T2JqZWN0LT5nZW5lcmF0b3JTdHJ1Y3R1cmUoKSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNvbnN0cnVjdG9yLCBnbG9iYWxPYmplY3QtPmdlbmVyYXRvclN0cnVjdHVyZSgpKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICBSRUxFQVNFX0FORF9SRVRV
Uk4oc2NvcGUsIEpTR2VuZXJhdG9yOjpjcmVhdGUodm0sIHN0cnVjdHVyZSkpOwogfQpAQCAtNDI4
LDcgKzQzMiw3IEBAIEpTQ2VsbCogSklUX09QRVJBVElPTiBvcGVyYXRpb25DcmVhdGVBc3kKICAg
ICBDYWxsRnJhbWUqIGNhbGxGcmFtZSA9IERFQ0xBUkVfQ0FMTF9GUkFNRSh2bSk7CiAgICAgSklU
T3BlcmF0aW9uUHJvbG9ndWVDYWxsRnJhbWVUcmFjZXIgdHJhY2VyKHZtLCBjYWxsRnJhbWUpOwog
ICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgbnVsbHB0ciwgY29uc3RydWN0b3IsIGdsb2JhbE9iamVjdC0+YXN5bmNHZW5l
cmF0b3JTdHJ1Y3R1cmUoKSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9y
LCBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yU3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29w
ZSwgSlNBc3luY0dlbmVyYXRvcjo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpKTsKIH0KSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FnZ3JlZ2F0ZUVy
cm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNzAsMTIgKzcwLDE0IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNW
YWx1ZSBlcnJvcnMgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIEpTVmFsdWUgbWVzc2Fn
ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7Ci0gICAgSlNWYWx1ZSBuZXdUYXJnZXQgPSBjYWxs
RnJhbWUtPm5ld1RhcmdldCgpOwotICAgIEFTU0VSVChuZXdUYXJnZXQuaXNPYmplY3QoKSk7Ci0g
ICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gYXNPYmplY3QobmV3VGFyZ2V0KS0+Z2xvYmFs
T2JqZWN0KHZtKS0+ZXJyb3JTdHJ1Y3R1cmUoRXJyb3JUeXBlOjpBZ2dyZWdhdGVFcnJvcik7Ci0g
ICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBuZXdU
YXJnZXQsIGJhc2VTdHJ1Y3R1cmUpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVu
Y29kZWRKU1ZhbHVlKCkpOworCisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBu
ZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0
LT5lcnJvclN0cnVjdHVyZShFcnJvclR5cGU6OkFnZ3JlZ2F0ZUVycm9yKQorICAgICAgICA6IElu
dGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3
VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT5lcnJvclN0cnVjdHVyZShF
cnJvclR5cGU6OkFnZ3JlZ2F0ZUVycm9yKSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgeyB9KTsKICAgICBBU1NFUlQoZXJyb3JTdHJ1Y3R1cmUpOworICAgIAogICAgIFJFTEVBU0Vf
QU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEFnZ3JlZ2F0ZUVycm9yOjpjcmVhdGUo
Z2xvYmFsT2JqZWN0LCB2bSwgZXJyb3JTdHJ1Y3R1cmUsIGVycm9ycywgbWVzc2FnZSwgbnVsbHB0
ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwogfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5j
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDcgKzQ1LDcgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAogc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAg
IEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29u
c3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29u
c3RydWN0aW9uTW9kZTo6QXN5bmMpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0
cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0
cnVjdGlvbk1vZGU6OkFzeW5jLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpKSk7CiB9CiAKIEFzeW5j
RnVuY3Rpb25Db25zdHJ1Y3Rvcjo6QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
c3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTQ1LDcgKzQ1LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbAog
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0QXN5bmNHZW5lcmF0
b3JGdW5jdGlvbkNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxG
cmFtZSogY2FsbEZyYW1lKQogewogICAgIEFyZ0xpc3QgYXJncyhjYWxsRnJhbWUpOwotICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUsIGFyZ3MsIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3IpKTsK
KyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJh
dG9yLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpKSk7CiB9CiAKIEFzeW5jR2VuZXJhdG9yRnVuY3Rp
b25Db25zdHJ1Y3Rvcjo6QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTQzLDggKzQzLDEzIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgYm9vbGVhbiA9
IGpzQm9vbGVhbihjYWxsRnJhbWUtPmFyZ3VtZW50KDApLnRvQm9vbGVhbihnbG9iYWxPYmplY3Qp
KTsKLSAgICBTdHJ1Y3R1cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5ib29sZWFuT2JqZWN0U3Ry
dWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVl
KCkpOworCisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogYm9vbGVhblN0cnVjdHVyZSA9IG5ld1RhcmdldCA9
PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPmJvb2xlYW5P
YmplY3RTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZt
LCBuZXdUYXJnZXQpLT5ib29sZWFuT2JqZWN0U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIHsgfSk7CisKICAgICBCb29sZWFuT2JqZWN0KiBvYmogPSBCb29sZWFu
T2JqZWN0OjpjcmVhdGUodm0sIGJvb2xlYW5TdHJ1Y3R1cmUpOwogICAgIG9iai0+c2V0SW50ZXJu
YWxWYWx1ZSh2bSwgYm9vbGVhbik7CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShvYmopOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0
aHMuY3BwCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db21tb25TbG93UGF0aHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yODAsMTEgKzI4MCwxNSBA
QCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfY3JlYXRlX3Byb21pc2UpCiAKICAgICBKU1Byb21p
c2UqIHJlc3VsdCA9IG51bGxwdHI7CiAgICAgaWYgKGJ5dGVjb2RlLm1faXNJbnRlcm5hbFByb21p
c2UpIHsKLSAgICAgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+aW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3JBc09iamVjdCwgZ2xvYmFsT2JqZWN0
LT5pbnRlcm5hbFByb21pc2VTdHJ1Y3R1cmUoKSk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0
dXJlID0gY29uc3RydWN0b3JBc09iamVjdCA9PSBnbG9iYWxPYmplY3QtPmludGVybmFsUHJvbWlz
ZUNvbnN0cnVjdG9yKCkKKyAgICAgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5pbnRlcm5hbFByb21p
c2VTdHJ1Y3R1cmUoKQorICAgICAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yQXNPYmplY3QsIGdldEZ1bmN0
aW9uUmVhbG0odm0sIGNvbnN0cnVjdG9yQXNPYmplY3QpLT5pbnRlcm5hbFByb21pc2VTdHJ1Y3R1
cmUoKSk7CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAgICAgICByZXN1bHQgPSBKU0lu
dGVybmFsUHJvbWlzZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIH0gZWxzZSB7Ci0gICAg
ICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3Rv
cigpLCBjb25zdHJ1Y3RvckFzT2JqZWN0LCBnbG9iYWxPYmplY3QtPnByb21pc2VTdHJ1Y3R1cmUo
KSk7CisgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gY29uc3RydWN0b3JBc09iamVjdCA9
PSBnbG9iYWxPYmplY3QtPnByb21pc2VDb25zdHJ1Y3RvcigpCisgICAgICAgICAgICA/IGdsb2Jh
bE9iamVjdC0+cHJvbWlzZVN0cnVjdHVyZSgpCisgICAgICAgICAgICA6IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY29uc3RydWN0b3JBc09i
amVjdCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgY29uc3RydWN0b3JBc09iamVjdCktPnByb21pc2VT
dHJ1Y3R1cmUoKSk7CiAgICAgICAgIENIRUNLX0VYQ0VQVElPTigpOwogICAgICAgICByZXN1bHQg
PSBKU1Byb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9CkBAIC0zMTcsNyArMzIx
LDcgQEAgc3RhdGljIEpTQ2xhc3MqIGNyZWF0ZUludGVybmFsRmllbGRPYmplYwogewogICAgIGF1
dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogc3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBudWxscHRyLCBjb25zdHJ1Y3RvckFzT2JqZWN0LCBiYXNlU3RydWN0dXJlKTsKKyAg
ICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY29uc3RydWN0b3JBc09iamVjdCwgYmFzZVN0cnVjdHVy
ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAgICAgSlNDbGFz
cyogcmVzdWx0ID0gSlNDbGFzczo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAJKHJl
dmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0Myw3ICsxNDMsOSBAQCBKU09iamVjdCog
Y29uc3RydWN0RGF0ZShKU0dsb2JhbE9iamVjdCogCiAgICAgICAgIHZhbHVlID0gbWlsbGlzZWNv
bmRzRnJvbUNvbXBvbmVudHMoZ2xvYmFsT2JqZWN0LCBhcmdzLCBXVEY6OkxvY2FsVGltZSk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKLSAgICBTdHJ1Y3R1cmUq
IGRhdGVTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZGF0ZUNvbnN0cnVjdG9yKCksIG5ld1Rhcmdl
dCwgZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCkpOworICAgIFN0cnVjdHVyZSogZGF0ZVN0
cnVjdHVyZSA9ICFuZXdUYXJnZXQgfHwgbmV3VGFyZ2V0ID09IGdsb2JhbE9iamVjdC0+ZGF0ZUNv
bnN0cnVjdG9yKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPmRhdGVTdHJ1Y3R1cmUoKQorICAg
ICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgYXNPYmplY3QobmV3VGFyZ2V0KSwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgYXNPYmplY3Qo
bmV3VGFyZ2V0KSktPmRhdGVTdHJ1Y3R1cmUoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgbnVsbHB0cik7CiAKICAgICByZXR1cm4gRGF0ZUluc3RhbmNlOjpjcmVhdGUodm0sIGRh
dGVTdHJ1Y3R1cmUsIHZhbHVlKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Vycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNTcsOCArNTcsMTMgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RFcgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZy
YW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+ZXJy
b3JTdHJ1Y3R1cmUoKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CisKKyAgICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IG5ld1Rhcmdl
dCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPmVycm9y
U3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3
VGFyZ2V0KS0+ZXJyb3JTdHJ1Y3R1cmUoKSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgeyB9KTsKKwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2Rl
KEVycm9ySW5zdGFuY2U6OmNyZWF0ZShnbG9iYWxPYmplY3QsIGVycm9yU3RydWN0dXJlLCBtZXNz
YWdlLCBudWxscHRyLCBUeXBlTm90aGluZywgZmFsc2UpKSk7CiB9CiAKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3Bw
CShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvbkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDM0ICsxNTIsMzggQEAg
SlNPYmplY3QqIGNvbnN0cnVjdEZ1bmN0aW9uU2tpcHBpbmdFdmFsRQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICB9CiAKKyAgICBib29sIG5lZWRzU3ViY2xhc3NTdHJ1Y3R1cmUgPSBuZXdU
YXJnZXQgJiYgbmV3VGFyZ2V0ICE9IGdsb2JhbE9iamVjdC0+ZnVuY3Rpb25Db25zdHJ1Y3Rvcigp
OworICAgIEpTR2xvYmFsT2JqZWN0KiBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QgPSBuZWVkc1N1YmNs
YXNzU3RydWN0dXJlID8gZ2V0RnVuY3Rpb25SZWFsbSh2bSwgYXNPYmplY3QobmV3VGFyZ2V0KSkg
OiBnbG9iYWxPYmplY3Q7CiAgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBudWxscHRyOwogICAg
IHN3aXRjaCAoZnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlKSB7CiAgICAgY2FzZSBGdW5jdGlvbkNv
bnN0cnVjdGlvbk1vZGU6OkZ1bmN0aW9uOgotICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9u
OjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5jRXhwKGdsb2JhbE9iamVjdCwgZnVuY3Rpb24pOwor
ICAgICAgICBzdHJ1Y3R1cmUgPSBKU0Z1bmN0aW9uOjpzZWxlY3RTdHJ1Y3R1cmVGb3JOZXdGdW5j
RXhwKHN0cnVjdHVyZUdsb2JhbE9iamVjdCwgZnVuY3Rpb24pOwogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6R2VuZXJhdG9yOgotICAgICAgICBzdHJ1
Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmdlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7CisgICAg
ICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yRnVuY3Rpb25T
dHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlv
bk1vZGU6OkFzeW5jOgotICAgICAgICBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFzeW5jRnVu
Y3Rpb25TdHJ1Y3R1cmUoKTsKKyAgICAgICAgc3RydWN0dXJlID0gc3RydWN0dXJlR2xvYmFsT2Jq
ZWN0LT5hc3luY0Z1bmN0aW9uU3RydWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
RnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvcjoKLSAgICAgICAgc3RydWN0
dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvckZ1bmN0aW9uU3RydWN0dXJlKCk7Cisg
ICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JG
dW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICBTdHJ1Y3R1
cmUqIHN1YmNsYXNzU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NT
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmZ1bmN0aW9uQ29uc3RydWN0b3Io
KSwgbmV3VGFyZ2V0LCBzdHJ1Y3R1cmUpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IG51bGxwdHIpOworICAgIGlmIChuZWVkc1N1YmNsYXNzU3RydWN0dXJlKSB7CisgICAgICAgIHN0
cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2Jh
bE9iamVjdCwgYXNPYmplY3QobmV3VGFyZ2V0KSwgc3RydWN0dXJlKTsKKyAgICAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CisgICAgfQogCiAgICAgc3dpdGNoIChmdW5j
dGlvbkNvbnN0cnVjdGlvbk1vZGUpIHsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9k
ZTo6RnVuY3Rpb246Ci0gICAgICAgIHJldHVybiBKU0Z1bmN0aW9uOjpjcmVhdGUodm0sIGZ1bmN0
aW9uLCBnbG9iYWxPYmplY3QtPmdsb2JhbFNjb3BlKCksIHN1YmNsYXNzU3RydWN0dXJlKTsKKyAg
ICAgICAgcmV0dXJuIEpTRnVuY3Rpb246OmNyZWF0ZSh2bSwgZnVuY3Rpb24sIGdsb2JhbE9iamVj
dC0+Z2xvYmFsU2NvcGUoKSwgc3RydWN0dXJlKTsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0
aW9uTW9kZTo6R2VuZXJhdG9yOgotICAgICAgICByZXR1cm4gSlNHZW5lcmF0b3JGdW5jdGlvbjo6
Y3JlYXRlKHZtLCBmdW5jdGlvbiwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxTY29wZSgpLCBzdWJjbGFz
c1N0cnVjdHVyZSk7CisgICAgICAgIHJldHVybiBKU0dlbmVyYXRvckZ1bmN0aW9uOjpjcmVhdGUo
dm0sIGZ1bmN0aW9uLCBnbG9iYWxPYmplY3QtPmdsb2JhbFNjb3BlKCksIHN0cnVjdHVyZSk7CiAg
ICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jOgotICAgICAgICByZXR1cm4g
SlNBc3luY0Z1bmN0aW9uOjpjcmVhdGUodm0sIGZ1bmN0aW9uLCBnbG9iYWxPYmplY3QtPmdsb2Jh
bFNjb3BlKCksIHN1YmNsYXNzU3RydWN0dXJlKTsKKyAgICAgICAgcmV0dXJuIEpTQXN5bmNGdW5j
dGlvbjo6Y3JlYXRlKHZtLCBmdW5jdGlvbiwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxTY29wZSgpLCBz
dHJ1Y3R1cmUpOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVy
YXRvcjoKLSAgICAgICAgcmV0dXJuIEpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbjo6Y3JlYXRlKHZt
LCBmdW5jdGlvbiwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxTY29wZSgpLCBzdWJjbGFzc1N0cnVjdHVy
ZSk7CisgICAgICAgIHJldHVybiBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OmNyZWF0ZSh2bSwg
ZnVuY3Rpb24sIGdsb2JhbE9iamVjdC0+Z2xvYmFsU2NvcGUoKSwgc3RydWN0dXJlKTsKICAgICB9
CiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwCShyZXZpc2lvbiAyNjAyNzQp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjQsOSArMjQsMTEgQEAKICNpbmNsdWRlICJJbnRlcm5hbEZ1bmN0
aW9uLmgiCiAKICNpbmNsdWRlICJGdW5jdGlvblByb3RvdHlwZS5oIgorI2luY2x1ZGUgIkpTQm91
bmRGdW5jdGlvbi5oIgorI2luY2x1ZGUgIkpTQ0lubGluZXMuaCIKICNpbmNsdWRlICJKU0dsb2Jh
bE9iamVjdC5oIgogI2luY2x1ZGUgIkpTU3RyaW5nLmgiCi0jaW5jbHVkZSAiSlNDSW5saW5lcy5o
IgorI2luY2x1ZGUgIlByb3h5T2JqZWN0LmgiCiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC0xMTIs
NyArMTE0LDcgQEAgY29uc3QgU3RyaW5nIEludGVybmFsRnVuY3Rpb246OmNhbGN1bGF0ZQogICAg
IHJldHVybiBuYW1lKCk7CiB9CiAKLVN0cnVjdHVyZSogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmVTbG93KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFs
dWUgbmV3VGFyZ2V0LCBTdHJ1Y3R1cmUqIGJhc2VDbGFzcykKK1N0cnVjdHVyZSogSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNPYmplY3QqIG5ld1RhcmdldCwgU3RydWN0dXJlKiBiYXNlQ2xhc3MpCiB7CiAgICAg
Vk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RI
Uk9XX1NDT1BFKHZtKTsKQEAgLTEzNSw3ICsxMzcsNyBAQCBTdHJ1Y3R1cmUqIEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsCiAgICAgICAgIGlmIChKU09iamVjdCogcHJvdG90eXBlID0ganNE
eW5hbWljQ2FzdDxKU09iamVjdCo+KHZtLCBwcm90b3R5cGVWYWx1ZSkpCiAgICAgICAgICAgICBy
ZXR1cm4gcmFyZURhdGEtPmNyZWF0ZUludGVybmFsRnVuY3Rpb25BbGxvY2F0aW9uU3RydWN0dXJl
RnJvbUJhc2Uodm0sIGJhc2VHbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgYmFzZUNsYXNzKTsKICAg
ICB9IGVsc2UgewotICAgICAgICBKU1ZhbHVlIHByb3RvdHlwZVZhbHVlID0gbmV3VGFyZ2V0Lmdl
dChnbG9iYWxPYmplY3QsIHZtLnByb3BlcnR5TmFtZXMtPnByb3RvdHlwZSk7CisgICAgICAgIEpT
VmFsdWUgcHJvdG90eXBlVmFsdWUgPSBuZXdUYXJnZXQtPmdldChnbG9iYWxPYmplY3QsIHZtLnBy
b3BlcnR5TmFtZXMtPnByb3RvdHlwZSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIG51bGxwdHIpOwogICAgICAgICBpZiAoSlNPYmplY3QqIHByb3RvdHlwZSA9IGpzRHluYW1p
Y0Nhc3Q8SlNPYmplY3QqPih2bSwgcHJvdG90eXBlVmFsdWUpKSB7CiAgICAgICAgICAgICAvLyBU
aGlzIG9ubHkgaGFwcGVucyBpZiBzb21lb25lIFJlZmxlY3QuY29uc3RydWN0cyBvdXIgYnVpbHRp
biBjb25zdHJ1Y3RvciB3aXRoIGFub3RoZXIgYnVpbHRpbiBjb25zdHJ1Y3RvciBhcyB0aGUgbmV3
LnRhcmdldC4KQEAgLTE0Nyw1ICsxNDksMjUgQEAgU3RydWN0dXJlKiBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbAogICAgIHJldHVybiBiYXNlQ2xhc3M7CiB9CiAKKy8vIGh0dHBzOi8vdGMz
OS5lcy9lY21hMjYyLyNzZWMtZ2V0ZnVuY3Rpb25yZWFsbQorSlNHbG9iYWxPYmplY3QqIGdldEZ1
bmN0aW9uUmVhbG0oVk0mIHZtLCBKU09iamVjdCogb2JqZWN0KQoreworICAgIEFTU0VSVChvYmpl
Y3QtPmlzRnVuY3Rpb24odm0pKTsKKworICAgIGlmIChhdXRvKiBib3VuZEZ1bmN0aW9uID0ganNE
eW5hbWljQ2FzdDxKU0JvdW5kRnVuY3Rpb24qPih2bSwgb2JqZWN0KSkKKyAgICAgICAgcmV0dXJu
IGdldEZ1bmN0aW9uUmVhbG0odm0sIGJvdW5kRnVuY3Rpb24tPnRhcmdldEZ1bmN0aW9uKCkpOwor
CisgICAgaWYgKGF1dG8qIHByb3h5ID0ganNEeW5hbWljQ2FzdDxQcm94eU9iamVjdCo+KHZtLCBv
YmplY3QpKSB7CisgICAgICAgIC8vIFBlciBzdGVwIDQuYSwgYSBUeXBlRXJyb3Igc2hvdWxkIGJl
IHRocm93biBmb3IgcmV2b2tlZCBQcm94eSwgeWV0IHdlIHNraXAgaXQgc2luY2U6CisgICAgICAg
IC8vIGEpIEl0IGlzIGJhcmVseSBvYnNlcnZhYmxlIGFueXdheTogInByb3RvdHlwZSIgbG9va3Vw
IGluIGNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKCkgd2lsbCB0aHJvdyBmb3IgcmV2b2tlZCBQcm94
eS4KKyAgICAgICAgLy8gYikgVGhyb3dpbmcgZ2V0RnVuY3Rpb25SZWFsbSgpIHdpbGwgcmVzdHJp
Y3QgY2FsbGluZyBpdCBpbmxpbmUgYXMgYW4gYXJndW1lbnQgb2YgY3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoKS4KKyAgICAgICAgLy8gYykgVGhlcmUgaXMgb25nb2luZyBkaXNjdXNzaW9uIG9uIHJl
bW92aW5nIGl0OiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hMjYyL2lzc3Vlcy8xNzk4Lgor
ICAgICAgICBpZiAoIXByb3h5LT5pc1Jldm9rZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBnZXRG
dW5jdGlvblJlYWxtKHZtLCBwcm94eS0+dGFyZ2V0KCkpOworICAgIH0KKworICAgIHJldHVybiBv
YmplY3QtPmdsb2JhbE9iamVjdCh2bSk7Cit9CisKIAogfSAvLyBuYW1lc3BhY2UgSlNDCkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5o
CShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRl
cm5hbEZ1bmN0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDcgQEAgcHVibGljOgog
ICAgICAgICByZXR1cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG8s
IFR5cGVJbmZvKEludGVybmFsRnVuY3Rpb25UeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7
IAogICAgIH0KIAotICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KEpTR2xvYmFsT2JqZWN0KiwgSlNPYmplY3QqIGJhc2VDYWxsZWUsIEpTVmFsdWUgbmV3VGFyZ2V0
LCBTdHJ1Y3R1cmUqKTsKKyAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgU3RydWN0dXJlKiBj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShKU0dsb2JhbE9iamVjdCosIEpTT2JqZWN0KiBuZXdUYXJn
ZXQsIFN0cnVjdHVyZSopOwogCiAgICAgVGFnZ2VkTmF0aXZlRnVuY3Rpb24gbmF0aXZlRnVuY3Rp
b25Gb3IoQ29kZVNwZWNpYWxpemF0aW9uS2luZCBraW5kKQogICAgIHsKQEAgLTg4LDggKzg4LDYg
QEAgcHJvdGVjdGVkOgogICAgIGVudW0gY2xhc3MgTmFtZUFkZGl0aW9uTW9kZSB7IFdpdGhTdHJ1
Y3R1cmVUcmFuc2l0aW9uLCBXaXRob3V0U3RydWN0dXJlVHJhbnNpdGlvbiB9OwogICAgIEpTX0VY
UE9SVF9QUklWQVRFIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBjb25zdCBTdHJpbmcmIG5hbWUs
IE5hbWVBZGRpdGlvbk1vZGUgPSBOYW1lQWRkaXRpb25Nb2RlOjpXaXRoU3RydWN0dXJlVHJhbnNp
dGlvbik7CiAKLSAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZVNsb3coSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlIG5ld1RhcmdldCwg
U3RydWN0dXJlKik7Ci0KICAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgQ29uc3RydWN0VHlw
ZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICBKU19FWFBP
UlRfUFJJVkFURSBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEm
KTsKIApAQCAtOTksMTMgKzk3LDYgQEAgcHJvdGVjdGVkOgogICAgIFdyaXRlQmFycmllcjxKU0ds
b2JhbE9iamVjdD4gbV9nbG9iYWxPYmplY3Q7CiB9OwogCi1BTFdBWVNfSU5MSU5FIFN0cnVjdHVy
ZSogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3QqIGJhc2VDYWxsZWUsIEpTVmFsdWUgbmV3VGFyZ2V0
LCBTdHJ1Y3R1cmUqIGJhc2VDbGFzcykKLXsKLSAgICAvLyBXZSBhbGxvdyBuZXdUYXJnZXQgPT0g
SlNWYWx1ZSgpIGJlY2F1c2UgdGhlIEFQSSBuZWVkcyB0byBiZSBhYmxlIHRvIGNyZWF0ZSBjbGFz
c2VzIHdpdGhvdXQgaGF2aW5nIGEgcmVhbCBKUyBmcmFtZS4KLSAgICAvLyBTaW5jZSB3ZSBkb24n
dCBhbGxvdyBzdWJjbGFzc2luZyBpbiB0aGUgQVBJIHdlIGp1c3QgdHJlYXQgbmV3VGFyZ2V0ID09
IEpTVmFsdWUoKSBhcyBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0NhbGxlZSgpCi0gICAgaWYg
KG5ld1RhcmdldCAmJiBuZXdUYXJnZXQgIT0gYmFzZUNhbGxlZSkKLSAgICAgICAgcmV0dXJuIGNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlU2xvdyhnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgYmFzZUNs
YXNzKTsKLSAgICByZXR1cm4gYmFzZUNsYXNzOwotfQorSlNfRVhQT1JUX1BSSVZBVEUgSlNHbG9i
YWxPYmplY3QqIGdldEZ1bmN0aW9uUmVhbG0oVk0mLCBKU09iamVjdCopOwogCiB9IC8vIG5hbWVz
cGFjZSBKU0MKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRv
ckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtOTEsOCArOTEsMTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIGxl
dCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmplY3QsIGVsc2UgbGV0IG5ld1Rh
cmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gMi4gTGV0IGNvbGxhdG9yIGJlIE9yZGluYXJ5Q3Jl
YXRlRnJvbUNvbnN0cnVjdG9yKG5ld1RhcmdldCwgJUNvbGxhdG9yUHJvdG90eXBlJSkuCiAgICAg
Ly8gMy4gUmV0dXJuSWZBYnJ1cHQoY29sbGF0b3IpLgotICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJ
bnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmNvbGxhdG9y
U3RydWN0dXJlKHZtKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNh
bGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+Y29sbGF0b3JTdHJ1
Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0
dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJn
ZXQpLT5jb2xsYXRvclN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCB7IH0pOworCiAgICAgSW50bENvbGxhdG9yKiBjb2xsYXRvciA9IEludGxDb2xsYXRvcjo6Y3Jl
YXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIEFTU0VSVChjb2xsYXRvcik7CiAKQEAgLTEwOSwxNCAr
MTEzLDEzIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKICAgICAv
LyBOZXdUYXJnZXQgaXMgYWx3YXlzIHVuZGVmaW5lZCB3aGVuIGNhbGxlZCBhcyBhIGZ1bmN0aW9u
LgogCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwotICAgIEludGxDb2xsYXRvckNv
bnN0cnVjdG9yKiBjYWxsZWUgPSBqc0Nhc3Q8SW50bENvbGxhdG9yQ29uc3RydWN0b3IqPihjYWxs
RnJhbWUtPmpzQ2FsbGVlKCkpOwogCiAgICAgLy8gRklYTUU6IENvbGxhdG9yIGRvZXMgbm90IGdl
dCB0aGUgd29ya2Fyb3VuZCBmb3IgRUNNQS00MDIgMS4wIGNvbXBhdGliaWxpdHkuCiAgICAgLy8g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzY3OQogCiAgICAgLy8g
Mi4gTGV0IGNvbGxhdG9yIGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1Rhcmdl
dCwgJUNvbGxhdG9yUHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQoY29sbGF0
b3IpLgotICAgIEludGxDb2xsYXRvciogY29sbGF0b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2
bSwgY2FsbGVlLT5jb2xsYXRvclN0cnVjdHVyZSh2bSkpOworICAgIEludGxDb2xsYXRvciogY29s
bGF0b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLT5n
bG9iYWxPYmplY3Qodm0pLT5jb2xsYXRvclN0cnVjdHVyZSgpKTsKICAgICBBU1NFUlQoY29sbGF0
b3IpOwogCiAgICAgLy8gNC4gUmV0dXJuIEluaXRpYWxpemVDb2xsYXRvcihjb2xsYXRvciwgbG9j
YWxlcywgb3B0aW9ucykuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
Q29sbGF0b3JDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDI3NCkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQzLDggKzQzLDYgQEAgcHVibGljOgogCiAgICAgREVDTEFSRV9J
TkZPOwogCi0gICAgU3RydWN0dXJlKiBjb2xsYXRvclN0cnVjdHVyZShWTSYpIGNvbnN0IHsgcmV0
dXJuIGdsb2JhbE9iamVjdCgpLT5jb2xsYXRvclN0cnVjdHVyZSgpOyB9Ci0KIHByb3RlY3RlZDoK
ICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bENvbGxhdG9yUHJvdG90eXBlKik7CiAK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTEsOCArOTEsMTIgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyB1bmRl
ZmluZWQsIGxldCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmplY3QsIGVsc2Ug
bGV0IG5ld1RhcmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gMi4gTGV0IGRhdGVUaW1lRm9ybWF0
IGJlIE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9yKG5ld1RhcmdldCwgJURhdGVUaW1lRm9y
bWF0UHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQoZGF0ZVRpbWVGb3JtYXQp
LgotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+
KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmRhdGVUaW1lRm9ybWF0U3RydWN0dXJlKHZtKSk7Ci0g
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgSlNP
YmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAg
IFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUo
KQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUoKQorICAg
ICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT5kYXRlVGlt
ZUZvcm1hdFN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0p
OworCiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCA9IEludGxEYXRlVGlt
ZUZvcm1hdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIEFTU0VSVChkYXRlVGltZUZvcm1h
dCk7CiAKQEAgLTEwOCwxNCArMTEyLDEyIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNhbGwKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3
VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQg
YmUgTmV3VGFyZ2V0LgogICAgIC8vIE5ld1RhcmdldCBpcyBhbHdheXMgdW5kZWZpbmVkIHdoZW4g
Y2FsbGVkIGFzIGEgZnVuY3Rpb24uCiAKLSAgICBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
ciogY2FsbGVlID0ganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKj4oY2FsbEZy
YW1lLT5qc0NhbGxlZSgpKTsKLQogICAgIC8vIEZJWE1FOiBXb3JrYXJvdW5kIHRvIHByb3ZpZGUg
Y29tcGF0aWJpbGl0eSB3aXRoIEVDTUEtNDAyIDEuMCBjYWxsL2FwcGx5IHBhdHRlcm5zLgogICAg
IC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTM2NzkKLSAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEludGxJbnN0YW5jZVdpdGhXb3JrYXJvdW5k
Rm9yTGVnYWN5SW50bENvbnN0cnVjdG9yPEludGxEYXRlVGltZUZvcm1hdD4oZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpLCBjYWxsZWUsIFsmXSAoVk0mIHZtKSB7CisgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RJbnRsSW5zdGFuY2VXaXRoV29ya2Fyb3VuZEZv
ckxlZ2FjeUludGxDb25zdHJ1Y3RvcjxJbnRsRGF0ZVRpbWVGb3JtYXQ+KGdsb2JhbE9iamVjdCwg
Y2FsbEZyYW1lLT50aGlzVmFsdWUoKSwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBbJl0gKFZNJiB2
bSkgewogICAgICAgICAvLyAyLiBMZXQgZGF0ZVRpbWVGb3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVG
cm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUlKS4KICAg
ICAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQoZGF0ZVRpbWVGb3JtYXQpLgotICAgICAgICBJbnRs
RGF0ZVRpbWVGb3JtYXQqIGRhdGVUaW1lRm9ybWF0ID0gSW50bERhdGVUaW1lRm9ybWF0OjpjcmVh
dGUodm0sIGNhbGxlZS0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUodm0pKTsKKyAgICAgICAgSW50
bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCA9IEludGxEYXRlVGltZUZvcm1hdDo6Y3Jl
YXRlKHZtLCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCktPmdsb2JhbE9iamVjdCh2bSktPmRhdGVUaW1l
Rm9ybWF0U3RydWN0dXJlKCkpOwogICAgICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAg
ICAgICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3Jt
YXQsIGxvY2FsZXMsIG9wdGlvbnMpLgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oCShy
ZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC00Myw4ICs0Myw2IEBA
IHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5GTzsKIAotICAgIFN0cnVjdHVyZSogZGF0ZVRpbWVG
b3JtYXRTdHJ1Y3R1cmUoVk0mKSBjb25zdCB7IHJldHVybiBnbG9iYWxPYmplY3QoKS0+ZGF0ZVRp
bWVGb3JtYXRTdHJ1Y3R1cmUoKTsgfQotCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBmaW5pc2hDcmVh
dGlvbihWTSYsIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSopOwogCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3Jt
YXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTkxLDggKzkxLDEyIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0
IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3
VGFyZ2V0LgogICAgIC8vIDIuIExldCBudW1iZXJGb3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9t
Q29uc3RydWN0b3IobmV3VGFyZ2V0LCAlTnVtYmVyRm9ybWF0UHJvdG90eXBlJSkuCiAgICAgLy8g
My4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8
SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+bnVt
YmVyRm9ybWF0U3RydWN0dXJlKHZtKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
ZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNh
bGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFy
Z2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+bnVt
YmVyRm9ybWF0U3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFs
bSh2bSwgbmV3VGFyZ2V0KS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CisKICAgICBJbnRsTnVtYmVyRm9ybWF0KiBudW1iZXJG
b3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgQVNT
RVJUKG51bWJlckZvcm1hdCk7CiAKQEAgLTEwOCwxNCArMTEyLDEyIEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5k
ZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNl
IGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIE5ld1RhcmdldCBpcyBhbHdheXMg
dW5kZWZpbmVkIHdoZW4gY2FsbGVkIGFzIGEgZnVuY3Rpb24uCiAKLSAgICBJbnRsTnVtYmVyRm9y
bWF0Q29uc3RydWN0b3IqIGNhbGxlZSA9IGpzQ2FzdDxJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0
b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCiAgICAgLy8gRklYTUU6IFdvcmthcm91bmQg
dG8gcHJvdmlkZSBjb21wYXRpYmlsaXR5IHdpdGggRUNNQS00MDIgMS4wIGNhbGwvYXBwbHkgcGF0
dGVybnMuCiAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
MzY3OQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0SW50bEluc3RhbmNlV2l0
aFdvcmthcm91bmRGb3JMZWdhY3lJbnRsQ29uc3RydWN0b3I8SW50bE51bWJlckZvcm1hdD4oZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpLCBjYWxsZWUsIFsmXSAoVk0mIHZtKSB7
CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RJbnRsSW5zdGFuY2VXaXRoV29y
a2Fyb3VuZEZvckxlZ2FjeUludGxDb25zdHJ1Y3RvcjxJbnRsTnVtYmVyRm9ybWF0PihnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCksIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgWyZd
IChWTSYgdm0pIHsKICAgICAgICAgLy8gMi4gTGV0IG51bWJlckZvcm1hdCBiZSBPcmRpbmFyeUNy
ZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVOdW1iZXJGb3JtYXRQcm90b3R5cGUlKS4K
ICAgICAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0KS4KLSAgICAgICAgSW50
bE51bWJlckZvcm1hdCogbnVtYmVyRm9ybWF0ID0gSW50bE51bWJlckZvcm1hdDo6Y3JlYXRlKHZt
LCBjYWxsZWUtPm51bWJlckZvcm1hdFN0cnVjdHVyZSh2bSkpOworICAgICAgICBJbnRsTnVtYmVy
Rm9ybWF0KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0OjpjcmVhdGUodm0sIGNhbGxG
cmFtZS0+anNDYWxsZWUoKS0+Z2xvYmFsT2JqZWN0KHZtKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJl
KCkpOwogICAgICAgICBBU1NFUlQobnVtYmVyRm9ybWF0KTsKIAogICAgICAgICAvLyA0LiBSZXR1
cm4gSW5pdGlhbGl6ZU51bWJlckZvcm1hdChudW1iZXJGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMp
LgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENv
bnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oCSh3
b3JraW5nIGNvcHkpCkBAIC00Myw4ICs0Myw2IEBAIHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAotICAgIFN0cnVjdHVyZSogbnVtYmVyRm9ybWF0U3RydWN0dXJlKFZNJikgY29uc3QgeyBy
ZXR1cm4gZ2xvYmFsT2JqZWN0KCktPm51bWJlckZvcm1hdFN0cnVjdHVyZSgpOyB9Ci0KIHByb3Rl
Y3RlZDoKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZSopOwogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFs
UnVsZXNDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAyNzQp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg5LDggKzg5LDEyIEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKIAogICAgIC8vIDEzLjIuMSBJbnRsLlBsdXJhbFJ1
bGVzIChbIGxvY2FsZXMgWyAsIG9wdGlvbnMgXSBdKQogICAgIC8vIGh0dHBzOi8vdGMzOS5naXRo
dWIuaW8vZWNtYTQwMi8jc2VjLWludGwucGx1cmFscnVsZXMKLSAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nh
c3Q8SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpLT5w
bHVyYWxSdWxlc1N0cnVjdHVyZSh2bSkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChj
YWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IG5ld1Rh
cmdldCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPnBs
dXJhbFJ1bGVzU3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFs
bSh2bSwgbmV3VGFyZ2V0KS0+cGx1cmFsUnVsZXNTdHJ1Y3R1cmUoKSk7CisgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgeyB9KTsKKwogICAgIEludGxQbHVyYWxSdWxlcyogcGx1cmFsUnVs
ZXMgPSBJbnRsUGx1cmFsUnVsZXM6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQo
cGx1cmFsUnVsZXMpOwogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
UGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDI3
NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0
cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTQzLDggKzQzLDYgQEAgcHVibGljOgogCiAgICAg
REVDTEFSRV9JTkZPOwogCi0gICAgU3RydWN0dXJlKiBwbHVyYWxSdWxlc1N0cnVjdHVyZShWTSYp
IGNvbnN0IHsgcmV0dXJuIGdsb2JhbE9iamVjdCgpLT5wbHVyYWxSdWxlc1N0cnVjdHVyZSgpOyB9
Ci0KIHByb3RlY3RlZDoKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bFBsdXJhbFJ1
bGVzUHJvdG90eXBlKik7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
QXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYw
Mjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0
cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzksOSArNzksMTAgQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBKU0dlbmVyaWNBcgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+
dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBK
U0dlbmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKiBjb25zdHJ1Y3RvciA9IGpzQ2FzdDxKU0dl
bmVyaWNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsKLQot
ICAgIFN0cnVjdHVyZSogYXJyYXlCdWZmZXJTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUo
KSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgY29uc3RydWN0b3ItPmdsb2JhbE9iamVjdCgpLT5h
cnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5nTW9kZSkpOworICAgIEpTT2JqZWN0KiBuZXdUYXJn
ZXQgPSBhc09iamVjdChjYWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGFy
cmF5QnVmZmVyU3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQor
ICAgICAgICA/IGdsb2JhbE9iamVjdC0+YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUp
CisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPmFy
cmF5QnVmZmVyU3RydWN0dXJlKHNoYXJpbmdNb2RlKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgeyB9KTsKIAogICAgIHVuc2lnbmVkIGxlbmd0aDsKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCShyZXZpc2lvbiAyNjAyNzQpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTc0LDE4ICsxNzQsMTcgQEAgSlNPYmplY3QqIEpTRnVuY3Rpb246OnByb3RvdHlw
ZUZvckNvbnN0cgogICAgIHNjb3BlLnJlbGVhc2VBc3NlcnROb0V4Y2VwdGlvbigpOwogICAgIGlm
IChMSUtFTFkocHJvdG90eXBlLmlzT2JqZWN0KCkpKQogICAgICAgICByZXR1cm4gYXNPYmplY3Qo
cHJvdG90eXBlKTsKKyAgICBpZiAoaXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkKKyAgICAgICAg
cmV0dXJuIHRoaXMtPmdsb2JhbE9iamVjdCgpLT5vYmplY3RQcm90b3R5cGUoKTsKIAotICAgIEpT
R2xvYmFsT2JqZWN0KiB0aGlzR2xvYmFsT2JqZWN0ID0gdGhpcy0+Z2xvYmFsT2JqZWN0KCk7Ci0g
ICAgaWYgKCFpc0hvc3RPckJ1aWx0aW5GdW5jdGlvbigpKSB7Ci0gICAgICAgIC8vIGh0dHBzOi8v
dGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLWdlbmVyYXRvci1mdW5jdGlvbi1kZWZpbml0aW9u
cy1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0ZWJvZHkKLSAgICAgICAgaWYgKGlzR2VuZXJhdG9y
V3JhcHBlclBhcnNlTW9kZShqc0V4ZWN1dGFibGUoKS0+cGFyc2VNb2RlKCkpKQotICAgICAgICAg
ICAgcmV0dXJuIHRoaXNHbG9iYWxPYmplY3QtPmdlbmVyYXRvclByb3RvdHlwZSgpOwotCi0gICAg
ICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLWFzeW5jZ2VuZXJhdG9y
LWRlZmluaXRpb25zLWV2YWx1YXRlYm9keQotICAgICAgICBpZiAoaXNBc3luY0dlbmVyYXRvcldy
YXBwZXJQYXJzZU1vZGUoanNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgpKSkKLSAgICAgICAgICAg
IHJldHVybiB0aGlzR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvclByb3RvdHlwZSgpOwotICAg
IH0KLSAgICByZXR1cm4gdGhpc0dsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90eXBlKCk7CisgICAg
SlNHbG9iYWxPYmplY3QqIHNjb3BlR2xvYmFsT2JqZWN0ID0gdGhpcy0+c2NvcGUoKS0+Z2xvYmFs
T2JqZWN0KCk7CisgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtZ2Vu
ZXJhdG9yLWZ1bmN0aW9uLWRlZmluaXRpb25zLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRlYm9k
eQorICAgIGlmIChpc0dlbmVyYXRvcldyYXBwZXJQYXJzZU1vZGUoanNFeGVjdXRhYmxlKCktPnBh
cnNlTW9kZSgpKSkKKyAgICAgICAgcmV0dXJuIHNjb3BlR2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JQ
cm90b3R5cGUoKTsKKyAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1h
c3luY2dlbmVyYXRvci1kZWZpbml0aW9ucy1ldmFsdWF0ZWJvZHkKKyAgICBpZiAoaXNBc3luY0dl
bmVyYXRvcldyYXBwZXJQYXJzZU1vZGUoanNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgpKSkKKyAg
ICAgICAgcmV0dXJuIHNjb3BlR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvclByb3RvdHlwZSgp
OworICAgIHJldHVybiBzY29wZUdsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90eXBlKCk7CiB9CiAK
IEZ1bmN0aW9uUmFyZURhdGEqIEpTRnVuY3Rpb246OmFsbG9jYXRlQW5kSW5pdGlhbGl6ZVJhcmVE
YXRhKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIHNpemVfdCBpbmxpbmVDYXBhY2l0eSkK
QEAgLTQ2MCwxNiArNDU5LDE3IEBAIGJvb2wgSlNGdW5jdGlvbjo6Z2V0T3duUHJvcGVydHlTbG90
KEpTT2IKICAgICAgICAgdW5zaWduZWQgYXR0cmlidXRlczsKICAgICAgICAgUHJvcGVydHlPZmZz
ZXQgb2Zmc2V0ID0gdGhpc09iamVjdC0+Z2V0RGlyZWN0T2Zmc2V0KHZtLCBwcm9wZXJ0eU5hbWUs
IGF0dHJpYnV0ZXMpOwogICAgICAgICBpZiAoIWlzVmFsaWRPZmZzZXQob2Zmc2V0KSkgeworICAg
ICAgICAgICAgSlNHbG9iYWxPYmplY3QqIHNjb3BlR2xvYmFsT2JqZWN0ID0gdGhpc09iamVjdC0+
c2NvcGUoKS0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgICAgICAgICBKU09iamVjdCogcHJvdG90eXBl
ID0gbnVsbHB0cjsKICAgICAgICAgICAgIGlmIChpc0dlbmVyYXRvcldyYXBwZXJQYXJzZU1vZGUo
dGhpc09iamVjdC0+anNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgpKSkgewogICAgICAgICAgICAg
ICAgIC8vIFVubGlrZSBmdW5jdGlvbiBpbnN0YW5jZXMsIHRoZSBvYmplY3QgdGhhdCBpcyB0aGUg
dmFsdWUgb2YgdGhlIGEgR2VuZXJhdG9yRnVuY3Rpb24ncyBwcm90b3R5cGUKICAgICAgICAgICAg
ICAgICAvLyBwcm9wZXJ0eSBkb2VzIG5vdCBoYXZlIGEgY29uc3RydWN0b3IgcHJvcGVydHkgd2hv
c2UgdmFsdWUgaXMgdGhlIEdlbmVyYXRvckZ1bmN0aW9uIGluc3RhbmNlLgogICAgICAgICAgICAg
ICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLWdlbmVyYXRvcmZ1bmN0
aW9uLWluc3RhbmNlcy1wcm90b3R5cGUKLSAgICAgICAgICAgICAgICBwcm90b3R5cGUgPSBjb25z
dHJ1Y3RFbXB0eU9iamVjdChnbG9iYWxPYmplY3QsIHRoaXNPYmplY3QtPmdsb2JhbE9iamVjdCgp
LT5nZW5lcmF0b3JQcm90b3R5cGUoKSk7CisgICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29u
c3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCBzY29wZUdsb2JhbE9iamVjdC0+Z2VuZXJh
dG9yUHJvdG90eXBlKCkpOwogICAgICAgICAgICAgfSBlbHNlIGlmIChpc0FzeW5jR2VuZXJhdG9y
V3JhcHBlclBhcnNlTW9kZSh0aGlzT2JqZWN0LT5qc0V4ZWN1dGFibGUoKS0+cGFyc2VNb2RlKCkp
KQotICAgICAgICAgICAgICAgIHByb3RvdHlwZSA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KGdsb2Jh
bE9iamVjdCwgdGhpc09iamVjdC0+Z2xvYmFsT2JqZWN0KCktPmFzeW5jR2VuZXJhdG9yUHJvdG90
eXBlKCkpOworICAgICAgICAgICAgICAgIHByb3RvdHlwZSA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0
KGdsb2JhbE9iamVjdCwgc2NvcGVHbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yUHJvdG90eXBl
KCkpOwogICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29u
c3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0KTsKKyAgICAgICAgICAgICAgICBwcm90b3R5
cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChnbG9iYWxPYmplY3QsIHNjb3BlR2xvYmFsT2JqZWN0
LT5vYmplY3RQcm90b3R5cGUoKSk7CiAgICAgICAgICAgICAgICAgcHJvdG90eXBlLT5wdXREaXJl
Y3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmNvbnN0cnVjdG9yLCB0aGlzT2JqZWN0LCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAgICAgICAgICAg
ICB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVk
QXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGlu
ZXMuaAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHZW5lcmljVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcklubGluZXMuaAkod29ya2luZyBjb3B5
KQpAQCAtMjExLDEwICsyMTEsMTEgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RHZQogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBJbnRlcm5hbEZ1bmN0aW9uKiBmdW5j
dGlvbiA9IGpzQ2FzdDxJbnRlcm5hbEZ1bmN0aW9uKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsK
LSAgICBTdHJ1Y3R1cmUqIHBhcmVudFN0cnVjdHVyZSA9IGZ1bmN0aW9uLT5nbG9iYWxPYmplY3Qo
KS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSk7
Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKSwgcGFyZW50U3RydWN0dXJlKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICBKU09iamVjdCogbmV3VGFyZ2V0ID0g
YXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUgPSBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8gZ2xvYmFs
T2JqZWN0LT50eXBlZEFycmF5U3RydWN0dXJlKFZpZXdDbGFzczo6VHlwZWRBcnJheVN0b3JhZ2VU
eXBlKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJl
KGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQp
LT50eXBlZEFycmF5U3RydWN0dXJlKFZpZXdDbGFzczo6VHlwZWRBcnJheVN0b3JhZ2VUeXBlKSk7
CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIHNpemVfdCBhcmdD
b3VudCA9IGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpOwogCkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaAkocmV2
aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxP
YmplY3RJbmxpbmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw3ICsxMDEsOSBAQCBBTFdBWVNf
SU5MSU5FIGJvb2wgSlNHbG9iYWxPYmplY3Q6OmlzU2V0CiAKIEFMV0FZU19JTkxJTkUgU3RydWN0
dXJlKiBKU0dsb2JhbE9iamVjdDo6YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdB
bGxvY2F0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEluZGV4aW5nVHlwZSBpbmRl
eGluZ1R5cGUsIEpTVmFsdWUgbmV3VGFyZ2V0KSBjb25zdAogewotICAgIHJldHVybiBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9i
amVjdC0+YXJyYXlDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQsIGFycmF5U3RydWN0dXJlRm9ySW5k
ZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihpbmRleGluZ1R5cGUpKTsKKyAgICByZXR1cm4gIW5l
d1RhcmdldCB8fCBuZXdUYXJnZXQgPT0gZ2xvYmFsT2JqZWN0LT5hcnJheUNvbnN0cnVjdG9yKCkK
KyAgICAgICAgPyBnbG9iYWxPYmplY3QtPmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVy
aW5nQWxsb2NhdGlvbihpbmRleGluZ1R5cGUpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBhc09iamVjdChuZXdUYXJnZXQp
LCBnZXRGdW5jdGlvblJlYWxtKGdsb2JhbE9iamVjdC0+dm0oKSwgYXNPYmplY3QobmV3VGFyZ2V0
KSktPmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihpbmRleGlu
Z1R5cGUpKTsKIH0KIAogaW5saW5lIEpTRnVuY3Rpb24qIEpTR2xvYmFsT2JqZWN0Ojp0aHJvd1R5
cGVFcnJvckZ1bmN0aW9uKCkgY29uc3QgeyByZXR1cm4ganNDYXN0PEpTRnVuY3Rpb24qPihsaW5r
VGltZUNvbnN0YW50KExpbmtUaW1lQ29uc3RhbnQ6OnRocm93VHlwZUVycm9yRnVuY3Rpb24pKTsg
fQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTWFwQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw4ICs2NywxMSBAQCBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xv
YmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZt
KTsKIAotICAgIFN0cnVjdHVyZSogbWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOwot
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworICAgIEpT
T2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAg
ICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IG5ld1RhcmdldCA9PSBjYWxsRnJhbWUtPmpzQ2Fs
bGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPm1hcFN0cnVjdHVyZSgpCisgICAgICAgIDog
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBu
ZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPm1hcFN0cnVjdHVyZSgp
KTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgSlNWYWx1ZSBp
dGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgaWYgKGl0ZXJhYmxlLmlzVW5k
ZWZpbmVkT3JOdWxsKCkpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRp
dmVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMjc0KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTU1LDkgKzU1LDE0IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgTmF0aXZlRXJyb3IKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVz
c2FnZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nh
c3Q8TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmVycm9y
U3RydWN0dXJlKHZtKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CisKKyAgICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IG5ld1Rhcmdl
dCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPmVycm9y
U3RydWN0dXJlKGVycm9yVHlwZSkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFs
bSh2bSwgbmV3VGFyZ2V0KS0+ZXJyb3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKSk7CisgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBBU1NFUlQoZXJyb3JTdHJ1Y3R1cmUpOwor
CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0
YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxw
dHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpKTsKIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYw
Mjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Miw4ICs5MiwxMiBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogICAgIGRvdWJsZSBuID0gY2FsbEZyYW1lLT5hcmd1bWVudENvdW50KCkgPyBjYWxs
RnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApLnRvTnVtYmVyKGdsb2JhbE9iamVjdCkgOiAwOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCkpOwotICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworCisgICAgSlNPYmpl
Y3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQor
ICAgICAgICA/IGdsb2JhbE9iamVjdC0+bnVtYmVyT2JqZWN0U3RydWN0dXJlKCkKKyAgICAgICAg
OiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0KS0+bnVtYmVyT2JqZWN0
U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAKICAg
ICBOdW1iZXJPYmplY3QqIG9iamVjdCA9IE51bWJlck9iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1
cmUpOwogICAgIG9iamVjdC0+c2V0SW50ZXJuYWxWYWx1ZSh2bSwganNOdW1iZXIobikpOwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjcsNyArMTI3LDgg
QEAgc3RhdGljIEFMV0FZU19JTkxJTkUgSlNPYmplY3QqIGNvbnN0cnVjdAogICAgIC8vIDEuIElm
IE5ld1RhcmdldCBpcyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgdGhlIGFjdGl2ZSBmdW5jdGlvbiwg
dGhlbgogICAgIGlmIChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IG9iamVjdENvbnN0cnVjdG9y
KSB7CiAgICAgICAgIC8vIGEuIFJldHVybiA/IE9yZGluYXJ5Q3JlYXRlRnJvbUNvbnN0cnVjdG9y
KE5ld1RhcmdldCwgIiVPYmplY3RQcm90b3R5cGUlIikuCi0gICAgICAgIFN0cnVjdHVyZSogb2Jq
ZWN0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBvYmplY3RDb25zdHJ1Y3RvciwgbmV3VGFyZ2V0LCBnbG9iYWxPYmplY3Qt
Pm9iamVjdFN0cnVjdHVyZUZvck9iamVjdENvbnN0cnVjdG9yKCkpOworICAgICAgICBTdHJ1Y3R1
cmUqIGJhc2VTdHJ1Y3R1cmUgPSBnZXRGdW5jdGlvblJlYWxtKHZtLCBhc09iamVjdChuZXdUYXJn
ZXQpKS0+b2JqZWN0U3RydWN0dXJlRm9yT2JqZWN0Q29uc3RydWN0b3IoKTsKKyAgICAgICAgU3Ry
dWN0dXJlKiBvYmplY3RTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGFzT2JqZWN0KG5ld1RhcmdldCksIGJhc2VTdHJ1Y3R1
cmUpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKICAgICAg
ICAgcmV0dXJuIGNvbnN0cnVjdEVtcHR5T2JqZWN0KHZtLCBvYmplY3RTdHJ1Y3R1cmUpOwogICAg
IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
b25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTcyLDEw
ICsxNzIsOSBAQCBib29sIHNldFJlZ0V4cENvbnN0cnVjdG9yTXVsdGlsaW5lKEpTR2xvCiAKIGlu
bGluZSBTdHJ1Y3R1cmUqIGdldFJlZ0V4cFN0cnVjdHVyZShKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCkKIHsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9
IGdsb2JhbE9iamVjdC0+cmVnRXhwU3RydWN0dXJlKCk7Ci0gICAgaWYgKG5ld1RhcmdldCAhPSBq
c1VuZGVmaW5lZCgpKQotICAgICAgICBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+cmVnRXhwQ29u
c3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBzdHJ1Y3R1cmUpOwotICAgIHJldHVybiBzdHJ1Y3R1cmU7
CisgICAgcmV0dXJuICFuZXdUYXJnZXQgfHwgbmV3VGFyZ2V0ID09IGdsb2JhbE9iamVjdC0+cmVn
RXhwQ29uc3RydWN0b3IoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+cmVnRXhwU3RydWN0dXJl
KCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGFzT2JqZWN0KG5ld1RhcmdldCksIGdldEZ1bmN0aW9uUmVhbG0oZ2xvYmFs
T2JqZWN0LT52bSgpLCBhc09iamVjdChuZXdUYXJnZXQpKS0+cmVnRXhwU3RydWN0dXJlKCkpOwog
fQogCiBpbmxpbmUgT3B0aW9uU2V0PFlhcnI6OkZsYWdzPiB0b0ZsYWdzKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgZmxhZ3MpCkBAIC0yMjksNyArMjI4LDcgQEAgSlNPYmpl
Y3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdAogICAgIGJvb2wgY29uc3RydWN0QXNS
ZWdleHAgPSBpc1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0LCBwYXR0ZXJuQXJnKTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAotICAgIGlmIChuZXdUYXJnZXQuaXNV
bmRlZmluZWQoKSAmJiBjb25zdHJ1Y3RBc1JlZ2V4cCAmJiBmbGFnc0FyZy5pc1VuZGVmaW5lZCgp
KSB7CisgICAgaWYgKCFuZXdUYXJnZXQgJiYgY29uc3RydWN0QXNSZWdleHAgJiYgZmxhZ3NBcmcu
aXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU1ZhbHVlIGNvbnN0cnVjdG9yID0gcGF0dGVybkFy
Zy5nZXQoZ2xvYmFsT2JqZWN0LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3Rvcik7CiAgICAg
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgICAgICBpZiAoY2Fs
bGVlID09IGNvbnN0cnVjdG9yKSB7CkBAIC0yNzQsNyArMjczLDcgQEAgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBlc1NwZWNSZWdFeAogewogICAgIEpTVmFsdWUgcGF0dGVybkFyZyA9IGNh
bGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1ZSBmbGFnc0FyZyA9IGNhbGxGcmFtZS0+
YXJndW1lbnQoMSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZWdFeHBDcmVhdGUoZ2xv
YmFsT2JqZWN0LCBqc1VuZGVmaW5lZCgpLCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOworICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVjdCwgSlNWYWx1ZSgp
LCBwYXR0ZXJuQXJnLCBmbGFnc0FyZykpOwogfQogCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGVzU3BlY0lzUmVnRXhwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFt
ZSogY2FsbEZyYW1lKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhw
Q29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC01
Nyw3ICs1Nyw3IEBAIHByaXZhdGU6CiB9OwogU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hB
UkFCTEUoUmVnRXhwQ29uc3RydWN0b3IsIEludGVybmFsRnVuY3Rpb24pOwogCi1KU09iamVjdCog
Y29uc3RydWN0UmVnRXhwKEpTR2xvYmFsT2JqZWN0KiwgY29uc3QgQXJnTGlzdCYsIEpTT2JqZWN0
KiBjYWxsZWUgPSBudWxscHRyLCBKU1ZhbHVlIG5ld1RhcmdldCA9IGpzVW5kZWZpbmVkKCkpOwor
SlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCosIGNvbnN0IEFyZ0xpc3Qm
LCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdUYXJnZXQgPSBKU1ZhbHVl
KCkpOwogCiBBTFdBWVNfSU5MSU5FIGJvb2wgaXNSZWdFeHAoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQogewpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMjc0
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC02Nyw4ICs2NywxMSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1
dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogc2V0
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCks
IGdsb2JhbE9iamVjdC0+c2V0U3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09i
amVjdChjYWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVy
ZSA9IG5ld1RhcmdldCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxP
YmplY3QtPnNldFN0cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVh
bG0odm0sIG5ld1RhcmdldCktPnNldFN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCB7IH0pOwogCiAgICAgSlNWYWx1ZSBpdGVyYWJsZSA9IGNhbGxGcmFtZS0+YXJn
dW1lbnQoMCk7CiAgICAgaWYgKGl0ZXJhYmxlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIApJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDQsOCArMTQ0LDExIEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwg
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1
cmUoKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7
CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0
KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+
anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+c3RyaW5nT2JqZWN0U3RydWN0dXJl
KCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0KS0+
c3RyaW5nT2JqZWN0U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IHsgfSk7CiAKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpKQogICAgICAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKFN0cmluZ09iamVjdDo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUp
KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01h
cENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUs
OCArNjUsMTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAg
IFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBJbnRl
cm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxG
cmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53
ZWFrTWFwU3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJh
bWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHdlYWtNYXBTdHJ1Y3R1cmUgPSBuZXdU
YXJnZXQgPT0gY2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT53
ZWFrTWFwU3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2
bSwgbmV3VGFyZ2V0KS0+d2Vha01hcFN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCB7IH0pOworCiAgICAgSlNXZWFrTWFwKiB3ZWFrTWFwID0gSlNXZWFrTWFwOjpj
cmVhdGUodm0sIHdlYWtNYXBTdHJ1Y3R1cmUpOwogICAgIEpTVmFsdWUgaXRlcmFibGUgPSBjYWxs
RnJhbWUtPmFyZ3VtZW50KDApOwogICAgIGlmIChpdGVyYWJsZS5pc1VuZGVmaW5lZE9yTnVsbCgp
KQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC02OCw5ICs2OCwxMyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzT2JqZWN0KCkp
CiAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJG
aXJzdCBhcmd1bWVudCB0byBXZWFrUmVmIHNob3VsZCBiZSBhbiBvYmplY3QiX3MpOwogCi0gICAg
U3RydWN0dXJlKiBXZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0cnVj
dHVyZSgpKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKLSAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYWtP
YmplY3RSZWY6OmNyZWF0ZSh2bSwgV2Vha09iamVjdFJlZlN0cnVjdHVyZSwgY2FsbEZyYW1lLT51
bmNoZWNrZWRBcmd1bWVudCgwKS5nZXRPYmplY3QoKSkpKTsKKyAgICBKU09iamVjdCogbmV3VGFy
Z2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiB3
ZWFrT2JqZWN0UmVmU3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUo
KQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+d2Vha09iamVjdFJlZlN0cnVjdHVyZSgpCisgICAg
ICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPndlYWtPYmpl
Y3RSZWZTdHJ1Y3R1cmUoKSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsK
KworICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEpTV2Vha09i
amVjdFJlZjo6Y3JlYXRlKHZtLCB3ZWFrT2JqZWN0UmVmU3RydWN0dXJlLCBjYWxsRnJhbWUtPnVu
Y2hlY2tlZEFyZ3VtZW50KDApLmdldE9iamVjdCgpKSkpOwogfQogCiB9CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtT
ZXRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1LDggKzY1LDEyIEBAIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxP
YmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwog
Ci0gICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha1NldFN0cnVjdHVyZSgp
KTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAg
ICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7
CisgICAgU3RydWN0dXJlKiB3ZWFrU2V0U3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFt
ZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+d2Vha1NldFN0cnVjdHVyZSgp
CisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPndl
YWtTZXRTdHJ1Y3R1cmUoKSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsK
KwogICAgIEpTV2Vha1NldCogd2Vha1NldCA9IEpTV2Vha1NldDo6Y3JlYXRlKHZtLCB3ZWFrU2V0
U3RydWN0dXJlKTsKICAgICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgw
KTsKICAgICBpZiAoaXRlcmFibGUuaXNVbmRlZmluZWRPck51bGwoKSkKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDksOCArNDksMTMgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGF1dG8mIHZtID0gZ2xvYmFsT2JqZWN0LT52
bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1Zh
bHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIGF1dG8qIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxP
YmplY3QtPndlYkFzc2VtYmx5Q29tcGlsZUVycm9yU3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworCisgICAgSlNPYmplY3QqIG5l
d1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVy
ZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAg
ICA/IGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlDb21waWxlRXJyb3JTdHJ1Y3R1cmUoKQorICAg
ICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT53ZWJBc3Nl
bWJseUNvbXBpbGVFcnJvclN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCB7IH0pOworCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNv
ZGUoSlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcjo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgdm0sIHN0
cnVjdHVyZSwgbWVzc2FnZSkpKTsKIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0
b3IuY3BwCShyZXZpc2lvbiAyNjAyNzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03
NCw4ICs3NCwxMSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAg
ICAgSlNPYmplY3QqIGltcG9ydE9iamVjdCA9IGltcG9ydEFyZ3VtZW50LmdldE9iamVjdCgpOwog
ICAgIGlmICghaW1wb3J0QXJndW1lbnQuaXNVbmRlZmluZWQoKSAmJiAhaW1wb3J0T2JqZWN0KQog
ICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVj
dCwgc2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJzZWNvbmQgYXJndW1lbnQg
dG8gV2ViQXNzZW1ibHkuSW5zdGFuY2UgbXVzdCBiZSB1bmRlZmluZWQgb3IgYW4gT2JqZWN0Il9z
LCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIHJ1bnRpbWVUeXBlRm9yVmFsdWUodm0sIGltcG9ydEFy
Z3VtZW50KSkpKTsKLSAgICAKLSAgICBTdHJ1Y3R1cmUqIGluc3RhbmNlU3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+
d2ViQXNzZW1ibHlJbnN0YW5jZVN0cnVjdHVyZSgpKTsKKworICAgIEpTT2JqZWN0KiBuZXdUYXJn
ZXQgPSBhc09iamVjdChjYWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGlu
c3RhbmNlU3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAg
ICAgICA/IGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlJbnN0YW5jZVN0cnVjdHVyZSgpCisgICAg
ICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2Jq
ZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPndlYkFzc2Vt
Ymx5SW5zdGFuY2VTdHJ1Y3R1cmUoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
eyB9KTsKIAogICAgIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogaW5zdGFuY2UgPSBKU1dlYkFzc2Vt
Ymx5SW5zdGFuY2U6OnRyeUNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBKU1dlYkFzc2VtYmx5SW5z
dGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkoKSwgbW9kdWxlLCBpbXBvcnRPYmplY3QsIGlu
c3RhbmNlU3RydWN0dXJlLCBSZWY8V2FzbTo6TW9kdWxlPihtb2R1bGUtPm1vZHVsZSgpKSwgV2Fz
bTo6Q3JlYXRpb25Nb2RlOjpGcm9tSlMpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1
Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDI3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00OSw4ICs0OSwxMyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
CiAgICAgYXV0byYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFtZS0+
YXJndW1lbnQoMCk7Ci0gICAgYXV0byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlMaW5rRXJy
b3JTdHJ1Y3R1cmUoKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CisKKyAgICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1l
LT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0g
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJs
eUxpbmtFcnJvclN0cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVh
bG0odm0sIG5ld1RhcmdldCktPndlYkFzc2VtYmx5TGlua0Vycm9yU3RydWN0dXJlKCkpOworICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CisKICAgICBSRUxFQVNFX0FORF9SRVRV
Uk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShKU1dlYkFzc2VtYmx5TGlua0Vycm9yOjpjcmVhdGUo
Z2xvYmFsT2JqZWN0LCB2bSwgc3RydWN0dXJlLCBtZXNzYWdlKSkpOwogfQogCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eU1vZHVsZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTE4MSw3ICsxODEsMTAgQEAgSlNXZWJBc3NlbWJseU1vZHVsZSogV2ViQXNz
ZW1ibHlNb2R1bGVDbwogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRv
IHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBhdXRvKiBzdHJ1Y3R1cmUg
PSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2Jq
ZWN0LT53ZWJBc3NlbWJseU1vZHVsZVN0cnVjdHVyZSgpKTsKKyAgICBKU09iamVjdCogbmV3VGFy
Z2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8g
Z2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseU1vZHVsZVN0cnVjdHVyZSgpCisgICAgICAgIDogSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdU
YXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPndlYkFzc2VtYmx5TW9kdWxl
U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwog
CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1dlYkFzc2VtYmx5TW9kdWxlOjpjcmVh
dGVTdHViKHZtLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgV2FzbTo6TW9kdWxlOjp2YWxpZGF0
ZVN5bmMoJnZtLndhc21Db250ZXh0LCBXVEZNb3ZlKGJ1ZmZlcikpKSk7CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwMjc0KQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUxLDggKzUxLDEzIEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJh
bWUtPmFyZ3VtZW50KDApOwogICAgIFN0cmluZyBtZXNzYWdlU3RyaW5nID0gbWVzc2FnZS5pc1Vu
ZGVmaW5lZCgpID8gU3RyaW5nKCkgOiBtZXNzYWdlLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0gICAg
YXV0byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlSdW50aW1lRXJyb3JTdHJ1Y3R1cmUoKSk7
Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisKKyAg
ICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7
CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseVJ1bnRpbWVFcnJvclN0
cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1Rh
cmdldCktPndlYkFzc2VtYmx5UnVudGltZUVycm9yU3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CisKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEpT
V2ViQXNzZW1ibHlSdW50aW1lRXJyb3I6OmNyZWF0ZShnbG9iYWxPYmplY3QsIHZtLCBzdHJ1Y3R1
cmUsIFdURk1vdmUobWVzc2FnZVN0cmluZykpKTsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNp
b24gMjYwMjc0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMjAtMDQtMTcgIEFsZXhleSBTaHZheWthICA8c2h2YWlrYWxlc2hA
Z21haWwuY29tPgorCisgICAgICAgIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlIHNob3VsZCB1c2UgbmV3VGFyZ2V0J3MgZ2xvYmFsT2JqZWN0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI1OTkKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBY2NvdW50cyBmb3IgSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoKSBzaWduYXR1cmUgY2hhbmdlIGFuZAor
ICAgICAgICBhZGRzIGdldEZ1bmN0aW9uUmVhbG0oKSBjYWxscyB0byBoYW5kbGUgSlNCb3VuZEZ1
bmN0aW9uIG9yIFByb3h5T2JqZWN0IGZyb20KKyAgICAgICAgYW5vdGhlciByZWFsbSBhcyBOZXdU
YXJnZXQgdmFsdWUuCisKKyAgICAgICAgVGVzdDogd2ViLXBsYXRmb3JtLXRlc3RzL1dlYklETC9l
Y21hc2NyaXB0LWJpbmRpbmcvY29uc3RydWN0b3JzLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdz
L2pzL0pTRE9NV3JhcHBlckNhY2hlLmg6CisgICAgICAgIChXZWJDb3JlOjpzZXRTdWJjbGFzc1N0
cnVjdHVyZUlmTmVlZGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxFbGVtZW50Q3Vz
dG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN0cnVjdEpTSFRNTEVsZW1lbnQpOgorCiAy
MDIwLTA0LTE3ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHJldmVydGluZyByMjYwMjQ1LgpJbmRleDogU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5oCShyZXZpc2lvbiAyNjAyNzQpCisrKyBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yMTMsOSArMjEzLDkgQEAgdGVtcGxhdGU8dHlwZW5hbWUgRE9NQ2xhc3M+IGlubGlu
ZSB2b2lkIAogICAgIEpTQzo6Vk0mIHZtID0gbGV4aWNhbEdsb2JhbE9iamVjdC0+dm0oKTsKICAg
ICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBhdXRvKiBuZXdU
YXJnZXRHbG9iYWxPYmplY3QgPSBKU0M6OmpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KG5ld1Rh
cmdldC0+Z2xvYmFsT2JqZWN0KHZtKSk7Ci0gICAgYXV0byogYmFzZVN0cnVjdHVyZSA9IGdldERP
TVN0cnVjdHVyZTxXcmFwcGVyQ2xhc3M+KHZtLCAqbmV3VGFyZ2V0R2xvYmFsT2JqZWN0KTsKLSAg
ICBhdXRvKiBzdWJjbGFzc1N0cnVjdHVyZSA9IEpTQzo6SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRl
U3ViY2xhc3NTdHJ1Y3R1cmUobGV4aWNhbEdsb2JhbE9iamVjdCwgY29uc3RydWN0b3IsIG5ld1Rh
cmdldCwgYmFzZVN0cnVjdHVyZSk7CisgICAgYXV0byogbmV3VGFyZ2V0R2xvYmFsT2JqZWN0ID0g
SlNDOjpnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpOworICAgIGF1dG8qIGJhc2VTdHJ1
Y3R1cmUgPSBnZXRET01TdHJ1Y3R1cmU8V3JhcHBlckNsYXNzPih2bSwgKkpTQzo6anNDYXN0PEpT
RE9NR2xvYmFsT2JqZWN0Kj4obmV3VGFyZ2V0R2xvYmFsT2JqZWN0KSk7CisgICAgYXV0byogc3Vi
Y2xhc3NTdHJ1Y3R1cmUgPSBKU0M6OkludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGxleGljYWxHbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgYmFzZVN0cnVjdHVyZSk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBqc09iamVjdC0+c2V0
U3RydWN0dXJlKHZtLCBzdWJjbGFzc1N0cnVjdHVyZSk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0hUTUxFbGVtZW50Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxFbGVtZW50Q3VzdG9tLmNwcAkocmV2aXNpb24g
MjYwMjc0KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRWxlbWVudEN1c3Rv
bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU0LDExICs1NCwxMCBAQCBFbmNvZGVkSlNWYWx1ZSBj
b25zdHJ1Y3RKU0hUTUxFbGVtZW50KEpTCiAgICAgICAgIHJldHVybiB0aHJvd0NvbnN0cnVjdG9y
U2NyaXB0RXhlY3V0aW9uQ29udGV4dFVuYXZhaWxhYmxlRXJyb3IoKmxleGljYWxHbG9iYWxPYmpl
Y3QsIHNjb3BlLCAiSFRNTEVsZW1lbnQiKTsKICAgICBBU1NFUlQoY29udGV4dC0+aXNEb2N1bWVu
dCgpKTsKIAotICAgIEpTVmFsdWUgbmV3VGFyZ2V0VmFsdWUgPSBjYWxsRnJhbWUudGhpc1ZhbHVl
KCk7Ci0gICAgYXV0byogbmV3VGFyZ2V0ID0gbmV3VGFyZ2V0VmFsdWUuZ2V0T2JqZWN0KCk7Ci0g
ICAgYXV0byogbmV3VGFyZ2V0R2xvYmFsT2JqZWN0ID0ganNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0
Kj4obmV3VGFyZ2V0LT5nbG9iYWxPYmplY3Qodm0pKTsKKyAgICBhdXRvKiBuZXdUYXJnZXQgPSBj
YWxsRnJhbWUubmV3VGFyZ2V0KCkuZ2V0T2JqZWN0KCk7CisgICAgYXV0byogbmV3VGFyZ2V0R2xv
YmFsT2JqZWN0ID0ganNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oZ2V0RnVuY3Rpb25SZWFsbSh2
bSwgbmV3VGFyZ2V0KSk7CiAgICAgSlNWYWx1ZSBodG1sRWxlbWVudENvbnN0cnVjdG9yVmFsdWUg
PSBKU0hUTUxFbGVtZW50OjpnZXRDb25zdHJ1Y3Rvcih2bSwgbmV3VGFyZ2V0R2xvYmFsT2JqZWN0
KTsKLSAgICBpZiAobmV3VGFyZ2V0VmFsdWUgPT0gaHRtbEVsZW1lbnRDb25zdHJ1Y3RvclZhbHVl
KQorICAgIGlmIChuZXdUYXJnZXQgPT0gaHRtbEVsZW1lbnRDb25zdHJ1Y3RvclZhbHVlKQogICAg
ICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihsZXhpY2FsR2xvYmFsT2JqZWN0LCBzY29wZSwg
Im5ldy50YXJnZXQgaXMgbm90IGEgdmFsaWQgY3VzdG9tIGVsZW1lbnQgY29uc3RydWN0b3IiX3Mp
OwogCiAgICAgYXV0byYgZG9jdW1lbnQgPSBkb3duY2FzdDxEb2N1bWVudD4oKmNvbnRleHQpOwpA
QCAtNzcsOCArNzYsOCBAQCBFbmNvZGVkSlNWYWx1ZSBjb25zdHJ1Y3RKU0hUTUxFbGVtZW50KEpT
CiAKICAgICBpZiAoIWVsZW1lbnRJbnRlcmZhY2UtPmlzVXBncmFkaW5nRWxlbWVudCgpKSB7CiAg
ICAgICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGdldERPTVN0cnVjdHVyZTxKU0hUTUxF
bGVtZW50Pih2bSwgKm5ld1RhcmdldEdsb2JhbE9iamVjdCk7Ci0gICAgICAgIGF1dG8qIG5ld0Vs
ZW1lbnRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShsZXhpY2FsR2xvYmFsT2JqZWN0LCBqc0NvbnN0cnVjdG9yLCBuZXdUYXJnZXRWYWx1ZSwgYmFz
ZVN0cnVjdHVyZSk7Ci0gICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRK
U1ZhbHVlKCkpOworICAgICAgICBhdXRvKiBuZXdFbGVtZW50U3RydWN0dXJlID0gSW50ZXJuYWxG
dW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUobGV4aWNhbEdsb2JhbE9iamVjdCwgbmV3
VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKKyAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgeyB9KTsKIAogICAgICAgICBSZWY8SFRNTEVsZW1lbnQ+IGVsZW1lbnQgPSBIVE1MRWxlbWVu
dDo6Y3JlYXRlKGVsZW1lbnRJbnRlcmZhY2UtPm5hbWUoKSwgZG9jdW1lbnQpOwogICAgICAgICBl
bGVtZW50LT5zZXRJc0RlZmluZWRDdXN0b21FbGVtZW50KCplbGVtZW50SW50ZXJmYWNlKTsKSW5k
ZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwkocmV2aXNpb24gMjYwMjc0KQorKysgTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDEyIEBACisyMDIwLTA0LTE3ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNv
bT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBz
aG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvV2ViSURML2Vj
bWFzY3JpcHQtYmluZGluZy9jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorCiAyMDIwLTA0LTE3
ICBKYXNvbiBMYXdyZW5jZSAgPGxhd3JlbmNlLmpAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JF
U1NJT046IChyMjYwMjQzKSBbIE1hYyBhbmQgaU9TIF0gaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3Nzb20tdmlldy9NZWRpYVF1ZXJ5TGlzdC1hZGRMaXN0ZW5lci1oYW5kbGVF
dmVudC5odG1sIGZhaWxzLgpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9XZWJJREwvZWNtYXNjcmlwdC1iaW5kaW5nL2NvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9XZWJJREwvZWNtYXNjcmlwdC1iaW5kaW5nL2NvbnN0cnVjdG9ycy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDI2MDI3NCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvV2ViSURML2VjbWFzY3JpcHQtYmluZGluZy9jb25zdHJ1Y3RvcnMtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMCw4ICsxMCw4IEBAIFBBU1MgU3ViY2xhc3MgY29u
c3RydWN0b3IgaW4gcGFyZW50IHdpbmQKIFBBU1MgU3ViY2xhc3MgY29uc3RydWN0b3IgaW4gY2hp
bGQgd2luZG93IHdpdGggcGFyZW50IGNsYXNzIGluIHBhcmVudCB3aW5kb3cgCiBQQVNTIENvbnN0
cnVjdG9yIGluIGNoaWxkIHdpbmRvdyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBwYXJlbnQgd2lu
ZG93IAogUEFTUyBDb25zdHJ1Y3RvciBpbiBwYXJlbnQgd2luZG93IHdpdGggYmFkIE5ld1Rhcmdl
dCBmcm9tIGNoaWxkIHdpbmRvdyAKLUZBSUwgQ29uc3RydWN0b3IgaW4gcGFyZW50IHdpbmRvdyB3
aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBwYXJlbnQgd2luZG93IHRoYXQncyBhIGJvdW5kIGNoaWxk
IHdpbmRvdyBmdW5jdGlvbiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCBvYmplY3QgIltvYmplY3Qg
RE9NUGFyc2VyUHJvdG90eXBlXSIgYnV0IGdvdCBvYmplY3QgIltvYmplY3QgRE9NUGFyc2VyUHJv
dG90eXBlXSIKLUZBSUwgQ29uc3RydWN0b3IgaW4gY2hpbGQgd2luZG93IHdpdGggYmFkIE5ld1Rh
cmdldCBmcm9tIGNoaWxkIHdpbmRvdyB0aGF0J3MgYSBib3VuZCBwYXJlbnQgd2luZG93IGZ1bmN0
aW9uIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIG9iamVjdCAiW29iamVjdCBET01QYXJzZXJQcm90
b3R5cGVdIiBidXQgZ290IG9iamVjdCAiW29iamVjdCBET01QYXJzZXJQcm90b3R5cGVdIgotRkFJ
TCBDb25zdHJ1Y3RvciBpbiBwYXJlbnQgd2luZG93IHdpdGggYmFkIE5ld1RhcmdldCBmcm9tIHBh
cmVudCB3aW5kb3cgdGhhdCdzIGEgcHJveHkgZm9yIGEgY2hpbGQgd2luZG93IGZ1bmN0aW9uIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIG9iamVjdCAiW29iamVjdCBET01QYXJzZXJQcm90b3R5cGVd
IiBidXQgZ290IG9iamVjdCAiW29iamVjdCBET01QYXJzZXJQcm90b3R5cGVdIgotRkFJTCBDb25z
dHJ1Y3RvciBpbiBjaGlsZCB3aW5kb3cgd2l0aCBiYWQgTmV3VGFyZ2V0IGZyb20gY2hpbGQgd2lu
ZG93IHRoYXQncyBhIHByb3h5IGZvciBhIHBhcmVudCB3aW5kb3cgZnVuY3Rpb24gYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgb2JqZWN0ICJbb2JqZWN0IERPTVBhcnNlclByb3RvdHlwZV0iIGJ1dCBn
b3Qgb2JqZWN0ICJbb2JqZWN0IERPTVBhcnNlclByb3RvdHlwZV0iCitQQVNTIENvbnN0cnVjdG9y
IGluIHBhcmVudCB3aW5kb3cgd2l0aCBiYWQgTmV3VGFyZ2V0IGZyb20gcGFyZW50IHdpbmRvdyB0
aGF0J3MgYSBib3VuZCBjaGlsZCB3aW5kb3cgZnVuY3Rpb24gCitQQVNTIENvbnN0cnVjdG9yIGlu
IGNoaWxkIHdpbmRvdyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBjaGlsZCB3aW5kb3cgdGhhdCdz
IGEgYm91bmQgcGFyZW50IHdpbmRvdyBmdW5jdGlvbiAKK1BBU1MgQ29uc3RydWN0b3IgaW4gcGFy
ZW50IHdpbmRvdyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBwYXJlbnQgd2luZG93IHRoYXQncyBh
IHByb3h5IGZvciBhIGNoaWxkIHdpbmRvdyBmdW5jdGlvbiAKK1BBU1MgQ29uc3RydWN0b3IgaW4g
Y2hpbGQgd2luZG93IHdpdGggYmFkIE5ld1RhcmdldCBmcm9tIGNoaWxkIHdpbmRvdyB0aGF0J3Mg
YSBwcm94eSBmb3IgYSBwYXJlbnQgd2luZG93IGZ1bmN0aW9uIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397617</attachid>
            <date>2020-04-26 05:09:32 -0700</date>
            <delta_ts>2020-04-26 14:30:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202599-20200426150930.patch</filename>
            <type>text/plain</type>
            <size>120577</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjA3MjMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDIwLTA0LTI2ICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgWXVzdWtlIFN1enVraS4KKworICAgICAgICAqIHN0cmVzcy9wcm9taXNlLXByb3Rv
LWZyb20tY3Rvci1yZWFsbS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi9leHBlY3RhdGlv
bnMueWFtbDogTWFyayA4OCB0ZXN0IGNhc2VzIGFzIHBhc3NpbmcuCisKIDIwMjAtMDQtMjUgIFl1
c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBIYW5kbGUg
QmlnSW50MzIgSU5UMzJfTUlOIHNoaWZ0IGFtb3VudApJbmRleDogSlNUZXN0cy9zdHJlc3MvcHJv
bWlzZS1wcm90by1mcm9tLWN0b3ItcmVhbG0uanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJl
c3MvcHJvbWlzZS1wcm90by1mcm9tLWN0b3ItcmVhbG0uanMJKG5vbmV4aXN0ZW50KQorKysgSlNU
ZXN0cy9zdHJlc3MvcHJvbWlzZS1wcm90by1mcm9tLWN0b3ItcmVhbG0uanMJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxNiBAQAorZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkg
eworICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
J2JhZCB2YWx1ZTogJyArIGFjdHVhbCk7Cit9CisKK2NvbnN0IHJlYWxtQSA9IGNyZWF0ZUdsb2Jh
bE9iamVjdCgpOworY29uc3QgcmVhbG1CID0gY3JlYXRlR2xvYmFsT2JqZWN0KCk7CisKK2NvbnN0
IGV4ZWN1dG9yID0gZnVuY3Rpb24oKSB7fTsKK2NvbnN0IG5ld1RhcmdldCA9IG5ldyByZWFsbUEu
RnVuY3Rpb24oKTsKK25ld1RhcmdldC5wcm90b3R5cGUgPSBudWxsOworCitmb3IgKGxldCBpID0g
MDsgaSA8IDFlNDsgKytpKSB7CisgICAgbGV0IHByb21pc2UgPSBSZWZsZWN0LmNvbnN0cnVjdChy
ZWFsbUIuUHJvbWlzZSwgW2V4ZWN1dG9yXSwgbmV3VGFyZ2V0KTsKKyAgICBzaG91bGRCZShPYmpl
Y3QuZ2V0UHJvdG90eXBlT2YocHJvbWlzZSksIHJlYWxtQS5Qcm9taXNlLnByb3RvdHlwZSk7Cit9
CkluZGV4OiBKU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
SlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCShyZXZpc2lvbiAyNjA3MjMpCisrKyBK
U1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHdvcmtpbmcgY29weSkKQEAgLTYzMywx
NSArNjMzLDYgQEAgdGVzdC9hbm5leEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3Itb2YvaQogdGVz
dC9hbm5leEIvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mdW5jdGlvbi9kZWZhdWx0LXBhcmFtZXRlcnMt
ZW11bGF0ZXMtdW5kZWZpbmVkLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCBTYW1lVmFsdWUowqt1bmRlZmluZWTCuywgwqtbb2JqZWN0IEZ1bmN0aW9uXcK7KSB0byBiZSB0
cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
dW5kZWZpbmVkwrssIMKrW29iamVjdCBGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVp
bHQtaW5zL0FycmF5L3Byb3RvLWZyb20tY3Rvci1yZWFsbS1vbmUuanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrwrssIMKrwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90by1mcm9t
LWN0b3ItcmVhbG0tdHdvLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqvCuywgwqvCuykgdG8g
YmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5
cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVl
JwotdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVk
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrwrssIMKrwrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9BcnJh
eS9wcm90b3R5cGUvY29uY2F0L2FyZy1sZW5ndGgtZXhjZWVkaW5nLWludGVnZXItbGltaXQuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3Qg
YSBSYW5nZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBU
eXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3InCkBAIC03MDgsOSArNjk5LDYgQEAgdGVzdC9i
dWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL3NwbGljZS90aAogdGVzdC9idWlsdC1pbnMvQXJyYXkv
cHJvdG90eXBlL3Vuc2hpZnQvY2xhbXBzLXRvLWludGVnZXItbGltaXQuanM6CiAgIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
NDI5NDk2NzI5NcK7LCDCqzkwMDcxOTkyNTQ3NDA5OTHCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IExlbmd0aCBpcyAyKio1MyAtIDEgRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrNDI5NDk2NzI5NcK7LCDCqzkwMDcxOTkyNTQ3NDA5OTHCuykgdG8gYmUgdHJ1ZScKLXRl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBcnJheUJ1
ZmZlcl3Cuywgwqtbb2JqZWN0IEFycmF5QnVmZmVyXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBcnJheUJ1
ZmZlcl3Cuywgwqtbb2JqZWN0IEFycmF5QnVmZmVyXcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWls
dC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL2J5dGVMZW5ndGgvZGV0YWNoZWQtYnVmZmVyLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtNzQ3LDEyICs3MzUsNiBAQCB0ZXN0L2J1
aWx0LWlucy9Bc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90CiB0ZXN0L2J1aWx0LWlucy9Bc3luY0Zy
b21TeW5jSXRlcmF0b3JQcm90b3R5cGUvcmV0dXJuL2Fic2VudC12YWx1ZS1ub3QtcGFzc2VkLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MjpBc3luY1Rlc3RGYWlsdXJlOlRlc3QyNjJFcnJvcjogVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsxwrssIMKrMMK7KSB0byBiZSB0cnVlJwog
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjI6QXN5bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFRl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrMcK7LCDCqzDCuykgdG8gYmUgdHJ1ZScK
LXRlc3QvYnVpbHQtaW5zL0FzeW5jRnVuY3Rpb24vcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5l
ZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFzeW5jRnVuY3Rpb25dwrssIMKrW29iamVj
dCBBc3luY0Z1bmN0aW9uXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVl
KMKrW29iamVjdCBBc3luY0Z1bmN0aW9uXcK7LCDCq1tvYmplY3QgQXN5bmNGdW5jdGlvbl3Cuykg
dG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24vcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25dwrssIMKrW29iamVjdCBBc3luY0dlbmVyYXRvckZ1bmN0aW9uXcK7
KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnBy
b3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBBc3luY0dl
bmVyYXRvckZ1bmN0aW9uXcK7LCDCq1tvYmplY3QgQXN5bmNHZW5lcmF0b3JGdW5jdGlvbl3Cuykg
dG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlL3JldHVy
bi9yZXR1cm4tc3VzcGVuZGVkWWllbGQtcHJvbWlzZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjI6
QXN5bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFRlc3QyNjJFcnJvcjogQXN5bmNHZW5lcmF0
b3JSZXNvbHZlKGdlbmVyYXRvciwgcmVzdWx0VmFsdWUsIHRydWUpIEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq1tvYmplY3QgUHJvbWlzZV3Cuywgwqt1bndyYXBwZWQtdmFsdWXCuykgdG8gYmUgdHJ1ZScK
ICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyOkFzeW5jVGVzdEZhaWx1cmU6VGVzdDI2MkVycm9yOiBU
ZXN0MjYyRXJyb3I6IEFzeW5jR2VuZXJhdG9yUmVzb2x2ZShnZW5lcmF0b3IsIHJlc3VsdFZhbHVl
LCB0cnVlKSBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFByb21pc2VdwrssIMKrdW53cmFw
cGVkLXZhbHVlwrspIHRvIGJlIHRydWUnCkBAIC04MTYsOSArNzk4LDYgQEAgdGVzdC9idWlsdC1p
bnMvQmlnSW50L2FzVWludE4vYml0cy10b2luZAogdGVzdC9idWlsdC1pbnMvQmlnSW50L2FzVWlu
dE4vb3JkZXItb2Ytc3RlcHMuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCqzDCuywgwqsywrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqswwrssIMKrMsK7KSB0byBiZSB0cnVlJwot
dGVzdC9idWlsdC1pbnMvQm9vbGVhbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2ZhbHNlwrssIMKrZmFsc2XC
uykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNh
bWVWYWx1ZSjCq2ZhbHNlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L0RhdGFWaWV3L2N1c3RvbS1wcm90by1hY2Nlc3MtZGV0YWNoZXMtYnVmZmVyLmpzOgogICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9u
IHdhcyB0aHJvd24gYXQgYWxsJwpAQCAtODI4LDkgKzgwNyw2IEBAIHRlc3QvYnVpbHQtaW5zL0Rh
dGFWaWV3L2RldGFjaGVkLWJ1ZmZlci4KIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L2xlbmd0aC5q
czoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZGVzY3JpcHRvciB2YWx1ZSBzaG91bGQgYmUg
MScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IGRlc2NyaXB0b3IgdmFsdWUgc2hvdWxk
IGJlIDEnCi10ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6
Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3Qg
RGF0YVZpZXddwrssIMKrW29iamVjdCBEYXRhVmlld13CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0
IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRGF0YVZp
ZXddwrssIMKrW29iamVjdCBEYXRhVmlld13CuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5z
L0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlv
biB3YXMgdGhyb3duIGF0IGFsbCcKQEAgLTkzMywxOCArOTA5LDYgQEAgdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvcHJvdG90eXBlL3NldFVpbgogdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90
eXBlL3NldFVpbnQ4L2RldGFjaGVkLWJ1ZmZlci5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdlRXJyb3InCiAgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmFuZ2VF
cnJvcicKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLW9uZS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBP
YmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywg
wqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLXR3by5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3Rdwrsp
IHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1l
VmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1
ZScKLXRlc3QvYnVpbHQtaW5zL0RhdGUvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLXplcm8uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2Jq
ZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKr
W29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9FcnJvci9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq0Vycm9ywrssIMKrRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq0Vycm9ywrssIMKrRXJyb3LC
uykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2NhbGwtYmluZC10aGlzLXJl
YWxtLXVuZGVmLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBpbXBsaWNpdCB1bmRlZmlu
ZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBnbG9iYWxdwrssIMKrW29iamVjdCBVbmRl
ZmluZWRdwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBpbXBs
aWNpdCB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBnbG9iYWxdwrssIMKr
W29iamVjdCBVbmRlZmluZWRdwrspIHRvIGJlIHRydWUnCkBAIC05NjMsMTUgKzkyNyw2IEBAIHRl
c3QvYnVpbHQtaW5zL0Z1bmN0aW9uL2ludGVybmFscy9Db25zdHIKIHRlc3QvYnVpbHQtaW5zL0Z1
bmN0aW9uL2ludGVybmFscy9Db25zdHJ1Y3QvZGVyaXZlZC10aGlzLXVuaW5pdGlhbGl6ZWQtcmVh
bG0uanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJy
b3IgYnV0IGdvdCBhIFJlZmVyZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCi10
ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1
bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2Z1bmN0aW9uICgpIHsnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtmdW5jdGlv
biAoKSB7JwotdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL2JpbmQvZ2V0LWZuLXJl
YWxtLXJlY3Vyc2l2ZS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgdHJ1
ZSBidXQgZ290IGZhbHNlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
dHJ1ZSBidXQgZ290IGZhbHNlJwotdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL2Jp
bmQvZ2V0LWZuLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCB0
cnVlIGJ1dCBnb3QgZmFsc2UnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3Rl
ZCB0cnVlIGJ1dCBnb3QgZmFsc2UnCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUv
YmluZC9sZW5ndGgtZXhjZWVkcy1pbnQzMi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzIxNDc0ODM2NDjCuykgdG8gYmUgdHJ1ZScKICAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzDCuywgwqsy
MTQ3NDgzNjQ4wrspIHRvIGJlIHRydWUnCkBAIC0xMTEwLDM5ICsxMDY1LDEyIEBAIHRlc3QvYnVp
bHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmkKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L3Byb3RvdHlwZS90b1N0cmluZy91bmljb2RlLmpzOgogICBkZWZhdWx0OiAiVGVzdDI2MkVycm9y
OiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0s
IFxcdTAwNjMpIHsgXFx1MDA2MiA9IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24g
XFx1MDA2MShcXHV7NjJ9LCBcXHUwMDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4g
YjsgfSkiCiAgIHN0cmljdCBtb2RlOiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVG
dW5jdGlvbiBTeW50YXg6ICdmdW5jdGlvbiBhKFxcdXs2Mn0sIFxcdTAwNjMpIHsgXFx1MDA2MiA9
IFxcdXswMDA2M307IHJldHVybiBiOyB9Jy4oZnVuY3Rpb24gXFx1MDA2MShcXHV7NjJ9LCBcXHUw
MDYzKSB7IFxcdTAwNjIgPSBcXHV7MDAwNjN9OyByZXR1cm4gYjsgfSkiCi10ZXN0L2J1aWx0LWlu
cy9HZW5lcmF0b3JGdW5jdGlvbi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6
ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgR2VuZXJhdG9yRnVu
Y3Rpb25dwrssIMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3Qg
R2VuZXJhdG9yRnVuY3Rpb25dwrssIMKrW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl3CuykgdG8g
YmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL0pTT04vcGFyc2UvcmV2aXZlci1vYmplY3Qtbm9uLWNv
bmZpZ3VyYWJsZS1wcm9wLWNyZWF0ZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrMjLCuywgwqsywrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqsyMsK7LCDCqzLCuykgdG8gYmUg
dHJ1ZScKLXRlc3QvYnVpbHQtaW5zL01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgTWFwXcK7
LCDCq1tvYmplY3QgTWFwXcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBNYXBdwrssIMKrW29iamVjdCBNYXBd
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvRXZhbEVycm9yL3By
b3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFy
Z2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrRXZhbEVycm9y
wrssIMKrRXZhbEVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtFdmFsRXJyb3LCuywgwqtFdmFsRXJyb3LCuykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5z
L05hdGl2ZUVycm9ycy9SYW5nZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrUmFuZ2VFcnJvcsK7LCDCq1JhbmdlRXJyb3LCuykgdG8gYmUgdHJ1
ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMg
dW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1JhbmdlRXJyb3LCuywgwqtSYW5nZUVycm9y
wrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvUmVmZXJlbmNlRXJy
b3IvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBu
ZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtSZWZl
cmVuY2VFcnJvcsK7LCDCq1JlZmVyZW5jZUVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBl
Y3RlZCBTYW1lVmFsdWUowqtSZWZlcmVuY2VFcnJvcsK7LCDCq1JlZmVyZW5jZUVycm9ywrspIHRv
IGJlIHRydWUnCi10ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvU3ludGF4RXJyb3IvcHJvdG8t
ZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQu
cHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtTeW50YXhFcnJvcsK7
LCDCq1N5bnRheEVycm9ywrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVy
cm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUo
wqtTeW50YXhFcnJvcsK7LCDCq1N5bnRheEVycm9ywrspIHRvIGJlIHRydWUnCi10ZXN0L2J1aWx0
LWlucy9OYXRpdmVFcnJvcnMvVHlwZUVycm9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAg
ZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQg
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrVHlwZUVycm9ywrssIMKrVHlwZUVycm9ywrspIHRvIGJlIHRy
dWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlz
IHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtUeXBlRXJyb3LCuywgwqtUeXBlRXJyb3LC
uykgdG8gYmUgdHJ1ZScKLXRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9VUklFcnJvci9wcm90
by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1Rhcmdl
dC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VSSUVycm9ywrss
IMKrVVJJRXJyb3LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1VS
SUVycm9ywrssIMKrVVJJRXJyb3LCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL051bWJl
ci9iaWdpbnQtY29udmVyc2lvbi5qczoKICAgZGVmYXVsdDogIlR5cGVFcnJvcjogQ29udmVyc2lv
biBmcm9tICdCaWdJbnQnIHRvICdudW1iZXInIGlzIG5vdCBhbGxvd2VkLiIKICAgc3RyaWN0IG1v
ZGU6ICJUeXBlRXJyb3I6IENvbnZlcnNpb24gZnJvbSAnQmlnSW50JyB0byAnbnVtYmVyJyBpcyBu
b3QgYWxsb3dlZC4iCi10ZXN0L2J1aWx0LWlucy9OdW1iZXIvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqswwrss
IMKrMMK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrMMK7LCDCqzDCuykgdG8gYmUgdHJ1ZScKIHRlc3QvYnVpbHQtaW5zL09i
amVjdC9lbnRyaWVzL29yZGVyLWFmdGVyLWRlZmluZS1wcm9wZXJ0eS5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgW2IsIGFdIGFuZCBbYSwgYl0gdG8gaGF2ZSB0aGUgc2Ft
ZSBjb250ZW50cy4gJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgW2Is
IGFdIGFuZCBbYSwgYl0gdG8gaGF2ZSB0aGUgc2FtZSBjb250ZW50cy4gJwpAQCAtMTE2NSw5ICsx
MDkzLDYgQEAgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2ludGVybmFscy9EZWZpbmVPdwogdGVzdC9i
dWlsdC1pbnMvT2JqZWN0L2tleXMvb3JkZXItYWZ0ZXItZGVmaW5lLXByb3BlcnR5LmpzOgogICBk
ZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbYiwgYV0gYW5kIFthLCBiXSB0byBoYXZl
IHRoZSBzYW1lIGNvbnRlbnRzLiAnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBl
Y3RlZCBbYiwgYV0gYW5kIFthLCBiXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAnCi10ZXN0
L2J1aWx0LWlucy9PYmplY3QvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtb
b2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2Jq
ZWN0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvT2JqZWN0L3Byb3RvdHlwZS90b1N0
cmluZy9wcm94eS1mdW5jdGlvbi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVuY3Rp
b24gcHJveHkgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVj
dCBGdW5jdGlvbl3CuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IGZ1bmN0aW9uIHByb3h5IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDC
q1tvYmplY3QgRnVuY3Rpb25dwrspIHRvIGJlIHRydWUnCkBAIC0xMTk4LDkgKzExMjMsNiBAQCB0
ZXN0L2J1aWx0LWlucy9Qcm9taXNlL2NyZWF0ZS1yZXNvbHZpbmctCiB0ZXN0L2J1aWx0LWlucy9Q
cm9taXNlL2V4ZWN1dG9yLWZ1bmN0aW9uLW5vbmNvbnN0cnVjdG9yLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8g
YmUgdHJ1ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1
ZSjCq3RydWXCuywgwqtmYWxzZcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvUHJvbWlz
ZS9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgUHJvbWlzZV3Cuywgwqtbb2JqZWN0IFByb21pc2Vd
wrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqtbb2JqZWN0IFByb21pc2VdwrssIMKrW29iamVjdCBQcm9taXNlXcK7KSB0byBi
ZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9wcm90b3R5cGUvZmluYWxseS9pbnZva2Vz
LXRoZW4td2l0aC1mdW5jdGlvbi5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogZnVsZmls
bG1lbnQgaGFuZGxlciBpcyBub3QgY29uc3RydWN0b3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2
MkVycm9yOiBmdWxmaWxsbWVudCBoYW5kbGVyIGlzIG5vdCBjb25zdHJ1Y3RvcicKQEAgLTEyNTIs
MTIgKzExNzQsNiBAQCB0ZXN0L2J1aWx0LWlucy9Qcm94eS9jb25zdHJ1Y3QvcmV0dXJuLW5vCiB0
ZXN0L2J1aWx0LWlucy9Qcm94eS9jb25zdHJ1Y3QvdHJhcC1pcy1ub3QtY2FsbGFibGUtcmVhbG0u
anM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBn
b3QgYSBUeXBlRXJyb3InCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBh
IFR5cGVFcnJvciBidXQgZ290IGEgVHlwZUVycm9yJwotdGVzdC9idWlsdC1pbnMvUHJveHkvZ2V0
LWZuLXJlYWxtLXJlY3Vyc2l2ZS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgdHJ1ZSBidXQgZ290IGZhbHNlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgdHJ1ZSBidXQgZ290IGZhbHNlJwotdGVzdC9idWlsdC1pbnMvUHJveHkvZ2V0LWZuLXJl
YWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCB0cnVlIGJ1dCBnb3Qg
ZmFsc2UnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCB0cnVlIGJ1dCBn
b3QgZmFsc2UnCiB0ZXN0L2J1aWx0LWlucy9Qcm94eS9vd25LZXlzL3RyYXAtaXMtdW5kZWZpbmVk
LXRhcmdldC1pcy1wcm94eS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQg
W2xlbmd0aCwgZm9vLCAwLCBTeW1ib2woKV0gYW5kIFtTeW1ib2woKSwgbGVuZ3RoLCBmb28sIDBd
IHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuICcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIFtsZW5ndGgsIGZvbywgMCwgU3ltYm9sKCldIGFuZCBbU3ltYm9sKCksIGxl
bmd0aCwgZm9vLCAwXSB0byBoYXZlIHRoZSBzYW1lIGNvbnRlbnRzLiAnCkBAIC0xNjU3LDkgKzE1
NzMsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9nCiB0ZXN0L2J1
aWx0LWlucy9SZWdFeHAvcHJvcGVydHktZXNjYXBlcy9nZW5lcmF0ZWQvWElEX1N0YXJ0LmpzOgog
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBgXHB7WElEX1N0YXJ0fWAgc2hvdWxkIG1hdGNoIFUr
MDAxQ0ZBIChg4bO6YCknCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBgXHB7WElEX1N0
YXJ0fWAgc2hvdWxkIG1hdGNoIFUrMDAxQ0ZBIChg4bO6YCknCi10ZXN0L2J1aWx0LWlucy9SZWdF
eHAvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUowqsvKD86KS/CuywgwqsvKD86KS/CuykgdG8gYmUgdHJ1ZScKLSAg
c3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqy8oPzopL8K7
LCDCqy8oPzopL8K7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3Byb3RvdHlw
ZS9TeW1ib2wubWF0Y2gvYnVpbHRpbi1pbmZlci11bmljb2RlLmpzOgogICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvvv73CuywgwqtudWxswrspIHRvIGJlIHRy
dWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqvv
v73CuywgwqtudWxswrspIHRvIGJlIHRydWUnCkBAIC0xNjk2LDEyICsxNjA5LDYgQEAgdGVzdC9i
dWlsdC1pbnMvUmVnRXhwL3Byb3RvdHlwZS91bmljb2RlLwogdGVzdC9idWlsdC1pbnMvUmVnRXhw
L3F1YW50aWZpZXItaW50ZWdlci1saW1pdC5qczoKICAgZGVmYXVsdDogJ1N5bnRheEVycm9yOiBJ
bnZhbGlkIHJlZ3VsYXIgZXhwcmVzc2lvbjogbnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlm
aWVyJwogICBzdHJpY3QgbW9kZTogJ1N5bnRheEVycm9yOiBJbnZhbGlkIHJlZ3VsYXIgZXhwcmVz
c2lvbjogbnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyJwotdGVzdC9idWlsdC1pbnMv
U2V0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBTZXRdwrssIMKrW29iamVjdCBTZXRdwrspIHRv
IGJlIHRydWUnCi0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFs
dWUowqtbb2JqZWN0IFNldF3Cuywgwqtbb2JqZWN0IFNldF3CuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
YnVpbHQtaW5zL1N0cmluZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq8K7LCDCq8K7KSB0byBiZSB0cnVlJwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrwrssIMKr
wrspIHRvIGJlIHRydWUnCiB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL3JlcGxhY2Uv
Y3N0bS1yZXBsYWNlLWlzLW51bGwuanM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IG51bGwgaXMg
bm90IGEgZnVuY3Rpb24nCiAgIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBudWxsIGlzIG5vdCBh
IGZ1bmN0aW9uJwpAQCAtMTc3NiwyMSArMTY4Myw5IEBAIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMvY3QKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
Y3RvcnMvYnVmZmVyLWFyZy9sZW5ndGgtdG8tbnVtYmVyLWRldGFjaGJ1ZmZlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFJhbmdl
RXJyb3IgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0
MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBSYW5nZUVycm9yIChUZXN0
aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZh
dWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRB
cnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8g
YmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90
b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRvIGJlIHRydWUg
KFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvY3RvcnMvbGVuZ3RoLWFyZy9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxv
YXQ2NEFycmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7
KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IEZsb2F0NjRBcnJh
eVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3CuykgdG8gYmUg
dHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9jdG9ycy9uby1hcmdzL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBG
bG9hdDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVd
wrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFy
cmF5UHJvdG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBi
ZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcvbGVuZ3RoLWV4Y2Vzc2l2ZS10aHJv
d3MuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgUmFuZ2VFcnJvciB0
byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3
aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgYSBSYW5nZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24g
YXQgYWxsIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL29iamVjdC1hcmcvcHJvdG8tZnJvbS1jdG9yLXJlYWxt
LmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2Jq
ZWN0IEZsb2F0NjRBcnJheVByb3RvdHlwZV3Cuywgwqtbb2JqZWN0IEZsb2F0NjRBcnJheVByb3Rv
dHlwZV3CuykgdG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwotICBzdHJp
Y3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9h
dDY0QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrsp
IHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvZGV0YWNoZWQtd2hl
bi1zcGVjaWVzLXJldHJpZXZlZC1kaWZmZXJlbnQtdHlwZS5qczoKICAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogVHlwZUVycm9yIHRocm93biBmb3IgZGV0YWNoZWQgc291cmNlIGJ1ZmZlciBFeHBl
Y3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3du
IGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogVHlwZUVycm9yIHRocm93biBmb3IgZGV0YWNoZWQgc291cmNlIGJ1ZmZlciBF
eHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwpAQCAtMTgxOCw5ICsxNzEz
LDYgQEAgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdAogdGVzdC9idWls
dC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9vdGhlci1j
dG9yLWJ1ZmZlci1jdG9yLXNwZWNpZXMtcHJvdG90eXBlLXRocm93cy5qczoKICAgZGVmYXVsdDog
J1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBu
byBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVGVzdDI2MkVycm9y
IHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0
b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBGbG9hdDY0
QXJyYXlQcm90b3R5cGVdwrssIMKrW29iamVjdCBGbG9hdDY0QXJyYXlQcm90b3R5cGVdwrspIHRv
IGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJv
dG90eXBlXcK7LCDCq1tvYmplY3QgRmxvYXQ2NEFycmF5UHJvdG90eXBlXcK7KSB0byBiZSB0cnVl
IChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL3NhbWUtY3Rvci1idWZmZXItY3Rvci1h
Y2Nlc3MtdGhyb3dzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFRl
c3QyNjJFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFs
bCAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJF
cnJvcjogRXhwZWN0ZWQgYSBUZXN0MjYyRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRp
b24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKQEAgLTE5
MDgsMjcgKzE4MDAsMTIgQEAgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9v
ZgogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9vZi9uZXctaW5zdGFuY2Ut
dXNpbmctY3VzdG9tLWN0b3IuanM6CiAgIGRlZmF1bHQ6ICdUeXBlRXJyb3I6IFR5cGVkQXJyYXku
b2YgcmVxdWlyZXMgaXRzIHRoaXMgYXJndW1lbnQgdG8gc3ViY2xhc3MgYSBUeXBlZEFycmF5IGNv
bnN0cnVjdG9yIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCiAgIHN0cmljdCBtb2RlOiAn
VHlwZUVycm9yOiBUeXBlZEFycmF5Lm9mIHJlcXVpcmVzIGl0cyB0aGlzIGFyZ3VtZW50IHRvIHN1
YmNsYXNzIGEgVHlwZWRBcnJheSBjb25zdHJ1Y3RvciAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJh
eS4pJwotdGVzdC9idWlsdC1pbnMvV2Vha01hcC9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0g
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgV2Vh
a01hcF3Cuywgwqtbb2JqZWN0IFdlYWtNYXBdwrspIHRvIGJlIHRydWUnCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFdlYWtNYXBdwrss
IMKrW29iamVjdCBXZWFrTWFwXcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1Jl
Zi9wcm90by1mcm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5l
d1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmpl
Y3QgV2Vha1JlZl3Cuywgwqtbb2JqZWN0IFdlYWtSZWZdwrspIHRvIGJlIHRydWUnCi0gIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBF
eHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IFdlYWtSZWZdwrssIMKrW29iamVjdCBXZWFrUmVm
XcK7KSB0byBiZSB0cnVlJwotdGVzdC9idWlsdC1pbnMvV2Vha1NldC9wcm90by1mcm9tLWN0b3It
cmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjC
q1tvYmplY3QgV2Vha1NldF3Cuywgwqtbb2JqZWN0IFdlYWtTZXRdwrspIHRvIGJlIHRydWUnCi0g
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0
IFdlYWtTZXRdwrssIMKrW29iamVjdCBXZWFrU2V0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRs
NDAyL0NvbGxhdG9yL21pc3NpbmctdW5pY29kZS1leHQtdmFsdWUtZGVmYXVsdHMtdG8tdHJ1ZS5q
czoKICAgZGVmYXVsdDogIlRlc3QyNjJFcnJvcjogXCJrbi10cnVlXCIgaXMgcmV0dXJuZWQgaW4g
bG9jYWxlLCBidXQgc2hvdWxkbid0IGJlLiBFeHBlY3RlZCBTYW1lVmFsdWUowqs3wrssIMKrLTHC
uykgdG8gYmUgdHJ1ZSIKICAgc3RyaWN0IG1vZGU6ICJUZXN0MjYyRXJyb3I6IFwia24tdHJ1ZVwi
IGlzIHJldHVybmVkIGluIGxvY2FsZSwgYnV0IHNob3VsZG4ndCBiZS4gRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrN8K7LCDCqy0xwrspIHRvIGJlIHRydWUiCi10ZXN0L2ludGw0MDIvQ29sbGF0b3IvcHJv
dG8tZnJvbS1jdG9yLXJlYWxtLmpzOgotICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBuZXdUYXJn
ZXQucHJvdG90eXBlIGlzIHVuZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9i
amVjdF3Cuywgwqtbb2JqZWN0IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6
ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVk
IFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBi
ZSB0cnVlJwogdGVzdC9pbnRsNDAyL0NvbGxhdG9yL3VzYWdlLWRlLmpzOgogICBkZWZhdWx0OiAn
VGVzdDI2MkVycm9yOiBFeHBlY3RlZCBbw4QsIEFFXSBhbmQgW0FFLCDDhF0gdG8gaGF2ZSB0aGUg
c2FtZSBjb250ZW50cy4gc2VhcmNoJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgW8OELCBBRV0gYW5kIFtBRSwgw4RdIHRvIGhhdmUgdGhlIHNhbWUgY29udGVudHMuIHNl
YXJjaCcKLXRlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90by1mcm9tLWN0b3ItcmVhbG0u
anM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5wcm90b3R5cGUgaXMgdW5k
ZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0XcK7LCDCq1tvYmplY3Qg
T2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogbmV3
VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrW29iamVj
dCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUnCiB0ZXN0L2ludGw0
MDIvRGF0ZVRpbWVGb3JtYXQvcHJvdG90eXBlL3Jlc29sdmVkT3B0aW9ucy9ob3VyQ3ljbGUtZGVm
YXVsdC5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
aDI0wrssIMKraDIzwrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9y
OiBFeHBlY3RlZCBTYW1lVmFsdWUowqtoMjTCuywgwqtoMjPCuykgdG8gYmUgdHJ1ZScKQEAgLTE5
NzQsMTggKzE4NTEsOSBAQCB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3Vu
CiB0ZXN0L2ludGw0MDIvSW50bC9nZXRDYW5vbmljYWxMb2NhbGVzL3VuaWNvZGUtZXh0LWtleS13
aXRoLWRpZ2l0LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdl
RXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCiAg
IHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUg
dGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2ludGw0MDIv
TnVtYmVyRm9ybWF0L3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2FtZVZh
bHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRydWUn
Ci0gIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBuZXdUYXJnZXQucHJvdG90eXBlIGlzIHVu
ZGVmaW5lZCBFeHBlY3RlZCBTYW1lVmFsdWUowqtbb2JqZWN0IE9iamVjdF3Cuywgwqtbb2JqZWN0
IE9iamVjdF3CuykgdG8gYmUgdHJ1ZScKLXRlc3QvaW50bDQwMi9QbHVyYWxSdWxlcy9wcm90by1m
cm9tLWN0b3ItcmVhbG0uanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IG5ld1RhcmdldC5w
cm90b3R5cGUgaXMgdW5kZWZpbmVkIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq1tvYmplY3QgT2JqZWN0
XcK7LCDCq1tvYmplY3QgT2JqZWN0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9kZTogJ1Rl
c3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0ZWQgU2Ft
ZVZhbHVlKMKrW29iamVjdCBPYmplY3RdwrssIMKrW29iamVjdCBPYmplY3RdwrspIHRvIGJlIHRy
dWUnCiB0ZXN0L2ludGw0MDIvUmVsYXRpdmVUaW1lRm9ybWF0L2NvbnN0cnVjdG9yL2NvbnN0cnVj
dG9yL2xvY2FsZXMtdmFsaWQuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEdyYW5kZmF0
aGVyZWQgRXhwZWN0ZWQgYSBSYW5nZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9u
IHdhcyB0aHJvd24gYXQgYWxsJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogR3JhbmRm
YXRoZXJlZCBFeHBlY3RlZCBhIFJhbmdlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRp
b24gd2FzIHRocm93biBhdCBhbGwnCi10ZXN0L2ludGw0MDIvUmVsYXRpdmVUaW1lRm9ybWF0L2Nv
bnN0cnVjdG9yL2NvbnN0cnVjdG9yL3Byb3RvLWZyb20tY3Rvci1yZWFsbS5qczoKLSAgZGVmYXVs
dDogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBJbnRsLlJlbGF0aXZlVGltZUZvcm1hdF3Cuywgwqtbb2Jq
ZWN0IEludGwuUmVsYXRpdmVUaW1lRm9ybWF0XcK7KSB0byBiZSB0cnVlJwotICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogbmV3VGFyZ2V0LnByb3RvdHlwZSBpcyB1bmRlZmluZWQgRXhwZWN0
ZWQgU2FtZVZhbHVlKMKrW29iamVjdCBJbnRsLlJlbGF0aXZlVGltZUZvcm1hdF3Cuywgwqtbb2Jq
ZWN0IEludGwuUmVsYXRpdmVUaW1lRm9ybWF0XcK7KSB0byBiZSB0cnVlJwogdGVzdC9pbnRsNDAy
L1JlbGF0aXZlVGltZUZvcm1hdC9wcm90b3R5cGUvZm9ybWF0L3BsLXBsLXN0eWxlLWxvbmcuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCq3phIDEwMDAg
c2VrdW5kwrssIMKremEgMcKgMDAwIHNla3VuZMK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9k
ZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKremEgMTAwMCBzZWt1bmTCuywg
wqt6YSAxwqAwMDAgc2VrdW5kwrspIHRvIGJlIHRydWUnCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFu
Z2VMb2cJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMjUgQEAKKzIwMjAtMDQtMjYgIEFsZXhleSBT
aHZheWthICA8c2h2YWlrYWxlc2hAZ21haWwuY29tPgorCisgICAgICAgIEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlIHNob3VsZCB1c2UgbmV3VGFyZ2V0J3MgZ2xvYmFs
T2JqZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDI1OTkKKworICAgICAgICBSZXZpZXdlZCBieSBZdXN1a2UgU3V6dWtpLgorCisgICAgICAgIElm
ICJwcm90b3R5cGUiIG9mIE5ld1RhcmdldCBpcyBub3QgYW4gb2JqZWN0LCBidWlsdC1pbiBjb25z
dHJ1Y3RvcnMgWzFdIHNob3VsZCBhY3F1aXJlCisgICAgICAgIGRlZmF1bHQgW1tQcm90b3R5cGVd
XSBmcm9tIHJlYWxtIG9mIE5ld1RhcmdldCwgdXRpbGl6aW5nIEdldEZ1bmN0aW9uUmVhbG0gaGVs
cGVyIFsyXS4KKyAgICAgICAgQmVmb3JlIHRoaXMgY2hhbmdlLCByZWFsbSBvZiBhY3RpdmUgY29u
c3RydWN0b3Igd2FzIHVzZWQgaW5zdGVhZC4gVGhpcyBwYXRjaCBpbnRyb2R1Y2VzCisgICAgICAg
IEdldEZ1bmN0aW9uUmVhbG0gYW5kIGFsaWducyBhbGwgc3ViY2xhc3NhYmxlIGNvbnN0cnVjdG9y
cyB3aXRoIHRoZSBzcGVjLCBWOCwgYW5kIFNwaWRlck1vbmtleS4KKworICAgICAgICBUaGlzIGNo
YW5nZSBpbmxpbmVzIGZhc3QgcGF0aHMgY2hlY2tzIG9mIEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKCkgYW5kCisgICAgICAgIHNpbXBsaWZpZXMgaXRzIHNpZ25hdHVy
ZTsgZ2V0RnVuY3Rpb25SZWFsbSgpIGlzIGludm9rZWQgaW4gc2xvdyBwYXRocyBvbmx5LgorCisg
ICAgICAgIFdoaWxlIGEgZHluYW1pY2FsbHkgY3JlYXRlZCBmdW5jdGlvbiB1c2VzIE5ld1Rhcmdl
dCdzIHJlYWxtIGZvciBpdHMgZGVmYXVsdCBbW1Byb3RvdHlwZV1dCisgICAgICAgIHNpbWlsYXIg
dG8gb3RoZXIgYnVpbHQtaW5zLCBpdHMgInByb3RvdHlwZSIgb2JqZWN0IGluaGVyaXQgZnJvbSBP
YmplY3RQcm90b3R5cGUKKyAgICAgICAgb2YgYWN0aXZlIGNvbnN0cnVjdG9yJ3MgcmVhbG0gWzNd
IChqdXN0IGxpa2UgdGhlaXIgc2NvcGUpLCBtYWtpbmcgaXQgcmV0YWluIHJlZmVyZW5jZXMKKyAg
ICAgICAgdG8gMiBkaWZmZXJlbnQgZ2xvYmFsIG9iamVjdHMuIFRvIGFjY29tb2RhdGUgdGhpcyBi
ZWhhdmlvciwgdGhpcyBjaGFuZ2UgaW50cm9kdWNlcworICAgICAgICBgc2NvcGVHbG9iYWxPYmpl
Y3RgIGluIEpTRnVuY3Rpb24uY3BwIG1ldGhvZHMuCisKKyAgICAgICAgQWJvdmUtbWVudGlvbmVk
IGJlaGF2aW9yIGFsc28gc2ltcGxpZmllcyBjcmVhdGlvbiBvZiBKU0dlbmVyYXRvciBhbmQgSlNB
c3luY0dlbmVyYXRvcgorICAgICAgICBpbnN0YW5jZXMgc2luY2UgTmV3VGFyZ2V0J3MgcmVhbG0g
aXMgaXJyZWxldmFudCB0byB0aGVtLgorCisgICAgICAgIEludGxDb2xsYXRvckNvbnN0cnVjdG9y
Ojpjb2xsYXRvclN0cnVjdHVyZSgpIGFuZCA2IHNpbWlsYXIgbWV0aG9kcyBhcmUgcmVtb3ZlZDoK
KyAgICAgICAgYSkgdG8gaW1wb3NlIGdvb2QgcHJhY3RpY2Ugb2YgdXNpbmcgbmV3VGFyZ2V0J3Mg
Z2xvYmFsT2JqZWN0OworICAgICAgICBiKSB3aXRoIHRoaXMgY2hhbmdlLCBlYWNoIG9mIHRoZW0g
aGF2ZSAxIGNhbGwgc2l0ZSBtYXg7CisgICAgICAgIGMpIG90aGVyIEpTQyBjb25zdHJ1Y3RvcnMg
aGF2ZSBubyBtZXRob2RzIGFsaWtlLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly90YzM5LmVzL2Vj
bWEyNjIvI3NlYy1tYXAtY29uc3RydWN0b3IgKHN0ZXAgMikKKyAgICAgICAgWzJdOiBodHRwczov
L3RjMzkuZXMvZWNtYTI2Mi8jc2VjLWdldGZ1bmN0aW9ucmVhbG0KKyAgICAgICAgWzNdOiBodHRw
czovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLWNyZWF0ZWR5bmFtaWNmdW5jdGlvbiAoc3RlcHMgMjMt
MjUpCisKKyAgICAgICAgKiBkZmcvREZHT3BlcmF0aW9ucy5jcHA6CisgICAgICAgICogcnVudGlt
ZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y2FsbEFnZ3Jl
Z2F0ZUVycm9yQ29uc3RydWN0b3IpOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RBZ2dyZWdhdGVF
cnJvckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL0FnZ3JlZ2F0ZUVycm9yQ29uc3Ry
dWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAg
ICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoSlNDOjpjb25zdHJ1Y3RBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOgor
ICAgICAgICAqIHJ1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Y29uc3RydWN0V2l0aEJvb2xlYW5Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Db21t
b25TbG93UGF0aHMuY3BwOgorICAgICAgICAoSlNDOjpTTE9XX1BBVEhfREVDTCk6CisgICAgICAg
IChKU0M6OmNyZWF0ZUludGVybmFsRmllbGRPYmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RGF0ZSk6CisgICAgICAg
ICogcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0
RXJyb3JDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9y
LmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVk
Q2hlY2spOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAg
IChKU0M6OkludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKToKKyAgICAg
ICAgKEpTQzo6Z2V0RnVuY3Rpb25SZWFsbSk6CisgICAgICAgIChKU0M6OkludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlU2xvdyk6IERlbGV0ZWQuCisgICAgICAgICogcnVu
dGltZS9JbnRlcm5hbEZ1bmN0aW9uLmg6CisgICAgICAgIChKU0M6OkludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL0lu
dGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bENv
bGxhdG9yKToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxDb2xsYXRvcik6CisgICAgICAgICogcnVu
dGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERh
dGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRs
RGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlNDOjpjYWxsSW50bERhdGVUaW1lRm9ybWF0KToK
KyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmg6CisgICAg
ICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjb25zdHJ1Y3RJbnRsTnVtYmVyRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxO
dW1iZXJGb3JtYXQpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVj
dG9yLmg6CisgICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEludGxQbHVyYWxSdWxlcyk6CisgICAgICAgICogcnVu
dGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3Ry
dWN0SW50bFJlbGF0aXZlVGltZUZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRp
dmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZm
ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTR2VuZXJpY0FycmF5QnVmZmVyQ29u
c3RydWN0b3I8c2hhcmluZ01vZGU+Ojpjb25zdHJ1Y3RBcnJheUJ1ZmZlcik6CisgICAgICAgICog
cnVudGltZS9KU0Z1bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6cHJvdG90
eXBlRm9yQ29uc3RydWN0aW9uKToKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6Z2V0T3duUHJv
cGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29u
c3RydWN0b3JJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEdlbmVyaWNUeXBlZEFy
cmF5Vmlldyk6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdElubGluZXMuaDoKKyAg
ICAgICAgKEpTQzo6SlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBl
RHVyaW5nQWxsb2NhdGlvbiBjb25zdCk6CisgICAgICAgICogcnVudGltZS9NYXBDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdE1hcCk6CisgICAgICAgICogcnVudGltZS9O
YXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25z
dHJ1Y3RvcjxlcnJvclR5cGU+Ojpjb25zdHJ1Y3ROYXRpdmVFcnJvckNvbnN0cnVjdG9yKToKKyAg
ICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3RvcjxlcnJvclR5cGU+OjpjYWxsTmF0aXZl
RXJyb3JDb25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVj
dG9yLmg6CisgICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OmNvbnN0cnVjdE51bWJlckNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBydW50aW1lL09i
amVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0T2JqZWN0V2l0aE5l
d1RhcmdldCk6CisgICAgICAgICogcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OmdldFJlZ0V4cFN0cnVjdHVyZSk6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdFJl
Z0V4cCk6CisgICAgICAgIChKU0M6OmVzU3BlY1JlZ0V4cENyZWF0ZSk6CisgICAgICAgICogcnVu
dGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvU2V0Q29uc3RydWN0
b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RTZXQpOgorICAgICAgICAqIHJ1bnRpbWUv
U3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXaXRoU3RyaW5n
Q29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6Y29uc3RydWN0V2Vha01hcCk6CisgICAgICAgICogcnVudGltZS9XZWFr
T2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RXZWFrUmVm
KToKKyAgICAgICAgKiBydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChK
U0M6OmNvbnN0cnVjdFdlYWtTZXQpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlDb21w
aWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEpTV2ViQXNz
ZW1ibHlDb21waWxlRXJyb3IpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5j
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SlNXZWJBc3NlbWJseUlu
c3RhbmNlKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0
b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TGlua0Vycm9yKToK
KyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAoSlNDOjpXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpjcmVhdGVNb2R1bGUpOgor
ICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IpOgorCiAy
MDIwLTA0LTI1ICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KIAogICAg
ICAgICBbSlNDXSBpc0NhbGxhYmxlIGlzIHJlZHVuZGFudCB3aXRoIGlzRnVuY3Rpb24KSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcAkocmV2aXNpb24g
MjYwNzIzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzQ0LDcgKzM0NCw5IEBAIEpTQ2VsbCogSklUX09QRVJBVElPTiBv
cGVyYXRpb25DcmVhdGVQcm8KICAgICBDYWxsRnJhbWUqIGNhbGxGcmFtZSA9IERFQ0xBUkVfQ0FM
TF9GUkFNRSh2bSk7CiAgICAgSklUT3BlcmF0aW9uUHJvbG9ndWVDYWxsRnJhbWVUcmFjZXIgdHJh
Y2VyKHZtLCBjYWxsRnJhbWUpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BF
KHZtKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29u
c3RydWN0b3IoKSwgY29uc3RydWN0b3IsIGdsb2JhbE9iamVjdC0+cHJvbWlzZVN0cnVjdHVyZSgp
KTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGNvbnN0cnVjdG9yID09IGdsb2JhbE9iamVj
dC0+cHJvbWlzZUNvbnN0cnVjdG9yKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPnByb21pc2VT
dHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgY29uc3RydWN0b3IsIGdldEZ1bmN0aW9uUmVhbG0odm0sIGNv
bnN0cnVjdG9yKS0+cHJvbWlzZVN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBudWxscHRyKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTUHJvbWlz
ZTo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpKTsKIH0KQEAgLTM1NSw3ICszNTcsOSBAQCBKU0NlbGwq
IEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uQ3JlYXRlSW50CiAgICAgQ2FsbEZyYW1lKiBjYWxsRnJh
bWUgPSBERUNMQVJFX0NBTExfRlJBTUUodm0pOwogICAgIEpJVE9wZXJhdGlvblByb2xvZ3VlQ2Fs
bEZyYW1lVHJhY2VyIHRyYWNlcih2bSwgY2FsbEZyYW1lKTsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7Ci0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5h
bEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGdsb2JhbE9i
amVjdC0+aW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IoKSwgY29uc3RydWN0b3IsIGdsb2JhbE9i
amVjdC0+aW50ZXJuYWxQcm9taXNlU3RydWN0dXJlKCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0
dXJlID0gY29uc3RydWN0b3IgPT0gZ2xvYmFsT2JqZWN0LT5pbnRlcm5hbFByb21pc2VDb25zdHJ1
Y3RvcigpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5pbnRlcm5hbFByb21pc2VTdHJ1Y3R1cmUo
KQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgY29uc3RydWN0b3IsIGdldEZ1bmN0aW9uUmVhbG0odm0sIGNvbnN0cnVjdG9y
KS0+aW50ZXJuYWxQcm9taXNlU3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIG51bGxwdHIpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNJbnRlcm5h
bFByb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKSk7CiB9CkBAIC0zNjYsNyArMzcwLDcgQEAg
SlNDZWxsKiBKSVRfT1BFUkFUSU9OIG9wZXJhdGlvbkNyZWF0ZUdlbgogICAgIENhbGxGcmFtZSog
Y2FsbEZyYW1lID0gREVDTEFSRV9DQUxMX0ZSQU1FKHZtKTsKICAgICBKSVRPcGVyYXRpb25Qcm9s
b2d1ZUNhbGxGcmFtZVRyYWNlciB0cmFjZXIodm0sIGNhbGxGcmFtZSk7CiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBu
dWxscHRyLCBjb25zdHJ1Y3RvciwgZ2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JTdHJ1Y3R1cmUoKSk7
CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBnbG9iYWxPYmplY3QtPmdl
bmVyYXRvclN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxs
cHRyKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTR2VuZXJhdG9yOjpjcmVhdGUo
dm0sIHN0cnVjdHVyZSkpOwogfQpAQCAtMzc3LDcgKzM4MSw3IEBAIEpTQ2VsbCogSklUX09QRVJB
VElPTiBvcGVyYXRpb25DcmVhdGVBc3kKICAgICBDYWxsRnJhbWUqIGNhbGxGcmFtZSA9IERFQ0xB
UkVfQ0FMTF9GUkFNRSh2bSk7CiAgICAgSklUT3BlcmF0aW9uUHJvbG9ndWVDYWxsRnJhbWVUcmFj
ZXIgdHJhY2VyKHZtLCBjYWxsRnJhbWUpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbnVsbHB0ciwgY29uc3RydWN0
b3IsIGdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JTdHJ1Y3R1cmUoKSk7CisgICAgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBnbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9y
U3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwog
ICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNBc3luY0dlbmVyYXRvcjo6Y3JlYXRlKHZt
LCBzdHJ1Y3R1cmUpKTsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fn
Z3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0FnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAy
NjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNv
bnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjMsNyArNjMsNyBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0
LT52bSgpOwogICAgIEpTVmFsdWUgZXJyb3JzID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAg
ICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDEpOwotICAgIFN0cnVjdHVy
ZSogZXJyb3JTdHJ1Y3R1cmUgPSBqc0Nhc3Q8QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcio+KGNh
bGxGcmFtZS0+anNDYWxsZWUoKSktPmVycm9yU3RydWN0dXJlKHZtKTsKKyAgICBTdHJ1Y3R1cmUq
IGVycm9yU3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5lcnJvclN0cnVjdHVyZShFcnJvclR5cGU6
OkFnZ3JlZ2F0ZUVycm9yKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEFnZ3JlZ2F0ZUVy
cm9yOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgZXJyb3JTdHJ1Y3R1cmUsIGVycm9ycywgbWVz
c2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSk7CiB9CiAKQEAgLTczLDEyICs3Mywx
NCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgYXV0byBz
Y29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgZXJyb3JzID0gY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFy
Z3VtZW50KDEpOwotICAgIEpTVmFsdWUgbmV3VGFyZ2V0ID0gY2FsbEZyYW1lLT5uZXdUYXJnZXQo
KTsKLSAgICBBU1NFUlQobmV3VGFyZ2V0LmlzT2JqZWN0KCkpOwotICAgIFN0cnVjdHVyZSogYmFz
ZVN0cnVjdHVyZSA9IGFzT2JqZWN0KG5ld1RhcmdldCktPmdsb2JhbE9iamVjdCh2bSktPmVycm9y
U3RydWN0dXJlKEVycm9yVHlwZTo6QWdncmVnYXRlRXJyb3IpOwotICAgIFN0cnVjdHVyZSogZXJy
b3JTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShn
bG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0
dXJlKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
KworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJhbWUtPm5ld1Rhcmdl
dCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxG
cmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+ZXJyb3JTdHJ1Y3R1cmUo
RXJyb3JUeXBlOjpBZ2dyZWdhdGVFcnJvcikKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rp
b25SZWFsbSh2bSwgbmV3VGFyZ2V0KS0+ZXJyb3JTdHJ1Y3R1cmUoRXJyb3JUeXBlOjpBZ2dyZWdh
dGVFcnJvcikpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAgICAgQVNT
RVJUKGVycm9yU3RydWN0dXJlKTsKKwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNW
YWx1ZTo6ZW5jb2RlKEFnZ3JlZ2F0ZUVycm9yOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgZXJy
b3JTdHJ1Y3R1cmUsIGVycm9ycywgbWVzc2FnZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNl
KSkpOwogfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVF
cnJvckNvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyNjA3MjMpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTU1LDggKzU1LDYgQEAgcHVibGljOgogICAgICAgICByZXR1cm4g
Y29uc3RydWN0b3I7CiAgICAgfQogCi0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZShWTSYp
IHsgcmV0dXJuIGdsb2JhbE9iamVjdCgpLT5lcnJvclN0cnVjdHVyZShFcnJvclR5cGU6OkFnZ3Jl
Z2F0ZUVycm9yKTsgfQotCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEFnZ3JlZ2F0ZUVycm9yQ29u
c3RydWN0b3IoVk0mLCBTdHJ1Y3R1cmUqKTsKIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCShy
ZXZpc2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1
bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw3ICs0NSw3IEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3RvcihKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBB
cmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0
cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0
cnVjdGlvbk1vZGU6OkFzeW5jKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1
Y3RGdW5jdGlvbihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1
Y3Rpb25Nb2RlOjpBc3luYywgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQogCiBBc3luY0Z1
bmN0aW9uQ29uc3RydWN0b3I6OkFzeW5jRnVuY3Rpb25Db25zdHJ1Y3RvcihWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5
bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3Iu
Y3BwCShyZXZpc2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
c3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00
NSw3ICs0NSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkKIHsKICAgICBBcmdMaXN0IGFyZ3MoY2FsbEZyYW1lKTsKLSAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLCBhcmdzLCBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkFzeW5jR2VuZXJhdG9yKSk7Cisg
ICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RGdW5jdGlvbihnbG9iYWxPYmplY3Qs
IGNhbGxGcmFtZSwgYXJncywgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRv
ciwgY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSkpOwogfQogCiBBc3luY0dlbmVyYXRvckZ1bmN0aW9u
Q29uc3RydWN0b3I6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qm9vbGVhbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjA3MjMpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC00Myw4ICs0MywxMyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8g
c2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIGJvb2xlYW4gPSBq
c0Jvb2xlYW4oY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50b0Jvb2xlYW4oZ2xvYmFsT2JqZWN0KSk7
Ci0gICAgU3RydWN0dXJlKiBib29sZWFuU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCks
IGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+Ym9vbGVhbk9iamVjdFN0cnVj
dHVyZSgpKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgp
KTsKKworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJhbWUtPm5ld1Rh
cmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGJvb2xlYW5TdHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0g
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5ib29sZWFuT2Jq
ZWN0U3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFz
c1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwg
bmV3VGFyZ2V0KS0+Ym9vbGVhbk9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB7IH0pOworCiAgICAgQm9vbGVhbk9iamVjdCogb2JqID0gQm9vbGVhbk9i
amVjdDo6Y3JlYXRlKHZtLCBib29sZWFuU3RydWN0dXJlKTsKICAgICBvYmotPnNldEludGVybmFs
VmFsdWUodm0sIGJvb2xlYW4pOwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUob2JqKTsKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vblNsb3dQYXRocy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhz
LmNwcAkocmV2aXNpb24gMjYwNzIzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tbW9uU2xvd1BhdGhzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgzLDExICsyODMsMTUgQEAg
U0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9wcm9taXNlKQogCiAgICAgSlNQcm9taXNl
KiByZXN1bHQgPSBudWxscHRyOwogICAgIGlmIChieXRlY29kZS5tX2lzSW50ZXJuYWxQcm9taXNl
KSB7Ci0gICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3Jl
YXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmludGVybmFs
UHJvbWlzZUNvbnN0cnVjdG9yKCksIGNvbnN0cnVjdG9yQXNPYmplY3QsIGdsb2JhbE9iamVjdC0+
aW50ZXJuYWxQcm9taXNlU3RydWN0dXJlKCkpOworICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSA9IGNvbnN0cnVjdG9yQXNPYmplY3QgPT0gZ2xvYmFsT2JqZWN0LT5pbnRlcm5hbFByb21pc2VD
b25zdHJ1Y3RvcigpCisgICAgICAgICAgICA/IGdsb2JhbE9iamVjdC0+aW50ZXJuYWxQcm9taXNl
U3RydWN0dXJlKCkKKyAgICAgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjb25zdHJ1Y3RvckFzT2JqZWN0LCBnZXRGdW5jdGlv
blJlYWxtKHZtLCBjb25zdHJ1Y3RvckFzT2JqZWN0KS0+aW50ZXJuYWxQcm9taXNlU3RydWN0dXJl
KCkpOwogICAgICAgICBDSEVDS19FWENFUFRJT04oKTsKICAgICAgICAgcmVzdWx0ID0gSlNJbnRl
cm5hbFByb21pc2U6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICB9IGVsc2UgewotICAgICAg
ICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3Io
KSwgY29uc3RydWN0b3JBc09iamVjdCwgZ2xvYmFsT2JqZWN0LT5wcm9taXNlU3RydWN0dXJlKCkp
OworICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGNvbnN0cnVjdG9yQXNPYmplY3QgPT0g
Z2xvYmFsT2JqZWN0LT5wcm9taXNlQ29uc3RydWN0b3IoKQorICAgICAgICAgICAgPyBnbG9iYWxP
YmplY3QtPnByb21pc2VTdHJ1Y3R1cmUoKQorICAgICAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yQXNPYmpl
Y3QsIGdldEZ1bmN0aW9uUmVhbG0odm0sIGNvbnN0cnVjdG9yQXNPYmplY3QpLT5wcm9taXNlU3Ry
dWN0dXJlKCkpOwogICAgICAgICBDSEVDS19FWENFUFRJT04oKTsKICAgICAgICAgcmVzdWx0ID0g
SlNQcm9taXNlOjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgfQpAQCAtMzIwLDcgKzMyNCw3
IEBAIHN0YXRpYyBKU0NsYXNzKiBjcmVhdGVJbnRlcm5hbEZpZWxkT2JqZWMKIHsKICAgICBhdXRv
IHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9i
amVjdCwgbnVsbHB0ciwgY29uc3RydWN0b3JBc09iamVjdCwgYmFzZVN0cnVjdHVyZSk7CisgICAg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0
cnVjdHVyZShnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yQXNPYmplY3QsIGJhc2VTdHJ1Y3R1cmUp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogICAgIEpTQ2xhc3Mq
IHJlc3VsdCA9IEpTQ2xhc3M6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKIApJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCShyZXZp
c2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3Ry
dWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDMsNyArMTQzLDkgQEAgSlNPYmplY3QqIGNv
bnN0cnVjdERhdGUoSlNHbG9iYWxPYmplY3QqIAogICAgICAgICB2YWx1ZSA9IG1pbGxpc2Vjb25k
c0Zyb21Db21wb25lbnRzKGdsb2JhbE9iamVjdCwgYXJncywgV1RGOjpMb2NhbFRpbWUpOwogICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCi0gICAgU3RydWN0dXJlKiBk
YXRlU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPmRhdGVDb25zdHJ1Y3RvcigpLCBuZXdUYXJnZXQs
IGdsb2JhbE9iamVjdC0+ZGF0ZVN0cnVjdHVyZSgpKTsKKyAgICBTdHJ1Y3R1cmUqIGRhdGVTdHJ1
Y3R1cmUgPSAhbmV3VGFyZ2V0IHx8IG5ld1RhcmdldCA9PSBnbG9iYWxPYmplY3QtPmRhdGVDb25z
dHJ1Y3RvcigpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCkKKyAgICAg
ICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmpl
Y3QsIGFzT2JqZWN0KG5ld1RhcmdldCksIGdldEZ1bmN0aW9uUmVhbG0odm0sIGFzT2JqZWN0KG5l
d1RhcmdldCkpLT5kYXRlU3RydWN0dXJlKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIG51bGxwdHIpOwogCiAgICAgcmV0dXJuIERhdGVJbnN0YW5jZTo6Y3JlYXRlKHZtLCBkYXRl
U3RydWN0dXJlLCB2YWx1ZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwNzIzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTU3LDggKzU3LDEzIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3Ry
dWN0RXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgbWVzc2FnZSA9IGNhbGxGcmFt
ZS0+YXJndW1lbnQoMCk7Ci0gICAgU3RydWN0dXJlKiBlcnJvclN0cnVjdHVyZSA9IEludGVybmFs
RnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1l
LT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPmVycm9y
U3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1Zh
bHVlKCkpOworCisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBuZXdUYXJnZXQg
PT0gY2FsbEZyYW1lLT5qc0NhbGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5lcnJvclN0
cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1Rh
cmdldCktPmVycm9yU3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IHsgfSk7CisKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShF
cnJvckluc3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJvclN0cnVjdHVyZSwgbWVzc2Fn
ZSwgbnVsbHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwogfQogCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMjYwNzIzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25Db25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1MiwzNCArMTUyLDM4IEBAIEpT
T2JqZWN0KiBjb25zdHJ1Y3RGdW5jdGlvblNraXBwaW5nRXZhbEUKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAgICAgfQogCisgICAgYm9vbCBuZWVkc1N1YmNsYXNzU3RydWN0dXJlID0gbmV3VGFy
Z2V0ICYmIG5ld1RhcmdldCAhPSBnbG9iYWxPYmplY3QtPmZ1bmN0aW9uQ29uc3RydWN0b3IoKTsK
KyAgICBKU0dsb2JhbE9iamVjdCogc3RydWN0dXJlR2xvYmFsT2JqZWN0ID0gbmVlZHNTdWJjbGFz
c1N0cnVjdHVyZSA/IGdldEZ1bmN0aW9uUmVhbG0odm0sIGFzT2JqZWN0KG5ld1RhcmdldCkpIDog
Z2xvYmFsT2JqZWN0OwogICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbnVsbHB0cjsKICAgICBz
d2l0Y2ggKGZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZSkgewogICAgIGNhc2UgRnVuY3Rpb25Db25z
dHJ1Y3Rpb25Nb2RlOjpGdW5jdGlvbjoKLSAgICAgICAgc3RydWN0dXJlID0gSlNGdW5jdGlvbjo6
c2VsZWN0U3RydWN0dXJlRm9yTmV3RnVuY0V4cChnbG9iYWxPYmplY3QsIGZ1bmN0aW9uKTsKKyAg
ICAgICAgc3RydWN0dXJlID0gSlNGdW5jdGlvbjo6c2VsZWN0U3RydWN0dXJlRm9yTmV3RnVuY0V4
cChzdHJ1Y3R1cmVHbG9iYWxPYmplY3QsIGZ1bmN0aW9uKTsKICAgICAgICAgYnJlYWs7CiAgICAg
Y2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6OkdlbmVyYXRvcjoKLSAgICAgICAgc3RydWN0
dXJlID0gZ2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOworICAgICAg
ICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmdlbmVyYXRvckZ1bmN0aW9uU3Ry
dWN0dXJlKCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25N
b2RlOjpBc3luYzoKLSAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hc3luY0Z1bmN0
aW9uU3RydWN0dXJlKCk7CisgICAgICAgIHN0cnVjdHVyZSA9IHN0cnVjdHVyZUdsb2JhbE9iamVj
dC0+YXN5bmNGdW5jdGlvblN0cnVjdHVyZSgpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZ1
bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3I6Ci0gICAgICAgIHN0cnVjdHVy
ZSA9IGdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JGdW5jdGlvblN0cnVjdHVyZSgpOworICAg
ICAgICBzdHJ1Y3R1cmUgPSBzdHJ1Y3R1cmVHbG9iYWxPYmplY3QtPmFzeW5jR2VuZXJhdG9yRnVu
Y3Rpb25TdHJ1Y3R1cmUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCi0gICAgU3RydWN0dXJl
KiBzdWJjbGFzc1N0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5mdW5jdGlvbkNvbnN0cnVjdG9yKCks
IG5ld1RhcmdldCwgc3RydWN0dXJlKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBu
dWxscHRyKTsKKyAgICBpZiAobmVlZHNTdWJjbGFzc1N0cnVjdHVyZSkgeworICAgICAgICBzdHJ1
Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxP
YmplY3QsIGFzT2JqZWN0KG5ld1RhcmdldCksIHN0cnVjdHVyZSk7CisgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOworICAgIH0KIAogICAgIHN3aXRjaCAoZnVuY3Rp
b25Db25zdHJ1Y3Rpb25Nb2RlKSB7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlvbk1vZGU6
OkZ1bmN0aW9uOgotICAgICAgICByZXR1cm4gSlNGdW5jdGlvbjo6Y3JlYXRlKHZtLCBmdW5jdGlv
biwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxTY29wZSgpLCBzdWJjbGFzc1N0cnVjdHVyZSk7CisgICAg
ICAgIHJldHVybiBKU0Z1bmN0aW9uOjpjcmVhdGUodm0sIGZ1bmN0aW9uLCBnbG9iYWxPYmplY3Qt
Pmdsb2JhbFNjb3BlKCksIHN0cnVjdHVyZSk7CiAgICAgY2FzZSBGdW5jdGlvbkNvbnN0cnVjdGlv
bk1vZGU6OkdlbmVyYXRvcjoKLSAgICAgICAgcmV0dXJuIEpTR2VuZXJhdG9yRnVuY3Rpb246OmNy
ZWF0ZSh2bSwgZnVuY3Rpb24sIGdsb2JhbE9iamVjdC0+Z2xvYmFsU2NvcGUoKSwgc3ViY2xhc3NT
dHJ1Y3R1cmUpOworICAgICAgICByZXR1cm4gSlNHZW5lcmF0b3JGdW5jdGlvbjo6Y3JlYXRlKHZt
LCBmdW5jdGlvbiwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxTY29wZSgpLCBzdHJ1Y3R1cmUpOwogICAg
IGNhc2UgRnVuY3Rpb25Db25zdHJ1Y3Rpb25Nb2RlOjpBc3luYzoKLSAgICAgICAgcmV0dXJuIEpT
QXN5bmNGdW5jdGlvbjo6Y3JlYXRlKHZtLCBmdW5jdGlvbiwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxT
Y29wZSgpLCBzdWJjbGFzc1N0cnVjdHVyZSk7CisgICAgICAgIHJldHVybiBKU0FzeW5jRnVuY3Rp
b246OmNyZWF0ZSh2bSwgZnVuY3Rpb24sIGdsb2JhbE9iamVjdC0+Z2xvYmFsU2NvcGUoKSwgc3Ry
dWN0dXJlKTsKICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0
b3I6Ci0gICAgICAgIHJldHVybiBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OmNyZWF0ZSh2bSwg
ZnVuY3Rpb24sIGdsb2JhbE9iamVjdC0+Z2xvYmFsU2NvcGUoKSwgc3ViY2xhc3NTdHJ1Y3R1cmUp
OworICAgICAgICByZXR1cm4gSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uOjpjcmVhdGUodm0sIGZ1
bmN0aW9uLCBnbG9iYWxPYmplY3QtPmdsb2JhbFNjb3BlKCksIHN0cnVjdHVyZSk7CiAgICAgfQog
CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAkocmV2aXNpb24gMjYwNzIzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDkgKzI0LDExIEBACiAjaW5jbHVkZSAiSW50ZXJuYWxGdW5jdGlv
bi5oIgogCiAjaW5jbHVkZSAiRnVuY3Rpb25Qcm90b3R5cGUuaCIKKyNpbmNsdWRlICJKU0JvdW5k
RnVuY3Rpb24uaCIKKyNpbmNsdWRlICJKU0NJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNHbG9iYWxP
YmplY3QuaCIKICNpbmNsdWRlICJKU1N0cmluZy5oIgotI2luY2x1ZGUgIkpTQ0lubGluZXMuaCIK
KyNpbmNsdWRlICJQcm94eU9iamVjdC5oIgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtMTEyLDcg
KzExNCw3IEBAIGNvbnN0IFN0cmluZyBJbnRlcm5hbEZ1bmN0aW9uOjpjYWxjdWxhdGUKICAgICBy
ZXR1cm4gbmFtZSgpOwogfQogCi1TdHJ1Y3R1cmUqIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlU2xvdyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IG5ld1RhcmdldCwgU3RydWN0dXJlKiBiYXNlQ2xhc3MpCitTdHJ1Y3R1cmUqIEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTT2JqZWN0KiBuZXdUYXJnZXQsIFN0cnVjdHVyZSogYmFzZUNsYXNzKQogewogICAgIFZN
JiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7CkBAIC0xMzUsNyArMTM3LDcgQEAgU3RydWN0dXJlKiBJbnRlcm5hbEZ1bmN0
aW9uOjpjcmVhdGVTdWJjbAogICAgICAgICBpZiAoSlNPYmplY3QqIHByb3RvdHlwZSA9IGpzRHlu
YW1pY0Nhc3Q8SlNPYmplY3QqPih2bSwgcHJvdG90eXBlVmFsdWUpKQogICAgICAgICAgICAgcmV0
dXJuIHJhcmVEYXRhLT5jcmVhdGVJbnRlcm5hbEZ1bmN0aW9uQWxsb2NhdGlvblN0cnVjdHVyZUZy
b21CYXNlKHZtLCBiYXNlR2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIGJhc2VDbGFzcyk7CiAgICAg
fSBlbHNlIHsKLSAgICAgICAgSlNWYWx1ZSBwcm90b3R5cGVWYWx1ZSA9IG5ld1RhcmdldC5nZXQo
Z2xvYmFsT2JqZWN0LCB2bS5wcm9wZXJ0eU5hbWVzLT5wcm90b3R5cGUpOworICAgICAgICBKU1Zh
bHVlIHByb3RvdHlwZVZhbHVlID0gbmV3VGFyZ2V0LT5nZXQoZ2xvYmFsT2JqZWN0LCB2bS5wcm9w
ZXJ0eU5hbWVzLT5wcm90b3R5cGUpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCBudWxscHRyKTsKICAgICAgICAgaWYgKEpTT2JqZWN0KiBwcm90b3R5cGUgPSBqc0R5bmFtaWND
YXN0PEpTT2JqZWN0Kj4odm0sIHByb3RvdHlwZVZhbHVlKSkgewogICAgICAgICAgICAgLy8gVGhp
cyBvbmx5IGhhcHBlbnMgaWYgc29tZW9uZSBSZWZsZWN0LmNvbnN0cnVjdHMgb3VyIGJ1aWx0aW4g
Y29uc3RydWN0b3Igd2l0aCBhbm90aGVyIGJ1aWx0aW4gY29uc3RydWN0b3IgYXMgdGhlIG5ldy50
YXJnZXQuCkBAIC0xNDcsNSArMTQ5LDI2IEBAIFN0cnVjdHVyZSogSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2wKICAgICByZXR1cm4gYmFzZUNsYXNzOwogfQogCisvLyBodHRwczovL3RjMzku
ZXMvZWNtYTI2Mi8jc2VjLWdldGZ1bmN0aW9ucmVhbG0KK0pTR2xvYmFsT2JqZWN0KiBnZXRGdW5j
dGlvblJlYWxtKFZNJiB2bSwgSlNPYmplY3QqIG9iamVjdCkKK3sKKyAgICBBU1NFUlQob2JqZWN0
LT5pc0Z1bmN0aW9uKHZtKSk7CisKKyAgICBpZiAob2JqZWN0LT5pbmhlcml0czxKU0JvdW5kRnVu
Y3Rpb24+KHZtKSkKKyAgICAgICAgcmV0dXJuIGdldEZ1bmN0aW9uUmVhbG0odm0sIGpzQ2FzdDxK
U0JvdW5kRnVuY3Rpb24qPihvYmplY3QpLT50YXJnZXRGdW5jdGlvbigpKTsKKworICAgIGlmIChv
YmplY3QtPnR5cGUoKSA9PSBQcm94eU9iamVjdFR5cGUpIHsKKyAgICAgICAgYXV0byogcHJveHkg
PSBqc0Nhc3Q8UHJveHlPYmplY3QqPihvYmplY3QpOworICAgICAgICAvLyBQZXIgc3RlcCA0LmEs
IGEgVHlwZUVycm9yIHNob3VsZCBiZSB0aHJvd24gZm9yIHJldm9rZWQgUHJveHksIHlldCB3ZSBz
a2lwIGl0IHNpbmNlOgorICAgICAgICAvLyBhKSBJdCBpcyBiYXJlbHkgb2JzZXJ2YWJsZSBhbnl3
YXk6ICJwcm90b3R5cGUiIGxvb2t1cCBpbiBjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSgpIHdpbGwg
dGhyb3cgZm9yIHJldm9rZWQgUHJveHkuCisgICAgICAgIC8vIGIpIFRocm93aW5nIGdldEZ1bmN0
aW9uUmVhbG0oKSB3aWxsIHJlc3RyaWN0IGNhbGxpbmcgaXQgaW5saW5lIGFzIGFuIGFyZ3VtZW50
IG9mIGNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKCkuCisgICAgICAgIC8vIGMpIFRoZXJlIGlzIG9u
Z29pbmcgZGlzY3Vzc2lvbiBvbiByZW1vdmluZyBpdDogaHR0cHM6Ly9naXRodWIuY29tL3RjMzkv
ZWNtYTI2Mi9pc3N1ZXMvMTc5OC4KKyAgICAgICAgaWYgKCFwcm94eS0+aXNSZXZva2VkKCkpCisg
ICAgICAgICAgICByZXR1cm4gZ2V0RnVuY3Rpb25SZWFsbSh2bSwgcHJveHktPnRhcmdldCgpKTsK
KyAgICB9CisKKyAgICByZXR1cm4gb2JqZWN0LT5nbG9iYWxPYmplY3Qodm0pOworfQorCiAKIH0g
Ly8gbmFtZXNwYWNlIEpTQwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
ZXJuYWxGdW5jdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGVybmFsRnVuY3Rpb24uaAkocmV2aXNpb24gMjYwNzIzKQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC01
Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIFN0cnVjdHVyZTo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIHByb3RvLCBUeXBlSW5mbyhJbnRlcm5hbEZ1bmN0aW9uVHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCkpOyAKICAgICB9CiAKLSAgICBzdGF0aWMgU3RydWN0dXJlKiBj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShKU0dsb2JhbE9iamVjdCosIEpTT2JqZWN0KiBiYXNlQ2Fs
bGVlLCBKU1ZhbHVlIG5ld1RhcmdldCwgU3RydWN0dXJlKik7CisgICAgSlNfRVhQT1JUX1BSSVZB
VEUgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoSlNHbG9iYWxPYmpl
Y3QqLCBKU09iamVjdCogbmV3VGFyZ2V0LCBTdHJ1Y3R1cmUqKTsKIAogICAgIFRhZ2dlZE5hdGl2
ZUZ1bmN0aW9uIG5hdGl2ZUZ1bmN0aW9uRm9yKENvZGVTcGVjaWFsaXphdGlvbktpbmQga2luZCkK
ICAgICB7CkBAIC04OCw4ICs4OCw2IEBAIHByb3RlY3RlZDoKICAgICBlbnVtIGNsYXNzIE5hbWVB
ZGRpdGlvbk1vZGUgeyBXaXRoU3RydWN0dXJlVHJhbnNpdGlvbiwgV2l0aG91dFN0cnVjdHVyZVRy
YW5zaXRpb24gfTsKICAgICBKU19FWFBPUlRfUFJJVkFURSB2b2lkIGZpbmlzaENyZWF0aW9uKFZN
JiwgY29uc3QgU3RyaW5nJiBuYW1lLCBOYW1lQWRkaXRpb25Nb2RlID0gTmFtZUFkZGl0aW9uTW9k
ZTo6V2l0aFN0cnVjdHVyZVRyYW5zaXRpb24pOwogCi0gICAgSlNfRVhQT1JUX1BSSVZBVEUgc3Rh
dGljIFN0cnVjdHVyZSogY3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmVTbG93KEpTR2xvYmFsT2JqZWN0
KiwgSlNWYWx1ZSBuZXdUYXJnZXQsIFN0cnVjdHVyZSopOwotCiAgICAgSlNfRVhQT1JUX1BSSVZB
VEUgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1
Y3REYXRhJik7CiAgICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIENhbGxUeXBlIGdldENhbGxE
YXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAKQEAgLTk5LDEzICs5Nyw2IEBAIHByb3RlY3RlZDoK
ICAgICBXcml0ZUJhcnJpZXI8SlNHbG9iYWxPYmplY3Q+IG1fZ2xvYmFsT2JqZWN0OwogfTsKIAot
QUxXQVlTX0lOTElORSBTdHJ1Y3R1cmUqIEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2JqZWN0KiBiYXNlQ2Fs
bGVlLCBKU1ZhbHVlIG5ld1RhcmdldCwgU3RydWN0dXJlKiBiYXNlQ2xhc3MpCi17Ci0gICAgLy8g
V2UgYWxsb3cgbmV3VGFyZ2V0ID09IEpTVmFsdWUoKSBiZWNhdXNlIHRoZSBBUEkgbmVlZHMgdG8g
YmUgYWJsZSB0byBjcmVhdGUgY2xhc3NlcyB3aXRob3V0IGhhdmluZyBhIHJlYWwgSlMgZnJhbWUu
Ci0gICAgLy8gU2luY2Ugd2UgZG9uJ3QgYWxsb3cgc3ViY2xhc3NpbmcgaW4gdGhlIEFQSSB3ZSBq
dXN0IHRyZWF0IG5ld1RhcmdldCA9PSBKU1ZhbHVlKCkgYXMgbmV3VGFyZ2V0ID09IGNhbGxGcmFt
ZS0+anNDYWxsZWUoKQotICAgIGlmIChuZXdUYXJnZXQgJiYgbmV3VGFyZ2V0ICE9IGJhc2VDYWxs
ZWUpCi0gICAgICAgIHJldHVybiBjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZVNsb3coZ2xvYmFsT2Jq
ZWN0LCBuZXdUYXJnZXQsIGJhc2VDbGFzcyk7Ci0gICAgcmV0dXJuIGJhc2VDbGFzczsKLX0KK0pT
X0VYUE9SVF9QUklWQVRFIEpTR2xvYmFsT2JqZWN0KiBnZXRGdW5jdGlvblJlYWxtKFZNJiwgSlNP
YmplY3QqKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwCShy
ZXZpc2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29s
bGF0b3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkxLDggKzkxLDEyIEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdU
YXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24g
b2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBj
b2xsYXRvciBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVDb2xs
YXRvclByb3RvdHlwZSUpLgogICAgIC8vIDMuIFJldHVybklmQWJydXB0KGNvbGxhdG9yKS4KLSAg
ICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNz
U3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUt
Pm5ld1RhcmdldCgpLCBqc0Nhc3Q8SW50bENvbGxhdG9yQ29uc3RydWN0b3IqPihjYWxsRnJhbWUt
PmpzQ2FsbGVlKCkpLT5jb2xsYXRvclN0cnVjdHVyZSh2bSkpOwotICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQg
PSBhc09iamVjdChjYWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSA9IG5ld1RhcmdldCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9i
YWxPYmplY3QtPmNvbGxhdG9yU3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9u
OjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVu
Y3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0KS0+Y29sbGF0b3JTdHJ1Y3R1cmUoKSk7CisgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKKwogICAgIEludGxDb2xsYXRvciogY29sbGF0
b3IgPSBJbnRsQ29sbGF0b3I6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBBU1NFUlQoY29s
bGF0b3IpOwogCkBAIC0xMDksMTQgKzExMywxMiBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjYWxsCiAgICAgLy8gTmV3VGFyZ2V0IGlzIGFsd2F5cyB1bmRlZmluZWQgd2hl
biBjYWxsZWQgYXMgYSBmdW5jdGlvbi4KIAogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0o
KTsKLSAgICBJbnRsQ29sbGF0b3JDb25zdHJ1Y3RvciogY2FsbGVlID0ganNDYXN0PEludGxDb2xs
YXRvckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKTsKLQotICAgIC8vIEZJWE1F
OiBDb2xsYXRvciBkb2VzIG5vdCBnZXQgdGhlIHdvcmthcm91bmQgZm9yIEVDTUEtNDAyIDEuMCBj
b21wYXRpYmlsaXR5LgorICAgIC8vIENvbGxhdG9yIGRvZXMgbm90IHJlcXVpcmUgdGhlIHdvcmth
cm91bmQgZm9yIEVDTUEtNDAyIDEuMCBjb21wYXRpYmlsaXR5LgogICAgIC8vIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTM2NzkKIAogICAgIC8vIDIuIExldCBjb2xs
YXRvciBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVDb2xsYXRv
clByb3RvdHlwZSUpLgogICAgIC8vIDMuIFJldHVybklmQWJydXB0KGNvbGxhdG9yKS4KLSAgICBJ
bnRsQ29sbGF0b3IqIGNvbGxhdG9yID0gSW50bENvbGxhdG9yOjpjcmVhdGUodm0sIGNhbGxlZS0+
Y29sbGF0b3JTdHJ1Y3R1cmUodm0pKTsKKyAgICBJbnRsQ29sbGF0b3IqIGNvbGxhdG9yID0gSW50
bENvbGxhdG9yOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdC0+Y29sbGF0b3JTdHJ1Y3R1cmUoKSk7
CiAgICAgQVNTRVJUKGNvbGxhdG9yKTsKIAogICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXplQ29s
bGF0b3IoY29sbGF0b3IsIGxvY2FsZXMsIG9wdGlvbnMpLgpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5oCShy
ZXZpc2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29s
bGF0b3JDb25zdHJ1Y3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC00Myw4ICs0Myw2IEBAIHB1Ymxp
YzoKIAogICAgIERFQ0xBUkVfSU5GTzsKIAotICAgIFN0cnVjdHVyZSogY29sbGF0b3JTdHJ1Y3R1
cmUoVk0mKSBjb25zdCB7IHJldHVybiBnbG9iYWxPYmplY3QoKS0+Y29sbGF0b3JTdHJ1Y3R1cmUo
KTsgfQotCiBwcml2YXRlOgogICAgIEludGxDb2xsYXRvckNvbnN0cnVjdG9yKFZNJiwgU3RydWN0
dXJlKik7CiAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIEludGxDb2xsYXRvclByb3RvdHlw
ZSopOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwNzIz
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29u
c3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSw4ICs5MSwxMiBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAgLy8gMS4gSWYgTmV3VGFyZ2V0IGlz
IHVuZGVmaW5lZCwgbGV0IG5ld1RhcmdldCBiZSB0aGUgYWN0aXZlIGZ1bmN0aW9uIG9iamVjdCwg
ZWxzZSBsZXQgbmV3VGFyZ2V0IGJlIE5ld1RhcmdldC4KICAgICAvLyAyLiBMZXQgZGF0ZVRpbWVG
b3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUlKS4KICAgICAvLyAzLiBSZXR1cm5JZkFicnVwdChkYXRlVGltZUZv
cm1hdCkuCi0gICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwg
Y2FsbEZyYW1lLT5uZXdUYXJnZXQoKSwganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUodm0p
KTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAg
ICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7
CisgICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5kYXRlVGltZUZvcm1hdFN0cnVjdHVyZSgp
CisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xv
YmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPmRh
dGVUaW1lRm9ybWF0U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IHsgfSk7CisKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGRhdGVUaW1lRm9ybWF0ID0gSW50bERh
dGVUaW1lRm9ybWF0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7CiAgICAgQVNTRVJUKGRhdGVUaW1l
Rm9ybWF0KTsKIApAQCAtMTA4LDE0ICsxMTIsMTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY2FsbAogICAgIC8vIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIGxl
dCBuZXdUYXJnZXQgYmUgdGhlIGFjdGl2ZSBmdW5jdGlvbiBvYmplY3QsIGVsc2UgbGV0IG5ld1Rh
cmdldCBiZSBOZXdUYXJnZXQuCiAgICAgLy8gTmV3VGFyZ2V0IGlzIGFsd2F5cyB1bmRlZmluZWQg
d2hlbiBjYWxsZWQgYXMgYSBmdW5jdGlvbi4KIAotICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yKiBjYWxsZWUgPSBqc0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqPihj
YWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwotCiAgICAgLy8gRklYTUU6IFdvcmthcm91bmQgdG8gcHJv
dmlkZSBjb21wYXRpYmlsaXR5IHdpdGggRUNNQS00MDIgMS4wIGNhbGwvYXBwbHkgcGF0dGVybnMu
CiAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzY3OQot
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0SW50bEluc3RhbmNlV2l0aFdvcmth
cm91bmRGb3JMZWdhY3lJbnRsQ29uc3RydWN0b3I8SW50bERhdGVUaW1lRm9ybWF0PihnbG9iYWxP
YmplY3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCksIGNhbGxlZSwgWyZdIChWTSYgdm0pIHsKKyAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEludGxJbnN0YW5jZVdpdGhXb3JrYXJv
dW5kRm9yTGVnYWN5SW50bENvbnN0cnVjdG9yPEludGxEYXRlVGltZUZvcm1hdD4oZ2xvYmFsT2Jq
ZWN0LCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpLCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIFsmXSAo
Vk0mIHZtKSB7CiAgICAgICAgIC8vIDIuIExldCBkYXRlVGltZUZvcm1hdCBiZSBPcmRpbmFyeUNy
ZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQsICVEYXRlVGltZUZvcm1hdFByb3RvdHlwZSUp
LgogICAgICAgICAvLyAzLiBSZXR1cm5JZkFicnVwdChkYXRlVGltZUZvcm1hdCkuCi0gICAgICAg
IEludGxEYXRlVGltZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQgPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OmNyZWF0ZSh2bSwgY2FsbGVlLT5kYXRlVGltZUZvcm1hdFN0cnVjdHVyZSh2bSkpOworICAgICAg
ICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGRhdGVUaW1lRm9ybWF0ID0gSW50bERhdGVUaW1lRm9ybWF0
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdC0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUoKSk7CiAg
ICAgICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAKICAgICAgICAgLy8gNC4gUmV0dXJuIElu
aXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucyku
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRD
b25zdHJ1Y3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDcyMykKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQzLDggKzQzLDYgQEAgcHVibGljOgogCiAgICAgREVDTEFS
RV9JTkZPOwogCi0gICAgU3RydWN0dXJlKiBkYXRlVGltZUZvcm1hdFN0cnVjdHVyZShWTSYpIGNv
bnN0IHsgcmV0dXJuIGdsb2JhbE9iamVjdCgpLT5kYXRlVGltZUZvcm1hdFN0cnVjdHVyZSgpOyB9
Ci0KIHByaXZhdGU6CiAgICAgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IoVk0mLCBTdHJ1
Y3R1cmUqKTsKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlKik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVt
YmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2
MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRD
b25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkxLDggKzkxLDEyIEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQg
aXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBhY3RpdmUgZnVuY3Rpb24gb2JqZWN0
LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0LgogICAgIC8vIDIuIExldCBudW1iZXJG
b3JtYXQgYmUgT3JkaW5hcnlDcmVhdGVGcm9tQ29uc3RydWN0b3IobmV3VGFyZ2V0LCAlTnVtYmVy
Rm9ybWF0UHJvdG90eXBlJSkuCiAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQobnVtYmVyRm9ybWF0
KS4KLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxs
RnJhbWUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yKj4o
Y2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKHZtKSk7Ci0gICAg
UkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgSlNPYmpl
Y3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0
cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQor
ICAgICAgICA/IGdsb2JhbE9iamVjdC0+bnVtYmVyRm9ybWF0U3RydWN0dXJlKCkKKyAgICAgICAg
OiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3Qs
IG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0KS0+bnVtYmVyRm9ybWF0
U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CisKICAg
ICBJbnRsTnVtYmVyRm9ybWF0KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0OjpjcmVh
dGUodm0sIHN0cnVjdHVyZSk7CiAgICAgQVNTRVJUKG51bWJlckZvcm1hdCk7CiAKQEAgLTEwOCwx
NCArMTEyLDEyIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGwKICAg
ICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCBsZXQgbmV3VGFyZ2V0IGJlIHRoZSBh
Y3RpdmUgZnVuY3Rpb24gb2JqZWN0LCBlbHNlIGxldCBuZXdUYXJnZXQgYmUgTmV3VGFyZ2V0Lgog
ICAgIC8vIE5ld1RhcmdldCBpcyBhbHdheXMgdW5kZWZpbmVkIHdoZW4gY2FsbGVkIGFzIGEgZnVu
Y3Rpb24uCiAKLSAgICBJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IqIGNhbGxlZSA9IGpzQ2Fz
dDxJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IqPihjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwot
CiAgICAgLy8gRklYTUU6IFdvcmthcm91bmQgdG8gcHJvdmlkZSBjb21wYXRpYmlsaXR5IHdpdGgg
RUNNQS00MDIgMS4wIGNhbGwvYXBwbHkgcGF0dGVybnMuCiAgICAgLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzY3OQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUoY29uc3RydWN0SW50bEluc3RhbmNlV2l0aFdvcmthcm91bmRGb3JMZWdhY3lJbnRsQ29uc3Ry
dWN0b3I8SW50bE51bWJlckZvcm1hdD4oZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPnRoaXNWYWx1
ZSgpLCBjYWxsZWUsIFsmXSAoVk0mIHZtKSB7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShj
b25zdHJ1Y3RJbnRsSW5zdGFuY2VXaXRoV29ya2Fyb3VuZEZvckxlZ2FjeUludGxDb25zdHJ1Y3Rv
cjxJbnRsTnVtYmVyRm9ybWF0PihnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCks
IGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgWyZdIChWTSYgdm0pIHsKICAgICAgICAgLy8gMi4gTGV0
IG51bWJlckZvcm1hdCBiZSBPcmRpbmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihuZXdUYXJnZXQs
ICVOdW1iZXJGb3JtYXRQcm90b3R5cGUlKS4KICAgICAgICAgLy8gMy4gUmV0dXJuSWZBYnJ1cHQo
bnVtYmVyRm9ybWF0KS4KLSAgICAgICAgSW50bE51bWJlckZvcm1hdCogbnVtYmVyRm9ybWF0ID0g
SW50bE51bWJlckZvcm1hdDo6Y3JlYXRlKHZtLCBjYWxsZWUtPm51bWJlckZvcm1hdFN0cnVjdHVy
ZSh2bSkpOworICAgICAgICBJbnRsTnVtYmVyRm9ybWF0KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVt
YmVyRm9ybWF0OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdC0+bnVtYmVyRm9ybWF0U3RydWN0dXJl
KCkpOwogICAgICAgICBBU1NFUlQobnVtYmVyRm9ybWF0KTsKIAogICAgICAgICAvLyA0LiBSZXR1
cm4gSW5pdGlhbGl6ZU51bWJlckZvcm1hdChudW1iZXJGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMp
LgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENv
bnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmgJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oCSh3
b3JraW5nIGNvcHkpCkBAIC00Myw4ICs0Myw2IEBAIHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAotICAgIFN0cnVjdHVyZSogbnVtYmVyRm9ybWF0U3RydWN0dXJlKFZNJikgY29uc3QgeyBy
ZXR1cm4gZ2xvYmFsT2JqZWN0KCktPm51bWJlckZvcm1hdFN0cnVjdHVyZSgpOyB9Ci0KIHByaXZh
dGU6CiAgICAgSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yKFZNJiwgU3RydWN0dXJlKik7CiAg
ICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUqKTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0
cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtODksOCArODksMTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29ucwogCiAgICAgLy8gMTMuMi4xIEludGwuUGx1cmFsUnVsZXMgKFsgbG9j
YWxlcyBbICwgb3B0aW9ucyBdIF0pCiAgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21h
NDAyLyNzZWMtaW50bC5wbHVyYWxydWxlcwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpzQ2FzdDxJbnRsUGx1
cmFsUnVsZXNDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPnBsdXJhbFJ1bGVz
U3RydWN0dXJlKHZtKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+
bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNh
bGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+cGx1cmFsUnVsZXNT
dHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdU
YXJnZXQpLT5wbHVyYWxSdWxlc1N0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCB7IH0pOworCiAgICAgSW50bFBsdXJhbFJ1bGVzKiBwbHVyYWxSdWxlcyA9IEludGxQ
bHVyYWxSdWxlczo6Y3JlYXRlKHZtLCBzdHJ1Y3R1cmUpOwogICAgIEFTU0VSVChwbHVyYWxSdWxl
cyk7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxl
c0NvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaAkocmV2aXNpb24gMjYwNzIzKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuaAko
d29ya2luZyBjb3B5KQpAQCAtNDMsOCArNDMsNiBAQCBwdWJsaWM6CiAKICAgICBERUNMQVJFX0lO
Rk87CiAKLSAgICBTdHJ1Y3R1cmUqIHBsdXJhbFJ1bGVzU3RydWN0dXJlKFZNJikgY29uc3QgeyBy
ZXR1cm4gZ2xvYmFsT2JqZWN0KCktPnBsdXJhbFJ1bGVzU3RydWN0dXJlKCk7IH0KLQogcHJpdmF0
ZToKICAgICBJbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3RvcihWTSYsIFN0cnVjdHVyZSopOwogICAg
IHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUqKTsKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRD
b25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwNzIz
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1h
dENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODcsOCArODcsMTIgQEAgc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGdsb2JhbE9i
amVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAK
LSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNs
YXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJh
bWUtPm5ld1RhcmdldCgpLCBqc0Nhc3Q8SW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9y
Kj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+cmVsYXRpdmVUaW1lRm9ybWF0U3RydWN0dXJlKHZt
KSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Cisg
ICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkp
OworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anND
YWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+cmVsYXRpdmVUaW1lRm9ybWF0U3RydWN0
dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0
KS0+cmVsYXRpdmVUaW1lRm9ybWF0U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHsgfSk7CisKICAgICBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0KiByZWxhdGl2ZVRp
bWVGb3JtYXQgPSBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0OjpjcmVhdGUodm0sIHN0cnVjdHVyZSk7
CiAgICAgQVNTRVJUKHJlbGF0aXZlVGltZUZvcm1hdCk7CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvci5oCShyZXZpc2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDIsOCArNDIsNiBAQCBwdWJsaWM6CiAKICAgICBERUNMQVJFX0lORk87CiAK
LSAgICBTdHJ1Y3R1cmUqIHJlbGF0aXZlVGltZUZvcm1hdFN0cnVjdHVyZShWTSYpIGNvbnN0IHsg
cmV0dXJuIGdsb2JhbE9iamVjdCgpLT5yZWxhdGl2ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUoKTsgfQot
CiBwcml2YXRlOgogICAgIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvcihWTSYsIFN0
cnVjdHVyZSopOwogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBJbnRsUmVsYXRpdmVUaW1l
Rm9ybWF0UHJvdG90eXBlKik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2
MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25z
dHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc5LDkgKzc5LDEwIEBAIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgSlNHZW5lcmljQXIKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3Qt
PnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAg
SlNHZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3RvciogY29uc3RydWN0b3IgPSBqc0Nhc3Q8SlNH
ZW5lcmljQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7Ci0K
LSAgICBTdHJ1Y3R1cmUqIGFycmF5QnVmZmVyU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVl
KCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGNvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKS0+
YXJyYXlCdWZmZXJTdHJ1Y3R1cmUoc2hhcmluZ01vZGUpKTsKKyAgICBKU09iamVjdCogbmV3VGFy
Z2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJlKiBh
cnJheUJ1ZmZlclN0cnVjdHVyZSA9IG5ld1RhcmdldCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkK
KyAgICAgICAgPyBnbG9iYWxPYmplY3QtPmFycmF5QnVmZmVyU3RydWN0dXJlKHNoYXJpbmdNb2Rl
KQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGds
b2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT5h
cnJheUJ1ZmZlclN0cnVjdHVyZShzaGFyaW5nTW9kZSkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHsgfSk7CiAKICAgICB1bnNpZ25lZCBsZW5ndGg7CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAkocmV2aXNpb24gMjYwNzIzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTE3NCwxOCArMTc0LDE3IEBAIEpTT2JqZWN0KiBKU0Z1bmN0aW9uOjpwcm90b3R5
cGVGb3JDb25zdHIKICAgICBzY29wZS5yZWxlYXNlQXNzZXJ0Tm9FeGNlcHRpb24oKTsKICAgICBp
ZiAoTElLRUxZKHByb3RvdHlwZS5pc09iamVjdCgpKSkKICAgICAgICAgcmV0dXJuIGFzT2JqZWN0
KHByb3RvdHlwZSk7CisgICAgaWYgKGlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkpCisgICAgICAg
IHJldHVybiB0aGlzLT5nbG9iYWxPYmplY3QoKS0+b2JqZWN0UHJvdG90eXBlKCk7CiAKLSAgICBK
U0dsb2JhbE9iamVjdCogdGhpc0dsb2JhbE9iamVjdCA9IHRoaXMtPmdsb2JhbE9iamVjdCgpOwot
ICAgIGlmICghaXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICAvLyBodHRwczov
L3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1nZW5lcmF0b3ItZnVuY3Rpb24tZGVmaW5pdGlv
bnMtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGVib2R5Ci0gICAgICAgIGlmIChpc0dlbmVyYXRv
cldyYXBwZXJQYXJzZU1vZGUoanNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgpKSkKLSAgICAgICAg
ICAgIHJldHVybiB0aGlzR2xvYmFsT2JqZWN0LT5nZW5lcmF0b3JQcm90b3R5cGUoKTsKLQotICAg
ICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1hc3luY2dlbmVyYXRv
ci1kZWZpbml0aW9ucy1ldmFsdWF0ZWJvZHkKLSAgICAgICAgaWYgKGlzQXN5bmNHZW5lcmF0b3JX
cmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpCi0gICAgICAgICAg
ICByZXR1cm4gdGhpc0dsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JQcm90b3R5cGUoKTsKLSAg
ICB9Ci0gICAgcmV0dXJuIHRoaXNHbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpOworICAg
IEpTR2xvYmFsT2JqZWN0KiBzY29wZUdsb2JhbE9iamVjdCA9IHRoaXMtPnNjb3BlKCktPmdsb2Jh
bE9iamVjdCgpOworICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLWdl
bmVyYXRvci1mdW5jdGlvbi1kZWZpbml0aW9ucy1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0ZWJv
ZHkKKyAgICBpZiAoaXNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5w
YXJzZU1vZGUoKSkpCisgICAgICAgIHJldHVybiBzY29wZUdsb2JhbE9iamVjdC0+Z2VuZXJhdG9y
UHJvdG90eXBlKCk7CisgICAgLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMt
YXN5bmNnZW5lcmF0b3ItZGVmaW5pdGlvbnMtZXZhbHVhdGVib2R5CisgICAgaWYgKGlzQXN5bmNH
ZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKGpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpCisg
ICAgICAgIHJldHVybiBzY29wZUdsb2JhbE9iamVjdC0+YXN5bmNHZW5lcmF0b3JQcm90b3R5cGUo
KTsKKyAgICByZXR1cm4gc2NvcGVHbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpOwogfQog
CiBGdW5jdGlvblJhcmVEYXRhKiBKU0Z1bmN0aW9uOjphbGxvY2F0ZUFuZEluaXRpYWxpemVSYXJl
RGF0YShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBzaXplX3QgaW5saW5lQ2FwYWNpdHkp
CkBAIC00NjAsMTYgKzQ1OSwxNyBAQCBib29sIEpTRnVuY3Rpb246OmdldE93blByb3BlcnR5U2xv
dChKU09iCiAgICAgICAgIHVuc2lnbmVkIGF0dHJpYnV0ZXM7CiAgICAgICAgIFByb3BlcnR5T2Zm
c2V0IG9mZnNldCA9IHRoaXNPYmplY3QtPmdldERpcmVjdE9mZnNldCh2bSwgcHJvcGVydHlOYW1l
LCBhdHRyaWJ1dGVzKTsKICAgICAgICAgaWYgKCFpc1ZhbGlkT2Zmc2V0KG9mZnNldCkpIHsKKyAg
ICAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBzY29wZUdsb2JhbE9iamVjdCA9IHRoaXNPYmplY3Qt
PnNjb3BlKCktPmdsb2JhbE9iamVjdCgpOwogICAgICAgICAgICAgSlNPYmplY3QqIHByb3RvdHlw
ZSA9IG51bGxwdHI7CiAgICAgICAgICAgICBpZiAoaXNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2Rl
KHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5wYXJzZU1vZGUoKSkpIHsKICAgICAgICAgICAg
ICAgICAvLyBVbmxpa2UgZnVuY3Rpb24gaW5zdGFuY2VzLCB0aGUgb2JqZWN0IHRoYXQgaXMgdGhl
IHZhbHVlIG9mIHRoZSBhIEdlbmVyYXRvckZ1bmN0aW9uJ3MgcHJvdG90eXBlCiAgICAgICAgICAg
ICAgICAgLy8gcHJvcGVydHkgZG9lcyBub3QgaGF2ZSBhIGNvbnN0cnVjdG9yIHByb3BlcnR5IHdo
b3NlIHZhbHVlIGlzIHRoZSBHZW5lcmF0b3JGdW5jdGlvbiBpbnN0YW5jZS4KICAgICAgICAgICAg
ICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1nZW5lcmF0b3JmdW5j
dGlvbi1pbnN0YW5jZXMtcHJvdG90eXBlCi0gICAgICAgICAgICAgICAgcHJvdG90eXBlID0gY29u
c3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCB0aGlzT2JqZWN0LT5nbG9iYWxPYmplY3Qo
KS0+Z2VuZXJhdG9yUHJvdG90eXBlKCkpOworICAgICAgICAgICAgICAgIHByb3RvdHlwZSA9IGNv
bnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCwgc2NvcGVHbG9iYWxPYmplY3QtPmdlbmVy
YXRvclByb3RvdHlwZSgpKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNBc3luY0dlbmVyYXRv
cldyYXBwZXJQYXJzZU1vZGUodGhpc09iamVjdC0+anNFeGVjdXRhYmxlKCktPnBhcnNlTW9kZSgp
KSkKLSAgICAgICAgICAgICAgICBwcm90b3R5cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChnbG9i
YWxPYmplY3QsIHRoaXNPYmplY3QtPmdsb2JhbE9iamVjdCgpLT5hc3luY0dlbmVyYXRvclByb3Rv
dHlwZSgpKTsKKyAgICAgICAgICAgICAgICBwcm90b3R5cGUgPSBjb25zdHJ1Y3RFbXB0eU9iamVj
dChnbG9iYWxPYmplY3QsIHNjb3BlR2xvYmFsT2JqZWN0LT5hc3luY0dlbmVyYXRvclByb3RvdHlw
ZSgpKTsKICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIHByb3RvdHlwZSA9IGNv
bnN0cnVjdEVtcHR5T2JqZWN0KGdsb2JhbE9iamVjdCk7CisgICAgICAgICAgICAgICAgcHJvdG90
eXBlID0gY29uc3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0LCBzY29wZUdsb2JhbE9iamVj
dC0+b2JqZWN0UHJvdG90eXBlKCkpOwogICAgICAgICAgICAgICAgIHByb3RvdHlwZS0+cHV0RGly
ZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgdGhpc09iamVjdCwgc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogICAgICAgICAg
ICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBl
ZEFycmF5Vmlld0NvbnN0cnVjdG9ySW5saW5lcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxp
bmVzLmgJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3JJbmxpbmVzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIxMSwxMCArMjExLDExIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
c3RydWN0R2UKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgSW50ZXJuYWxGdW5jdGlvbiogZnVu
Y3Rpb24gPSBqc0Nhc3Q8SW50ZXJuYWxGdW5jdGlvbio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSk7
Ci0gICAgU3RydWN0dXJlKiBwYXJlbnRTdHJ1Y3R1cmUgPSBmdW5jdGlvbi0+Z2xvYmFsT2JqZWN0
KCktPnR5cGVkQXJyYXlTdHJ1Y3R1cmUoVmlld0NsYXNzOjpUeXBlZEFycmF5U3RvcmFnZVR5cGUp
OwotICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3Vi
Y2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxG
cmFtZS0+bmV3VGFyZ2V0KCksIHBhcmVudFN0cnVjdHVyZSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9
IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0
dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2Jh
bE9iamVjdC0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdl
VHlwZSkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVy
ZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0
KS0+dHlwZWRBcnJheVN0cnVjdHVyZShWaWV3Q2xhc3M6OlR5cGVkQXJyYXlTdG9yYWdlVHlwZSkp
OworICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAKICAgICBzaXplX3QgYXJn
Q291bnQgPSBjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKTsKIApJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3RJbmxpbmVzLmgJKHJl
dmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFs
T2JqZWN0SW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDEsNyArMTAxLDkgQEAgQUxXQVlT
X0lOTElORSBib29sIEpTR2xvYmFsT2JqZWN0Ojppc1NldAogCiBBTFdBWVNfSU5MSU5FIFN0cnVj
dHVyZSogSlNHbG9iYWxPYmplY3Q6OmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5n
QWxsb2NhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBJbmRleGluZ1R5cGUgaW5k
ZXhpbmdUeXBlLCBKU1ZhbHVlIG5ld1RhcmdldCkgY29uc3QKIHsKLSAgICByZXR1cm4gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPmFycmF5Q29uc3RydWN0b3IoKSwgbmV3VGFyZ2V0LCBhcnJheVN0cnVjdHVyZUZvcklu
ZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKSk7CisgICAgcmV0dXJuICFu
ZXdUYXJnZXQgfHwgbmV3VGFyZ2V0ID09IGdsb2JhbE9iamVjdC0+YXJyYXlDb25zdHJ1Y3Rvcigp
CisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1
cmluZ0FsbG9jYXRpb24oaW5kZXhpbmdUeXBlKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgYXNPYmplY3QobmV3VGFyZ2V0
KSwgZ2V0RnVuY3Rpb25SZWFsbShnbG9iYWxPYmplY3QtPnZtKCksIGFzT2JqZWN0KG5ld1Rhcmdl
dCkpLT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRpb24oaW5kZXhp
bmdUeXBlKSk7CiB9CiAKIGlubGluZSBKU0Z1bmN0aW9uKiBKU0dsb2JhbE9iamVjdDo6dGhyb3dU
eXBlRXJyb3JGdW5jdGlvbigpIGNvbnN0IHsgcmV0dXJuIGpzQ2FzdDxKU0Z1bmN0aW9uKj4obGlu
a1RpbWVDb25zdGFudChMaW5rVGltZUNvbnN0YW50Ojp0aHJvd1R5cGVFcnJvckZ1bmN0aW9uKSk7
IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1
Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsOCArNjcsMTEgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIG1hcFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPm1hcFN0cnVjdHVyZSgpKTsK
LSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICBK
U09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7Cisg
ICAgU3RydWN0dXJlKiBtYXBTdHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5tYXBTdHJ1Y3R1cmUoKQorICAgICAgICA6
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
bmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT5tYXBTdHJ1Y3R1cmUo
KSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIEpTVmFsdWUg
aXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIGlmIChpdGVyYWJsZS5pc1Vu
ZGVmaW5lZE9yTnVsbCgpKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0
aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NSwxOCArNTUsMjIgQEAgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBOYXRpdmVFcnJvcgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsK
ICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBt
ZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKLSAgICBTdHJ1Y3R1cmUqIGVycm9yU3Ry
dWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFs
T2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGpz
Q2FzdDxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKj4oY2FsbEZyYW1lLT5qc0NhbGxlZSgpKS0+ZXJy
b3JTdHJ1Y3R1cmUodm0pKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVk
SlNWYWx1ZSgpKTsKKworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJh
bWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gbmV3VGFy
Z2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+ZXJy
b3JTdHJ1Y3R1cmUoZXJyb3JUeXBlKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0
ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJl
YWxtKHZtLCBuZXdUYXJnZXQpLT5lcnJvclN0cnVjdHVyZShlcnJvclR5cGUpKTsKKyAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogICAgIEFTU0VSVChlcnJvclN0cnVjdHVyZSk7
CisKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShFcnJvcklu
c3RhbmNlOjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBlcnJvclN0cnVjdHVyZSwgbWVzc2FnZSwgbnVs
bHB0ciwgVHlwZU5vdGhpbmcsIGZhbHNlKSkpOwogfQogCiB0ZW1wbGF0ZTxFcnJvclR5cGUgZXJy
b3JUeXBlPgogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBOYXRpdmVFcnJvckNvbnN0cnVj
dG9yPGVycm9yVHlwZT46OmNhbGxOYXRpdmVFcnJvckNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewotICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBKU1ZhbHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3Vt
ZW50KDApOwotICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUgPSBqc0Nhc3Q8TmF0aXZlRXJy
b3JDb25zdHJ1Y3Rvcio+KGNhbGxGcmFtZS0+anNDYWxsZWUoKSktPmVycm9yU3RydWN0dXJlKHZt
KTsKKyAgICBTdHJ1Y3R1cmUqIGVycm9yU3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5lcnJvclN0
cnVjdHVyZShlcnJvclR5cGUpOwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0
YW5jZTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgZXJyb3JTdHJ1Y3R1cmUsIG1lc3NhZ2UsIG51bGxw
dHIsIFR5cGVOb3RoaW5nLCBmYWxzZSkpOwogfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oCShyZXZpc2lv
biAyNjA3MjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNv
bnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU5LDggKzU5LDYgQEAgcHVibGljOgogICAg
ICAgICBjb25zdHJ1Y3Rvci0+ZmluaXNoQ3JlYXRpb24odm0sIHByb3RvdHlwZSwgZXJyb3JUeXBl
KTsKICAgICAgICAgcmV0dXJuIGNvbnN0cnVjdG9yOwogICAgIH0KLQotICAgIFN0cnVjdHVyZSog
ZXJyb3JTdHJ1Y3R1cmUoVk0mKSB7IHJldHVybiBnbG9iYWxPYmplY3QoKS0+ZXJyb3JTdHJ1Y3R1
cmUoZXJyb3JUeXBlKTsgfQogcHJpdmF0ZToKICAgICBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjYWxsTmF0aXZlRXJyb3JDb25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIENh
bGxGcmFtZSopOwogICAgIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0
cnVjdE5hdGl2ZUVycm9yQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqKTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25z
dHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIsOCArOTIs
MTIgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGF1dG8g
c2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBkb3VibGUgbiA9IGNhbGxGcmFt
ZS0+YXJndW1lbnRDb3VudCgpID8gY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS50b051
bWJlcihnbG9iYWxPYmplY3QpIDogMDsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5q
c0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPm51bWJlck9i
amVjdFN0cnVjdHVyZSgpKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVk
SlNWYWx1ZSgpKTsKKworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJh
bWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IG5ld1RhcmdldCA9
PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPm51bWJlck9i
amVjdFN0cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0s
IG5ld1RhcmdldCktPm51bWJlck9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgTnVtYmVyT2JqZWN0KiBvYmplY3QgPSBOdW1iZXJP
YmplY3Q6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKTsKICAgICBvYmplY3QtPnNldEludGVybmFsVmFs
dWUodm0sIGpzTnVtYmVyKG4pKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L09iamVjdENvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTI2LDcgKzEyNiw4IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTT2JqZWN0
KiBjb25zdHJ1Y3QKICAgICAvLyAxLiBJZiBOZXdUYXJnZXQgaXMgbmVpdGhlciB1bmRlZmluZWQg
bm9yIHRoZSBhY3RpdmUgZnVuY3Rpb24sIHRoZW4KICAgICBpZiAobmV3VGFyZ2V0ICYmIG5ld1Rh
cmdldCAhPSBvYmplY3RDb25zdHJ1Y3RvcikgewogICAgICAgICAvLyBhLiBSZXR1cm4gPyBPcmRp
bmFyeUNyZWF0ZUZyb21Db25zdHJ1Y3RvcihOZXdUYXJnZXQsICIlT2JqZWN0UHJvdG90eXBlJSIp
LgotICAgICAgICBTdHJ1Y3R1cmUqIG9iamVjdFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246
OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgb2JqZWN0Q29uc3RydWN0b3Is
IG5ld1RhcmdldCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RTdHJ1Y3R1cmVGb3JPYmplY3RDb25zdHJ1
Y3RvcigpKTsKKyAgICAgICAgU3RydWN0dXJlKiBiYXNlU3RydWN0dXJlID0gZ2V0RnVuY3Rpb25S
ZWFsbSh2bSwgYXNPYmplY3QobmV3VGFyZ2V0KSktPm9iamVjdFN0cnVjdHVyZUZvck9iamVjdENv
bnN0cnVjdG9yKCk7CisgICAgICAgIFN0cnVjdHVyZSogb2JqZWN0U3RydWN0dXJlID0gSW50ZXJu
YWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBhc09iamVj
dChuZXdUYXJnZXQpLCBiYXNlU3RydWN0dXJlKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgbnVsbHB0cik7CiAgICAgICAgIHJldHVybiBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2
bSwgb2JqZWN0U3RydWN0dXJlKTsKICAgICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjA3MjMp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE3MiwxMCArMTcyLDkgQEAgYm9vbCBzZXRSZWdFeHBDb25zdHJ1
Y3Rvck11bHRpbGluZShKU0dsbwogCiBpbmxpbmUgU3RydWN0dXJlKiBnZXRSZWdFeHBTdHJ1Y3R1
cmUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBuZXdUYXJnZXQpCiB7Ci0g
ICAgU3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgp
OwotICAgIGlmIChuZXdUYXJnZXQgIT0ganNVbmRlZmluZWQoKSkKLSAgICAgICAgc3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBnbG9iYWxPYmplY3QtPnJlZ0V4cENvbnN0cnVjdG9yKCksIG5ld1RhcmdldCwgc3RydWN0dXJl
KTsKLSAgICByZXR1cm4gc3RydWN0dXJlOworICAgIHJldHVybiAhbmV3VGFyZ2V0IHx8IG5ld1Rh
cmdldCA9PSBnbG9iYWxPYmplY3QtPnJlZ0V4cENvbnN0cnVjdG9yKCkKKyAgICAgICAgPyBnbG9i
YWxPYmplY3QtPnJlZ0V4cFN0cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBhc09iamVjdChuZXdUYXJnZXQp
LCBnZXRGdW5jdGlvblJlYWxtKGdsb2JhbE9iamVjdC0+dm0oKSwgYXNPYmplY3QobmV3VGFyZ2V0
KSktPnJlZ0V4cFN0cnVjdHVyZSgpKTsKIH0KIAogaW5saW5lIE9wdGlvblNldDxZYXJyOjpGbGFn
cz4gdG9GbGFncyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZsYWdzKQpA
QCAtMjI5LDcgKzIyOCw3IEBAIEpTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9iYWxPYmpl
Y3QKICAgICBib29sIGNvbnN0cnVjdEFzUmVnZXhwID0gaXNSZWdFeHAodm0sIGdsb2JhbE9iamVj
dCwgcGF0dGVybkFyZyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7
CiAKLSAgICBpZiAobmV3VGFyZ2V0LmlzVW5kZWZpbmVkKCkgJiYgY29uc3RydWN0QXNSZWdleHAg
JiYgZmxhZ3NBcmcuaXNVbmRlZmluZWQoKSkgeworICAgIGlmICghbmV3VGFyZ2V0ICYmIGNvbnN0
cnVjdEFzUmVnZXhwICYmIGZsYWdzQXJnLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNWYWx1
ZSBjb25zdHJ1Y3RvciA9IHBhdHRlcm5BcmcuZ2V0KGdsb2JhbE9iamVjdCwgdm0ucHJvcGVydHlO
YW1lcy0+Y29uc3RydWN0b3IpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBu
dWxscHRyKTsKICAgICAgICAgaWYgKGNhbGxlZSA9PSBjb25zdHJ1Y3RvcikgewpAQCAtMjc0LDcg
KzI3Myw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXNTcGVjUmVnRXgKIHsKICAg
ICBKU1ZhbHVlIHBhdHRlcm5BcmcgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIEpTVmFs
dWUgZmxhZ3NBcmcgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDEpOwotICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUocmVnRXhwQ3JlYXRlKGdsb2JhbE9iamVjdCwganNVbmRlZmluZWQoKSwgcGF0dGVy
bkFyZywgZmxhZ3NBcmcpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlZ0V4cENyZWF0
ZShnbG9iYWxPYmplY3QsIEpTVmFsdWUoKSwgcGF0dGVybkFyZywgZmxhZ3NBcmcpKTsKIH0KIAog
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBlc1NwZWNJc1JlZ0V4cChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAkocmV2aXNpb24g
MjYwNzIzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0
b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUsNyBAQCBwcml2YXRlOgogfTsKIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKFJlZ0V4cENvbnN0cnVjdG9yLCBJbnRlcm5h
bEZ1bmN0aW9uKTsKIAotSlNPYmplY3QqIGNvbnN0cnVjdFJlZ0V4cChKU0dsb2JhbE9iamVjdCos
IGNvbnN0IEFyZ0xpc3QmLCBKU09iamVjdCogY2FsbGVlID0gbnVsbHB0ciwgSlNWYWx1ZSBuZXdU
YXJnZXQgPSBqc1VuZGVmaW5lZCgpKTsKK0pTT2JqZWN0KiBjb25zdHJ1Y3RSZWdFeHAoSlNHbG9i
YWxPYmplY3QqLCBjb25zdCBBcmdMaXN0JiwgSlNPYmplY3QqIGNhbGxlZSA9IG51bGxwdHIsIEpT
VmFsdWUgbmV3VGFyZ2V0ID0gSlNWYWx1ZSgpKTsKIAogQUxXQVlTX0lOTElORSBib29sIGlzUmVn
RXhwKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkK
IHsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1
Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1NldENvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjcsOCArNjcsMTEgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKLSAgICBTdHJ1Y3R1cmUqIHNldFN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgp
LCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPnNldFN0cnVjdHVyZSgpKTsK
LSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICBK
U09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7Cisg
ICAgU3RydWN0dXJlKiBzZXRTdHJ1Y3R1cmUgPSBuZXdUYXJnZXQgPT0gY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpCisgICAgICAgID8gZ2xvYmFsT2JqZWN0LT5zZXRTdHJ1Y3R1cmUoKQorICAgICAgICA6
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
bmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT5zZXRTdHJ1Y3R1cmUo
KSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIEpTVmFsdWUg
aXRlcmFibGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIGlmIChpdGVyYWJsZS5pc1Vu
ZGVmaW5lZE9yTnVsbCgpKSAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ0NvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTQ0LDggKzE0NCwxMSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBjb25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2Nv
cGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
ID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0
LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9i
amVjdC0+c3RyaW5nT2JqZWN0U3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09i
amVjdChjYWxsRnJhbWUtPm5ld1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9
IG5ld1RhcmdldCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmpl
Y3QtPnN0cmluZ09iamVjdFN0cnVjdHVyZSgpCisgICAgICAgIDogSW50ZXJuYWxGdW5jdGlvbjo6
Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdUYXJnZXQsIGdldEZ1bmN0
aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPnN0cmluZ09iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFy
Z3VtZW50Q291bnQoKSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShTdHJpbmdPYmpl
Y3Q6OmNyZWF0ZSh2bSwgc3RydWN0dXJlKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9uIDI2MDcy
MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTY1LDggKzY1LDEyIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RydWN0dXJl
KiB3ZWFrTWFwU3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1
Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFtZS0+bmV3
VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2Vha01hcFN0cnVjdHVyZSgpKTsKLSAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKKyAgICBKU09iamVjdCogbmV3
VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJnZXQoKSk7CisgICAgU3RydWN0dXJl
KiB3ZWFrTWFwU3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQor
ICAgICAgICA/IGdsb2JhbE9iamVjdC0+d2Vha01hcFN0cnVjdHVyZSgpCisgICAgICAgIDogSW50
ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBuZXdU
YXJnZXQsIGdldEZ1bmN0aW9uUmVhbG0odm0sIG5ld1RhcmdldCktPndlYWtNYXBTdHJ1Y3R1cmUo
KSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKKwogICAgIEpTV2Vha01h
cCogd2Vha01hcCA9IEpTV2Vha01hcDo6Y3JlYXRlKHZtLCB3ZWFrTWFwU3RydWN0dXJlKTsKICAg
ICBKU1ZhbHVlIGl0ZXJhYmxlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBpZiAoaXRl
cmFibGUuaXNVbmRlZmluZWRPck51bGwoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAkocmV2
aXNpb24gMjYwNzIzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVj
dFJlZkNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjgsOSArNjgsMTMgQEAgc3Rh
dGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGlmICghY2FsbEZyYW1l
LT5hcmd1bWVudCgwKS5pc09iamVjdCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRmlyc3QgYXJndW1lbnQgdG8gV2Vha1JlZiBzaG91bGQg
YmUgYW4gb2JqZWN0Il9zKTsKIAotICAgIFN0cnVjdHVyZSogV2Vha09iamVjdFJlZlN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxP
YmplY3QtPndlYWtPYmplY3RSZWZTdHJ1Y3R1cmUoKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7Ci0gICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3Bl
LCBKU1ZhbHVlOjplbmNvZGUoSlNXZWFrT2JqZWN0UmVmOjpjcmVhdGUodm0sIFdlYWtPYmplY3RS
ZWZTdHJ1Y3R1cmUsIGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkuZ2V0T2JqZWN0KCkp
KSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCkpOworICAgIFN0cnVjdHVyZSogd2Vha09iamVjdFJlZlN0cnVjdHVyZSA9IG5ld1Rhcmdl
dCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPndlYWtP
YmplY3RSZWZTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxt
KHZtLCBuZXdUYXJnZXQpLT53ZWFrT2JqZWN0UmVmU3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CisKKyAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUs
IEpTVmFsdWU6OmVuY29kZShKU1dlYWtPYmplY3RSZWY6OmNyZWF0ZSh2bSwgd2Vha09iamVjdFJl
ZlN0cnVjdHVyZSwgY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKS5nZXRPYmplY3QoKSkp
KTsKIH0KIAogfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENv
bnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjA3MjMpCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC02NSw4ICs2NSwxMiBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBj
b25zCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBE
RUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxP
YmplY3QtPndlYWtTZXRTdHJ1Y3R1cmUoKSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0
KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogd2Vha1NldFN0cnVjdHVy
ZSA9IG5ld1RhcmdldCA9PSBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxP
YmplY3QtPndlYWtTZXRTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNy
ZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlv
blJlYWxtKHZtLCBuZXdUYXJnZXQpLT53ZWFrU2V0U3RydWN0dXJlKCkpOworICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CisKICAgICBKU1dlYWtTZXQqIHdlYWtTZXQgPSBKU1dl
YWtTZXQ6OmNyZWF0ZSh2bSwgd2Vha1NldFN0cnVjdHVyZSk7CiAgICAgSlNWYWx1ZSBpdGVyYWJs
ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgaWYgKGl0ZXJhYmxlLmlzVW5kZWZpbmVk
T3JOdWxsKCkpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMjYwNzIzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDgg
KzQ5LDEzIEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnMKICAgICBh
dXRvJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAgICAgSlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVu
dCgwKTsKLSAgICBhdXRvKiBzdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVTdWJj
bGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+anNDYWxsZWUoKSwgY2FsbEZy
YW1lLT5uZXdUYXJnZXQoKSwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseUNvbXBpbGVFcnJvclN0
cnVjdHVyZSgpKTsKLSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1
ZSgpKTsKKworICAgIEpTT2JqZWN0KiBuZXdUYXJnZXQgPSBhc09iamVjdChjYWxsRnJhbWUtPm5l
d1RhcmdldCgpKTsKKyAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IG5ld1RhcmdldCA9PSBjYWxs
RnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5Q29t
cGlsZUVycm9yU3RydWN0dXJlKCkKKyAgICAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVhdGVT
dWJjbGFzc1N0cnVjdHVyZShnbG9iYWxPYmplY3QsIG5ld1RhcmdldCwgZ2V0RnVuY3Rpb25SZWFs
bSh2bSwgbmV3VGFyZ2V0KS0+d2ViQXNzZW1ibHlDb21waWxlRXJyb3JTdHJ1Y3R1cmUoKSk7Cisg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKKwogICAgIFJFTEVBU0VfQU5EX1JF
VFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3I6OmNy
ZWF0ZShnbG9iYWxPYmplY3QsIHZtLCBzdHJ1Y3R1cmUsIG1lc3NhZ2UpKSk7CiB9CiAKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1
Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMjYwNzIzKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzQsOCArNzQsMTEgQEAgc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIEpTT2JqZWN0KiBpbXBvcnRPYmplY3QgPSBpbXBv
cnRBcmd1bWVudC5nZXRPYmplY3QoKTsKICAgICBpZiAoIWltcG9ydEFyZ3VtZW50LmlzVW5kZWZp
bmVkKCkgJiYgIWltcG9ydE9iamVjdCkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0
aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFs
T2JqZWN0LCAic2Vjb25kIGFyZ3VtZW50IHRvIFdlYkFzc2VtYmx5Lkluc3RhbmNlIG11c3QgYmUg
dW5kZWZpbmVkIG9yIGFuIE9iamVjdCJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBydW50aW1l
VHlwZUZvclZhbHVlKHZtLCBpbXBvcnRBcmd1bWVudCkpKSk7Ci0gICAgCi0gICAgU3RydWN0dXJl
KiBpbnN0YW5jZVN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5l
d1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5SW5zdGFuY2VTdHJ1Y3R1cmUoKSk7
CisKKyAgICBKU09iamVjdCogbmV3VGFyZ2V0ID0gYXNPYmplY3QoY2FsbEZyYW1lLT5uZXdUYXJn
ZXQoKSk7CisgICAgU3RydWN0dXJlKiBpbnN0YW5jZVN0cnVjdHVyZSA9IG5ld1RhcmdldCA9PSBj
YWxsRnJhbWUtPmpzQ2FsbGVlKCkKKyAgICAgICAgPyBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5
SW5zdGFuY2VTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1
YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxt
KHZtLCBuZXdUYXJnZXQpLT53ZWJBc3NlbWJseUluc3RhbmNlU3RydWN0dXJlKCkpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAKICAgICBKU1dlYkFzc2VtYmx5SW5zdGFu
Y2UqIGluc3RhbmNlID0gSlNXZWJBc3NlbWJseUluc3RhbmNlOjp0cnlDcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgSlNXZWJBc3NlbWJseUluc3RhbmNlOjpjcmVhdGVQcml2YXRlTW9kdWxlS2V5KCks
IG1vZHVsZSwgaW1wb3J0T2JqZWN0LCBpbnN0YW5jZVN0cnVjdHVyZSwgUmVmPFdhc206Ok1vZHVs
ZT4obW9kdWxlLT5tb2R1bGUoKSksIFdhc206OkNyZWF0aW9uTW9kZTo6RnJvbUpTKTsKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3Ry
dWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCShyZXZpc2lvbiAyNjA3MjMpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDksOCArNDksMTMgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29ucwogICAgIGF1dG8mIHZtID0gZ2xvYmFsT2JqZWN0LT52
bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1Zh
bHVlIG1lc3NhZ2UgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwotICAgIGF1dG8qIHN0cnVjdHVy
ZSA9IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxP
YmplY3QtPndlYkFzc2VtYmx5TGlua0Vycm9yU3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworCisgICAgSlNPYmplY3QqIG5ld1Rh
cmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSog
c3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/
IGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlMaW5rRXJyb3JTdHJ1Y3R1cmUoKQorICAgICAgICA6
IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwg
bmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT53ZWJBc3NlbWJseUxp
bmtFcnJvclN0cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0p
OworCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNXZWJB
c3NlbWJseUxpbmtFcnJvcjo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgdm0sIHN0cnVjdHVyZSwgbWVz
c2FnZSkpKTsKIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAJKHJldmlzaW9u
IDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9k
dWxlQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODEsNyArMTgxLDEwIEBAIEpT
V2ViQXNzZW1ibHlNb2R1bGUqIFdlYkFzc2VtYmx5TW9kdWxlQ28KICAgICBWTSYgdm0gPSBnbG9i
YWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwogCi0gICAgYXV0byogc3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xh
c3NTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCksIGNhbGxGcmFt
ZS0+bmV3VGFyZ2V0KCksIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlNb2R1bGVTdHJ1Y3R1cmUo
KSk7CisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0KGNhbGxGcmFtZS0+bmV3VGFy
Z2V0KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3VGFyZ2V0ID09IGNhbGxGcmFt
ZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlNb2R1bGVT
dHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVuY3Rpb246OmNyZWF0ZVN1YmNsYXNzU3Ry
dWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBnZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdU
YXJnZXQpLT53ZWJBc3NlbWJseU1vZHVsZVN0cnVjdHVyZSgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwg
SlNXZWJBc3NlbWJseU1vZHVsZTo6Y3JlYXRlU3R1Yih2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1
cmUsIFdhc206Ok1vZHVsZTo6dmFsaWRhdGVTeW5jKCZ2bS53YXNtQ29udGV4dCwgV1RGTW92ZShi
dWZmZXIpKSkpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAJ
KHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MSw4
ICs1MSwxMyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zCiAgICAg
SlNWYWx1ZSBtZXNzYWdlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBTdHJpbmcgbWVz
c2FnZVN0cmluZyA9IG1lc3NhZ2UuaXNVbmRlZmluZWQoKSA/IFN0cmluZygpIDogbWVzc2FnZS50
b1dURlN0cmluZyhnbG9iYWxPYmplY3QpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIGF1dG8qIHN0cnVjdHVyZSA9IEludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0Nh
bGxlZSgpLCBjYWxsRnJhbWUtPm5ld1RhcmdldCgpLCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5
UnVudGltZUVycm9yU3RydWN0dXJlKCkpOwotICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOworCisgICAgSlNPYmplY3QqIG5ld1RhcmdldCA9IGFzT2JqZWN0
KGNhbGxGcmFtZS0+bmV3VGFyZ2V0KCkpOworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gbmV3
VGFyZ2V0ID09IGNhbGxGcmFtZS0+anNDYWxsZWUoKQorICAgICAgICA/IGdsb2JhbE9iamVjdC0+
d2ViQXNzZW1ibHlSdW50aW1lRXJyb3JTdHJ1Y3R1cmUoKQorICAgICAgICA6IEludGVybmFsRnVu
Y3Rpb246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBn
ZXRGdW5jdGlvblJlYWxtKHZtLCBuZXdUYXJnZXQpLT53ZWJBc3NlbWJseVJ1bnRpbWVFcnJvclN0
cnVjdHVyZSgpKTsKKyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOworCiAgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yOjpjcmVhdGUo
Z2xvYmFsT2JqZWN0LCB2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKG1lc3NhZ2VTdHJpbmcpKSk7CiB9
CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDIwLTA0LTI2ICBBbGV4
ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1
bmN0aW9uOjpjcmVhdGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGds
b2JhbE9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjAyNTk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWXVzdWtlIFN1enVraS4KKworICAgICAg
ICBBY2NvdW50cyBmb3IgSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUo
KSBzaWduYXR1cmUgY2hhbmdlIGFuZAorICAgICAgICB1dGlsaXplcyBnZXRGdW5jdGlvblJlYWxt
KCkgaGVscGVyIHRvIGhhbmRsZSBjcm9zcy1yZWFsbSBKU0JvdW5kRnVuY3Rpb24gYW5kCisgICAg
ICAgIFByb3h5T2JqZWN0IGluc3RhbmNlcyBhcyBOZXdUYXJnZXQgdmFsdWUuCisKKyAgICAgICAg
VGVzdHM6IHdlYi1wbGF0Zm9ybS10ZXN0cy9XZWJJREwvZWNtYXNjcmlwdC1iaW5kaW5nL2NvbnN0
cnVjdG9ycy5odG1sCisgICAgICAgICAgICAgICB3ZWItcGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVs
ZW1lbnRzL2h0bWxjb25zdHJ1Y3Rvci9uZXd0YXJnZXQuaHRtbAorCisgICAgICAgICogYmluZGlu
Z3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OnNldFN1YmNsYXNz
U3RydWN0dXJlSWZOZWVkZWQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSFRNTEVsZW1lbnRD
dXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3RydWN0SlNIVE1MRWxlbWVudCk6CisK
IDIwMjAtMDQtMjYgIENhdGhpZSBDaGVuICA8Y2F0aGllY2hlbkBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIGZhc3Qvc2Nyb2xsaW5nL3Njcm9sbC1iZWhhdmlvci1pbnZhbGlkYXRlLWlmLWRpc2FibGVk
Lmh0bWwgaXMgYSBmbGFreSBmYWlsdXJlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTVdyYXBwZXJDYWNoZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV3JhcHBlckNhY2hlLmgJKHJldmlzaW9uIDI2MDcyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlckNhY2hlLmgJKHdvcmtpbmcgY29weSkKQEAg
LTIxMyw5ICsyMTMsOSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcz4gaW5saW5lIHZvaWQg
CiAgICAgSlNDOjpWTSYgdm0gPSBsZXhpY2FsR2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8g
c2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIGF1dG8qIG5ld1RhcmdldEds
b2JhbE9iamVjdCA9IEpTQzo6anNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4obmV3VGFyZ2V0LT5n
bG9iYWxPYmplY3Qodm0pKTsKKyAgICBhdXRvKiBuZXdUYXJnZXRHbG9iYWxPYmplY3QgPSBKU0M6
OmpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KEpTQzo6Z2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3
VGFyZ2V0KSk7CiAgICAgYXV0byogYmFzZVN0cnVjdHVyZSA9IGdldERPTVN0cnVjdHVyZTxXcmFw
cGVyQ2xhc3M+KHZtLCAqbmV3VGFyZ2V0R2xvYmFsT2JqZWN0KTsKLSAgICBhdXRvKiBzdWJjbGFz
c1N0cnVjdHVyZSA9IEpTQzo6SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1
cmUobGV4aWNhbEdsb2JhbE9iamVjdCwgY29uc3RydWN0b3IsIG5ld1RhcmdldCwgYmFzZVN0cnVj
dHVyZSk7CisgICAgYXV0byogc3ViY2xhc3NTdHJ1Y3R1cmUgPSBKU0M6OkludGVybmFsRnVuY3Rp
b246OmNyZWF0ZVN1YmNsYXNzU3RydWN0dXJlKGxleGljYWxHbG9iYWxPYmplY3QsIG5ld1Rhcmdl
dCwgYmFzZVN0cnVjdHVyZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgp
KTsKICAgICBqc09iamVjdC0+c2V0U3RydWN0dXJlKHZtLCBzdWJjbGFzc1N0cnVjdHVyZSk7CiB9
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxFbGVtZW50Q3VzdG9tLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxFbGVtZW50
Q3VzdG9tLmNwcAkocmV2aXNpb24gMjYwNzIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNIVE1MRWxlbWVudEN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU0LDExICs1NCwx
MCBAQCBFbmNvZGVkSlNWYWx1ZSBjb25zdHJ1Y3RKU0hUTUxFbGVtZW50KEpTCiAgICAgICAgIHJl
dHVybiB0aHJvd0NvbnN0cnVjdG9yU2NyaXB0RXhlY3V0aW9uQ29udGV4dFVuYXZhaWxhYmxlRXJy
b3IoKmxleGljYWxHbG9iYWxPYmplY3QsIHNjb3BlLCAiSFRNTEVsZW1lbnQiKTsKICAgICBBU1NF
UlQoY29udGV4dC0+aXNEb2N1bWVudCgpKTsKIAotICAgIEpTVmFsdWUgbmV3VGFyZ2V0VmFsdWUg
PSBjYWxsRnJhbWUudGhpc1ZhbHVlKCk7Ci0gICAgYXV0byogbmV3VGFyZ2V0ID0gbmV3VGFyZ2V0
VmFsdWUuZ2V0T2JqZWN0KCk7Ci0gICAgYXV0byogbmV3VGFyZ2V0R2xvYmFsT2JqZWN0ID0ganND
YXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4obmV3VGFyZ2V0LT5nbG9iYWxPYmplY3Qodm0pKTsKKyAg
ICBhdXRvKiBuZXdUYXJnZXQgPSBjYWxsRnJhbWUubmV3VGFyZ2V0KCkuZ2V0T2JqZWN0KCk7Cisg
ICAgYXV0byogbmV3VGFyZ2V0R2xvYmFsT2JqZWN0ID0ganNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0
Kj4oZ2V0RnVuY3Rpb25SZWFsbSh2bSwgbmV3VGFyZ2V0KSk7CiAgICAgSlNWYWx1ZSBodG1sRWxl
bWVudENvbnN0cnVjdG9yVmFsdWUgPSBKU0hUTUxFbGVtZW50OjpnZXRDb25zdHJ1Y3Rvcih2bSwg
bmV3VGFyZ2V0R2xvYmFsT2JqZWN0KTsKLSAgICBpZiAobmV3VGFyZ2V0VmFsdWUgPT0gaHRtbEVs
ZW1lbnRDb25zdHJ1Y3RvclZhbHVlKQorICAgIGlmIChuZXdUYXJnZXQgPT0gaHRtbEVsZW1lbnRD
b25zdHJ1Y3RvclZhbHVlKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihsZXhpY2Fs
R2xvYmFsT2JqZWN0LCBzY29wZSwgIm5ldy50YXJnZXQgaXMgbm90IGEgdmFsaWQgY3VzdG9tIGVs
ZW1lbnQgY29uc3RydWN0b3IiX3MpOwogCiAgICAgYXV0byYgZG9jdW1lbnQgPSBkb3duY2FzdDxE
b2N1bWVudD4oKmNvbnRleHQpOwpAQCAtNzcsOCArNzYsOCBAQCBFbmNvZGVkSlNWYWx1ZSBjb25z
dHJ1Y3RKU0hUTUxFbGVtZW50KEpTCiAKICAgICBpZiAoIWVsZW1lbnRJbnRlcmZhY2UtPmlzVXBn
cmFkaW5nRWxlbWVudCgpKSB7CiAgICAgICAgIFN0cnVjdHVyZSogYmFzZVN0cnVjdHVyZSA9IGdl
dERPTVN0cnVjdHVyZTxKU0hUTUxFbGVtZW50Pih2bSwgKm5ld1RhcmdldEdsb2JhbE9iamVjdCk7
Ci0gICAgICAgIGF1dG8qIG5ld0VsZW1lbnRTdHJ1Y3R1cmUgPSBJbnRlcm5hbEZ1bmN0aW9uOjpj
cmVhdGVTdWJjbGFzc1N0cnVjdHVyZShsZXhpY2FsR2xvYmFsT2JqZWN0LCBqc0NvbnN0cnVjdG9y
LCBuZXdUYXJnZXRWYWx1ZSwgYmFzZVN0cnVjdHVyZSk7Ci0gICAgICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOworICAgICAgICBhdXRvKiBuZXdFbGVtZW50
U3RydWN0dXJlID0gSW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3ViY2xhc3NTdHJ1Y3R1cmUobGV4
aWNhbEdsb2JhbE9iamVjdCwgbmV3VGFyZ2V0LCBiYXNlU3RydWN0dXJlKTsKKyAgICAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgICAgICBSZWY8SFRNTEVsZW1lbnQ+
IGVsZW1lbnQgPSBIVE1MRWxlbWVudDo6Y3JlYXRlKGVsZW1lbnRJbnRlcmZhY2UtPm5hbWUoKSwg
ZG9jdW1lbnQpOwogICAgICAgICBlbGVtZW50LT5zZXRJc0RlZmluZWRDdXN0b21FbGVtZW50KCpl
bGVtZW50SW50ZXJmYWNlKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwkocmV2
aXNpb24gMjYwNzIzKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA0LTI2ICBBbGV4ZXkgU2h2YXlrYSAg
PHNodmFpa2FsZXNoQGdtYWlsLmNvbT4KKworICAgICAgICBJbnRlcm5hbEZ1bmN0aW9uOjpjcmVh
dGVTdWJjbGFzc1N0cnVjdHVyZSBzaG91bGQgdXNlIG5ld1RhcmdldCdzIGdsb2JhbE9iamVjdAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyNTk5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgWXVzdWtlIFN1enVraS4KKworICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9XZWJJREwvZWNtYXNjcmlwdC1iaW5kaW5nL2NvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9odG1s
Y29uc3RydWN0b3IvbmV3dGFyZ2V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2FzbS9qc2FwaS9wcm90by1mcm9tLWN0b3ItcmVhbG0tZXhwZWN0ZWQudHh0Ogor
CiAyMDIwLTA0LTI1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBN
b3ZlIFVSTCB0byB1c2UgU3RyaW5nVmlldyB3aGVuIHJldHVybmluZyBzdWJzdHJpbmdzIG9mIHRo
ZSBVUkwKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
V2ViSURML2VjbWFzY3JpcHQtYmluZGluZy9jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2Vi
SURML2VjbWFzY3JpcHQtYmluZGluZy9jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAyNjA3MjMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L1dlYklETC9lY21hc2NyaXB0LWJpbmRpbmcvY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMTAsOCArMTAsOCBAQCBQQVNTIFN1YmNsYXNzIGNvbnN0cnVjdG9yIGlu
IHBhcmVudCB3aW5kCiBQQVNTIFN1YmNsYXNzIGNvbnN0cnVjdG9yIGluIGNoaWxkIHdpbmRvdyB3
aXRoIHBhcmVudCBjbGFzcyBpbiBwYXJlbnQgd2luZG93IAogUEFTUyBDb25zdHJ1Y3RvciBpbiBj
aGlsZCB3aW5kb3cgd2l0aCBiYWQgTmV3VGFyZ2V0IGZyb20gcGFyZW50IHdpbmRvdyAKIFBBU1Mg
Q29uc3RydWN0b3IgaW4gcGFyZW50IHdpbmRvdyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBjaGls
ZCB3aW5kb3cgCi1GQUlMIENvbnN0cnVjdG9yIGluIHBhcmVudCB3aW5kb3cgd2l0aCBiYWQgTmV3
VGFyZ2V0IGZyb20gcGFyZW50IHdpbmRvdyB0aGF0J3MgYSBib3VuZCBjaGlsZCB3aW5kb3cgZnVu
Y3Rpb24gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgb2JqZWN0ICJbb2JqZWN0IERPTVBhcnNlclBy
b3RvdHlwZV0iIGJ1dCBnb3Qgb2JqZWN0ICJbb2JqZWN0IERPTVBhcnNlclByb3RvdHlwZV0iCi1G
QUlMIENvbnN0cnVjdG9yIGluIGNoaWxkIHdpbmRvdyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBj
aGlsZCB3aW5kb3cgdGhhdCdzIGEgYm91bmQgcGFyZW50IHdpbmRvdyBmdW5jdGlvbiBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCBvYmplY3QgIltvYmplY3QgRE9NUGFyc2VyUHJvdG90eXBlXSIgYnV0
IGdvdCBvYmplY3QgIltvYmplY3QgRE9NUGFyc2VyUHJvdG90eXBlXSIKLUZBSUwgQ29uc3RydWN0
b3IgaW4gcGFyZW50IHdpbmRvdyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBwYXJlbnQgd2luZG93
IHRoYXQncyBhIHByb3h5IGZvciBhIGNoaWxkIHdpbmRvdyBmdW5jdGlvbiBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCBvYmplY3QgIltvYmplY3QgRE9NUGFyc2VyUHJvdG90eXBlXSIgYnV0IGdvdCBv
YmplY3QgIltvYmplY3QgRE9NUGFyc2VyUHJvdG90eXBlXSIKLUZBSUwgQ29uc3RydWN0b3IgaW4g
Y2hpbGQgd2luZG93IHdpdGggYmFkIE5ld1RhcmdldCBmcm9tIGNoaWxkIHdpbmRvdyB0aGF0J3Mg
YSBwcm94eSBmb3IgYSBwYXJlbnQgd2luZG93IGZ1bmN0aW9uIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIG9iamVjdCAiW29iamVjdCBET01QYXJzZXJQcm90b3R5cGVdIiBidXQgZ290IG9iamVjdCAi
W29iamVjdCBET01QYXJzZXJQcm90b3R5cGVdIgorUEFTUyBDb25zdHJ1Y3RvciBpbiBwYXJlbnQg
d2luZG93IHdpdGggYmFkIE5ld1RhcmdldCBmcm9tIHBhcmVudCB3aW5kb3cgdGhhdCdzIGEgYm91
bmQgY2hpbGQgd2luZG93IGZ1bmN0aW9uIAorUEFTUyBDb25zdHJ1Y3RvciBpbiBjaGlsZCB3aW5k
b3cgd2l0aCBiYWQgTmV3VGFyZ2V0IGZyb20gY2hpbGQgd2luZG93IHRoYXQncyBhIGJvdW5kIHBh
cmVudCB3aW5kb3cgZnVuY3Rpb24gCitQQVNTIENvbnN0cnVjdG9yIGluIHBhcmVudCB3aW5kb3cg
d2l0aCBiYWQgTmV3VGFyZ2V0IGZyb20gcGFyZW50IHdpbmRvdyB0aGF0J3MgYSBwcm94eSBmb3Ig
YSBjaGlsZCB3aW5kb3cgZnVuY3Rpb24gCitQQVNTIENvbnN0cnVjdG9yIGluIGNoaWxkIHdpbmRv
dyB3aXRoIGJhZCBOZXdUYXJnZXQgZnJvbSBjaGlsZCB3aW5kb3cgdGhhdCdzIGEgcHJveHkgZm9y
IGEgcGFyZW50IHdpbmRvdyBmdW5jdGlvbiAKIApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jdXN0b20tZWxlbWVudHMvaHRtbGNvbnN0cnVjdG9yL25l
d3RhcmdldC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jdXN0b20tZWxlbWVudHMvaHRtbGNvbnN0cnVjdG9yL25l
d3RhcmdldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2MDcyMykKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL2h0bWxjb25zdHJ1
Y3Rvci9uZXd0YXJnZXQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yLDEzICsyLDEz
IEBACiBQQVNTIFVzZSBOZXdUYXJnZXQncyBwcm90b3R5cGUsIG5vdCB0aGUgb25lIHN0b3JlZCBh
dCBkZWZpbml0aW9uIHRpbWUgCiBQQVNTIFJldGhyb3cgYW55IGV4Y2VwdGlvbnMgdGhyb3duIHdo
aWxlIGdldHRpbmcgdGhlIHByb3RvdHlwZSAKIFBBU1MgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmpl
Y3QgKG51bGwpLCBkZXJpdmVzIHRoZSBmYWxsYmFjayBmcm9tIE5ld1RhcmdldCdzIHJlYWxtIChh
dXRvbm9tb3VzIGN1c3RvbSBlbGVtZW50cykgCi1GQUlMIElmIHByb3RvdHlwZSBpcyBub3Qgb2Jq
ZWN0IChudWxsKSwgZGVyaXZlcyB0aGUgZmFsbGJhY2sgZnJvbSBOZXdUYXJnZXQncyBHZXRGdW5j
dGlvblJlYWxtIChhdXRvbm9tb3VzIGN1c3RvbSBlbGVtZW50cykgYXNzZXJ0X2VxdWFsczogTXVz
dCB1c2UgdGhlIEhUTUxFbGVtZW50IGZyb20gdGhlIHJlYWxtIG9mIE5ld1RhcmdldCBleHBlY3Rl
ZCBvYmplY3QgIltvYmplY3QgSFRNTEVsZW1lbnRQcm90b3R5cGVdIiBidXQgZ290IG9iamVjdCAi
W29iamVjdCBIVE1MRWxlbWVudFByb3RvdHlwZV0iCitQQVNTIElmIHByb3RvdHlwZSBpcyBub3Qg
b2JqZWN0IChudWxsKSwgZGVyaXZlcyB0aGUgZmFsbGJhY2sgZnJvbSBOZXdUYXJnZXQncyBHZXRG
dW5jdGlvblJlYWxtIChhdXRvbm9tb3VzIGN1c3RvbSBlbGVtZW50cykgCiBQQVNTIElmIHByb3Rv
dHlwZSBpcyBub3Qgb2JqZWN0ICh1bmRlZmluZWQpLCBkZXJpdmVzIHRoZSBmYWxsYmFjayBmcm9t
IE5ld1RhcmdldCdzIHJlYWxtIChhdXRvbm9tb3VzIGN1c3RvbSBlbGVtZW50cykgCi1GQUlMIElm
IHByb3RvdHlwZSBpcyBub3Qgb2JqZWN0ICh1bmRlZmluZWQpLCBkZXJpdmVzIHRoZSBmYWxsYmFj
ayBmcm9tIE5ld1RhcmdldCdzIEdldEZ1bmN0aW9uUmVhbG0gKGF1dG9ub21vdXMgY3VzdG9tIGVs
ZW1lbnRzKSBhc3NlcnRfZXF1YWxzOiBNdXN0IHVzZSB0aGUgSFRNTEVsZW1lbnQgZnJvbSB0aGUg
cmVhbG0gb2YgTmV3VGFyZ2V0IGV4cGVjdGVkIG9iamVjdCAiW29iamVjdCBIVE1MRWxlbWVudFBy
b3RvdHlwZV0iIGJ1dCBnb3Qgb2JqZWN0ICJbb2JqZWN0IEhUTUxFbGVtZW50UHJvdG90eXBlXSIK
K1BBU1MgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmplY3QgKHVuZGVmaW5lZCksIGRlcml2ZXMgdGhl
IGZhbGxiYWNrIGZyb20gTmV3VGFyZ2V0J3MgR2V0RnVuY3Rpb25SZWFsbSAoYXV0b25vbW91cyBj
dXN0b20gZWxlbWVudHMpIAogUEFTUyBJZiBwcm90b3R5cGUgaXMgbm90IG9iamVjdCAoNSksIGRl
cml2ZXMgdGhlIGZhbGxiYWNrIGZyb20gTmV3VGFyZ2V0J3MgcmVhbG0gKGF1dG9ub21vdXMgY3Vz
dG9tIGVsZW1lbnRzKSAKLUZBSUwgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmplY3QgKDUpLCBkZXJp
dmVzIHRoZSBmYWxsYmFjayBmcm9tIE5ld1RhcmdldCdzIEdldEZ1bmN0aW9uUmVhbG0gKGF1dG9u
b21vdXMgY3VzdG9tIGVsZW1lbnRzKSBhc3NlcnRfZXF1YWxzOiBNdXN0IHVzZSB0aGUgSFRNTEVs
ZW1lbnQgZnJvbSB0aGUgcmVhbG0gb2YgTmV3VGFyZ2V0IGV4cGVjdGVkIG9iamVjdCAiW29iamVj
dCBIVE1MRWxlbWVudFByb3RvdHlwZV0iIGJ1dCBnb3Qgb2JqZWN0ICJbb2JqZWN0IEhUTUxFbGVt
ZW50UHJvdG90eXBlXSIKK1BBU1MgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmplY3QgKDUpLCBkZXJp
dmVzIHRoZSBmYWxsYmFjayBmcm9tIE5ld1RhcmdldCdzIEdldEZ1bmN0aW9uUmVhbG0gKGF1dG9u
b21vdXMgY3VzdG9tIGVsZW1lbnRzKSAKIFBBU1MgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmplY3Qg
KHN0cmluZyksIGRlcml2ZXMgdGhlIGZhbGxiYWNrIGZyb20gTmV3VGFyZ2V0J3MgcmVhbG0gKGF1
dG9ub21vdXMgY3VzdG9tIGVsZW1lbnRzKSAKLUZBSUwgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmpl
Y3QgKHN0cmluZyksIGRlcml2ZXMgdGhlIGZhbGxiYWNrIGZyb20gTmV3VGFyZ2V0J3MgR2V0RnVu
Y3Rpb25SZWFsbSAoYXV0b25vbW91cyBjdXN0b20gZWxlbWVudHMpIGFzc2VydF9lcXVhbHM6IE11
c3QgdXNlIHRoZSBIVE1MRWxlbWVudCBmcm9tIHRoZSByZWFsbSBvZiBOZXdUYXJnZXQgZXhwZWN0
ZWQgb2JqZWN0ICJbb2JqZWN0IEhUTUxFbGVtZW50UHJvdG90eXBlXSIgYnV0IGdvdCBvYmplY3Qg
IltvYmplY3QgSFRNTEVsZW1lbnRQcm90b3R5cGVdIgorUEFTUyBJZiBwcm90b3R5cGUgaXMgbm90
IG9iamVjdCAoc3RyaW5nKSwgZGVyaXZlcyB0aGUgZmFsbGJhY2sgZnJvbSBOZXdUYXJnZXQncyBH
ZXRGdW5jdGlvblJlYWxtIChhdXRvbm9tb3VzIGN1c3RvbSBlbGVtZW50cykgCiBGQUlMIElmIHBy
b3RvdHlwZSBpcyBub3Qgb2JqZWN0IChudWxsKSwgZGVyaXZlcyB0aGUgZmFsbGJhY2sgZnJvbSBO
ZXdUYXJnZXQncyByZWFsbSAoY3VzdG9taXplZCBidWlsdC1pbiBlbGVtZW50cykgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBS
ZWZsZWN0LmNvbnN0cnVjdCByZXF1aXJlcyB0aGUgZmlyc3QgYXJndW1lbnQgYmUgYSBjb25zdHJ1
Y3RvciIKIEZBSUwgSWYgcHJvdG90eXBlIGlzIG5vdCBvYmplY3QgKG51bGwpLCBkZXJpdmVzIHRo
ZSBmYWxsYmFjayBmcm9tIE5ld1RhcmdldCdzIEdldEZ1bmN0aW9uUmVhbG0gKGN1c3RvbWl6ZWQg
YnVpbHQtaW4gZWxlbWVudHMpIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogUmVmbGVjdC5jb25zdHJ1Y3QgcmVxdWlyZXMgdGhl
IGZpcnN0IGFyZ3VtZW50IGJlIGEgY29uc3RydWN0b3IiCiBGQUlMIElmIHByb3RvdHlwZSBpcyBu
b3Qgb2JqZWN0ICh1bmRlZmluZWQpLCBkZXJpdmVzIHRoZSBmYWxsYmFjayBmcm9tIE5ld1Rhcmdl
dCdzIHJlYWxtIChjdXN0b21pemVkIGJ1aWx0LWluIGVsZW1lbnRzKSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IFJlZmxlY3Qu
Y29uc3RydWN0IHJlcXVpcmVzIHRoZSBmaXJzdCBhcmd1bWVudCBiZSBhIGNvbnN0cnVjdG9yIgpJ
bmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pz
YXBpL3Byb3RvLWZyb20tY3Rvci1yZWFsbS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpL3Byb3Rv
LWZyb20tY3Rvci1yZWFsbS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI2MDcyMykKKysrIExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2FzbS9qc2FwaS9wcm90by1m
cm9tLWN0b3ItcmVhbG0tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDM0ICsxLDM0
IEBACiAKLUZBSUwgV2ViQXNzZW1ibHkuTW9kdWxlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0
aCBgdW5kZWZpbmVkYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGgg
YG51bGxgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgV2ViQXNzZW1ibHkuTW9kdWxlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgZmFsc2Vg
IHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2Vi
QXNzZW1ibHkuTW9kdWxlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdHJ1ZWAgcHJvdG90
eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJs
eS5Nb2R1bGU6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAwYCBwcm90b3R5cGUgYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTog
Y3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0xYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTogY3Jvc3MtcmVh
bG0gTmV3VGFyZ2V0IHdpdGggYCIiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTogY3Jvc3MtcmVhbG0gTmV3VGFy
Z2V0IHdpdGggYCJzdHIiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdp
dGggYHN5bWJvbCAiU3ltYm9sKCkiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTogYm91bmQgY3Jvc3MtcmVhbG0g
TmV3VGFyZ2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5Nb2R1bGU6IGJvdW5kIGJvdW5kIGNy
b3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBudWxsYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTogYm91bmQgUHJv
eHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90b3R5cGUgYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lk1vZHVsZTog
UHJveHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHRydWVgIHByb3RvdHlwZSBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuTW9kdWxl
OiBQcm94eSBvZiBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgLTBgIHByb3Rv
dHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1i
bHkuTW9kdWxlOiBQcm94eSBvZiBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgTmFO
YCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdl
YkFzc2VtYmx5Lkluc3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdW5kZWZpbmVk
YCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdl
YkFzc2VtYmx5Lkluc3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgbnVsbGAgcHJv
dG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3Nl
bWJseS5JbnN0YW5jZTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90b3R5
cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5
Lkluc3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdHJ1ZWAgcHJvdG90eXBlIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5JbnN0
YW5jZTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYDBgIHByb3RvdHlwZSBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuSW5zdGFuY2U6IGNy
b3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAtMWAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5JbnN0YW5jZTogY3Jvc3MtcmVh
bG0gTmV3VGFyZ2V0IHdpdGggYCIiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5Lkluc3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdU
YXJnZXQgd2l0aCBgInN0ciJgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuSW5zdGFuY2U6IGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGBzeW1ib2wgIlN5bWJvbCgpImAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5JbnN0YW5jZTogYm91bmQgY3Jvc3Mt
cmVhbG0gTmV3VGFyZ2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5JbnN0YW5jZTogYm91bmQg
Ym91bmQgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYG51bGxgIHByb3RvdHlwZSBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuSW5zdGFuY2U6
IGJvdW5kIFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBmYWxzZWAgcHJvdG90
eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJs
eS5JbnN0YW5jZTogUHJveHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHRydWVgIHBy
b3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNz
ZW1ibHkuSW5zdGFuY2U6IFByb3h5IG9mIFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3
aXRoIGAtMGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCBXZWJBc3NlbWJseS5JbnN0YW5jZTogUHJveHkgb2YgYm91bmQgY3Jvc3MtcmVhbG0gTmV3
VGFyZ2V0IHdpdGggYE5hTmAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyBXZWJBc3NlbWJseS5Nb2R1bGU6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3
aXRoIGB1bmRlZmluZWRgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTW9kdWxlOiBjcm9z
cy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgbnVsbGAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJs
eS5Nb2R1bGU6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBmYWxzZWAgcHJvdG90eXBlIAor
UEFTUyBXZWJBc3NlbWJseS5Nb2R1bGU6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGB0cnVl
YCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5Lk1vZHVsZTogY3Jvc3MtcmVhbG0gTmV3VGFy
Z2V0IHdpdGggYDBgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTW9kdWxlOiBjcm9zcy1y
ZWFsbSBOZXdUYXJnZXQgd2l0aCBgLTFgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTW9k
dWxlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgIiJgIHByb3RvdHlwZSAKK1BBU1MgV2Vi
QXNzZW1ibHkuTW9kdWxlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgInN0ciJgIHByb3Rv
dHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTW9kdWxlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0
aCBgc3ltYm9sICJTeW1ib2woKSJgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTW9kdWxl
OiBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdW5kZWZpbmVkYCBwcm90b3R5cGUg
CitQQVNTIFdlYkFzc2VtYmx5Lk1vZHVsZTogYm91bmQgYm91bmQgY3Jvc3MtcmVhbG0gTmV3VGFy
Z2V0IHdpdGggYG51bGxgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTW9kdWxlOiBib3Vu
ZCBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgZmFsc2VgIHByb3RvdHlwZSAK
K1BBU1MgV2ViQXNzZW1ibHkuTW9kdWxlOiBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQg
d2l0aCBgdHJ1ZWAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5Nb2R1bGU6IFByb3h5IG9m
IFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAtMGAgcHJvdG90eXBlIAorUEFT
UyBXZWJBc3NlbWJseS5Nb2R1bGU6IFByb3h5IG9mIGJvdW5kIGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGBOYU5gIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuSW5zdGFuY2U6IGNyb3Nz
LXJlYWxtIE5ld1RhcmdldCB3aXRoIGB1bmRlZmluZWRgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNz
ZW1ibHkuSW5zdGFuY2U6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBudWxsYCBwcm90b3R5
cGUgCitQQVNTIFdlYkFzc2VtYmx5Lkluc3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0
aCBgZmFsc2VgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuSW5zdGFuY2U6IGNyb3NzLXJl
YWxtIE5ld1RhcmdldCB3aXRoIGB0cnVlYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5Lklu
c3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgMGAgcHJvdG90eXBlIAorUEFTUyBX
ZWJBc3NlbWJseS5JbnN0YW5jZTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0xYCBwcm90
b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5Lkluc3RhbmNlOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQg
d2l0aCBgIiJgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuSW5zdGFuY2U6IGNyb3NzLXJl
YWxtIE5ld1RhcmdldCB3aXRoIGAic3RyImAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5J
bnN0YW5jZTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHN5bWJvbCAiU3ltYm9sKCkiYCBw
cm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5Lkluc3RhbmNlOiBib3VuZCBjcm9zcy1yZWFsbSBO
ZXdUYXJnZXQgd2l0aCBgdW5kZWZpbmVkYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5Lklu
c3RhbmNlOiBib3VuZCBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgbnVsbGAgcHJv
dG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5JbnN0YW5jZTogYm91bmQgUHJveHkgb2YgY3Jvc3Mt
cmVhbG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5
Lkluc3RhbmNlOiBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdHJ1ZWAgcHJv
dG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5JbnN0YW5jZTogUHJveHkgb2YgUHJveHkgb2YgY3Jv
c3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0wYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5
Lkluc3RhbmNlOiBQcm94eSBvZiBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgTmFO
YCBwcm90b3R5cGUgCiBGQUlMIFdlYkFzc2VtYmx5Lk1lbW9yeTogY3Jvc3MtcmVhbG0gTmV3VGFy
Z2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQogRkFJTCBXZWJBc3NlbWJseS5NZW1vcnk6IGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGBudWxsYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCiBGQUlMIFdlYkFzc2VtYmx5Lk1lbW9yeTogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGgg
YGZhbHNlYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCkBA
IC03NCw0OSArNzQsNDkgQEAgRkFJTCBXZWJBc3NlbWJseS5HbG9iYWw6IGJvdW5kIFByb3h5IG9m
IAogRkFJTCBXZWJBc3NlbWJseS5HbG9iYWw6IFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGB0cnVlYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCiBGQUlMIFdlYkFzc2VtYmx5Lkdsb2JhbDogUHJveHkgb2YgUHJveHkgb2YgY3Jvc3MtcmVh
bG0gTmV3VGFyZ2V0IHdpdGggYC0wYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCiBGQUlMIFdlYkFzc2VtYmx5Lkdsb2JhbDogUHJveHkgb2YgYm91bmQgY3Jv
c3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYE5hTmAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6IGNyb3Nz
LXJlYWxtIE5ld1RhcmdldCB3aXRoIGB1bmRlZmluZWRgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBj
cm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgbnVsbGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6IGNy
b3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBmYWxzZWAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6IGNy
b3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGB0cnVlYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkNvbXBpbGVFcnJvcjogY3Jv
c3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYDBgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9zcy1y
ZWFsbSBOZXdUYXJnZXQgd2l0aCBgLTFgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9zcy1yZWFs
bSBOZXdUYXJnZXQgd2l0aCBgIiJgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9zcy1yZWFsbSBO
ZXdUYXJnZXQgd2l0aCBgInN0ciJgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9zcy1yZWFsbSBO
ZXdUYXJnZXQgd2l0aCBgc3ltYm9sICJTeW1ib2woKSJgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBi
b3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdW5kZWZpbmVkYCBwcm90b3R5cGUgYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkNvbXBp
bGVFcnJvcjogYm91bmQgYm91bmQgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYG51bGxgIHBy
b3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNz
ZW1ibHkuQ29tcGlsZUVycm9yOiBib3VuZCBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQg
d2l0aCBgZmFsc2VgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKLUZBSUwgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBQcm94eSBvZiBjcm9zcy1yZWFsbSBO
ZXdUYXJnZXQgd2l0aCBgdHJ1ZWAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6IFByb3h5IG9mIFByb3h5
IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAtMGAgcHJvdG90eXBlIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6
IFByb3h5IG9mIGJvdW5kIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBOYU5gIHByb3RvdHlw
ZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHku
TGlua0Vycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdW5kZWZpbmVkYCBwcm90b3R5
cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5
LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYG51bGxgIHByb3RvdHlwZSBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuTGlu
a0Vycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgZmFsc2VgIHByb3RvdHlwZSBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuTGlua0Vy
cm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdHJ1ZWAgcHJvdG90eXBlIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5MaW5rRXJyb3I6
IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAwYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogY3Jvc3Mt
cmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0xYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0g
TmV3VGFyZ2V0IHdpdGggYCIiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFy
Z2V0IHdpdGggYCJzdHIiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0
IHdpdGggYHN5bWJvbCAiU3ltYm9sKCkiYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogYm91bmQgY3Jvc3Mt
cmVhbG0gTmV3VGFyZ2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5MaW5rRXJyb3I6IGJvdW5k
IGJvdW5kIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBudWxsYCBwcm90b3R5cGUgYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LkxpbmtFcnJv
cjogYm91bmQgUHJveHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90
b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2Vt
Ymx5LkxpbmtFcnJvcjogUHJveHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHRydWVg
IHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2Vi
QXNzZW1ibHkuTGlua0Vycm9yOiBQcm94eSBvZiBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJn
ZXQgd2l0aCBgLTBgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKLUZBSUwgV2ViQXNzZW1ibHkuTGlua0Vycm9yOiBQcm94eSBvZiBib3VuZCBjcm9zcy1yZWFs
bSBOZXdUYXJnZXQgd2l0aCBgTmFOYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogY3Jvc3MtcmVhbG0g
TmV3VGFyZ2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJl
YWxtIE5ld1RhcmdldCB3aXRoIGBudWxsYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogY3Jvc3MtcmVh
bG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogY3Jvc3MtcmVh
bG0gTmV3VGFyZ2V0IHdpdGggYHRydWVgIHByb3RvdHlwZSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuUnVudGltZUVycm9yOiBjcm9zcy1yZWFs
bSBOZXdUYXJnZXQgd2l0aCBgMGAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5l
d1RhcmdldCB3aXRoIGAtMWAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1Rh
cmdldCB3aXRoIGAiImAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQotRkFJTCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGAic3RyImAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQotRkFJTCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGBzeW1ib2wgIlN5bWJvbCgpImAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGJvdW5kIGNy
b3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGB1bmRlZmluZWRgIHByb3RvdHlwZSBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgV2ViQXNzZW1ibHkuUnVudGltZUVycm9y
OiBib3VuZCBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgbnVsbGAgcHJvdG90eXBl
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBXZWJBc3NlbWJseS5S
dW50aW1lRXJyb3I6IGJvdW5kIFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBm
YWxzZWAgcHJvdG90eXBlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGB0cnVlYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogUHJveHkgb2YgUHJveHkgb2YgY3Jv
c3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0wYCBwcm90b3R5cGUgYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogUHJveHkg
b2YgYm91bmQgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYE5hTmAgcHJvdG90eXBlIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBXZWJBc3NlbWJseS5Db21waWxl
RXJyb3I6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGB1bmRlZmluZWRgIHByb3RvdHlwZSAK
K1BBU1MgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0
aCBgbnVsbGAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6IGNyb3Nz
LXJlYWxtIE5ld1RhcmdldCB3aXRoIGBmYWxzZWAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJs
eS5Db21waWxlRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGB0cnVlYCBwcm90b3R5
cGUgCitQQVNTIFdlYkFzc2VtYmx5LkNvbXBpbGVFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0
IHdpdGggYDBgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9z
cy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgLTFgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHku
Q29tcGlsZUVycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgIiJgIHByb3RvdHlwZSAK
K1BBU1MgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0
aCBgInN0ciJgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBjcm9z
cy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgc3ltYm9sICJTeW1ib2woKSJgIHByb3RvdHlwZSAKK1BB
U1MgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQg
d2l0aCBgdW5kZWZpbmVkYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LkNvbXBpbGVFcnJv
cjogYm91bmQgYm91bmQgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYG51bGxgIHByb3RvdHlw
ZSAKK1BBU1MgV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yOiBib3VuZCBQcm94eSBvZiBjcm9zcy1y
ZWFsbSBOZXdUYXJnZXQgd2l0aCBgZmFsc2VgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHku
Q29tcGlsZUVycm9yOiBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdHJ1ZWAg
cHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5Db21waWxlRXJyb3I6IFByb3h5IG9mIFByb3h5
IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAtMGAgcHJvdG90eXBlIAorUEFTUyBXZWJB
c3NlbWJseS5Db21waWxlRXJyb3I6IFByb3h5IG9mIGJvdW5kIGNyb3NzLXJlYWxtIE5ld1Rhcmdl
dCB3aXRoIGBOYU5gIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTGlua0Vycm9yOiBjcm9z
cy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdW5kZWZpbmVkYCBwcm90b3R5cGUgCitQQVNTIFdlYkFz
c2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYG51bGxgIHByb3Rv
dHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTGlua0Vycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQg
d2l0aCBgZmFsc2VgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTGlua0Vycm9yOiBjcm9z
cy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgdHJ1ZWAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJs
eS5MaW5rRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAwYCBwcm90b3R5cGUgCitQ
QVNTIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0x
YCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3
VGFyZ2V0IHdpdGggYCIiYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjog
Y3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYCJzdHIiYCBwcm90b3R5cGUgCitQQVNTIFdlYkFz
c2VtYmx5LkxpbmtFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHN5bWJvbCAiU3lt
Ym9sKCkiYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogYm91bmQgY3Jv
c3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIAorUEFTUyBXZWJB
c3NlbWJseS5MaW5rRXJyb3I6IGJvdW5kIGJvdW5kIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRo
IGBudWxsYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogYm91bmQgUHJv
eHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90b3R5cGUgCitQQVNT
IFdlYkFzc2VtYmx5LkxpbmtFcnJvcjogUHJveHkgb2YgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdp
dGggYHRydWVgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuTGlua0Vycm9yOiBQcm94eSBv
ZiBQcm94eSBvZiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgLTBgIHByb3RvdHlwZSAKK1BB
U1MgV2ViQXNzZW1ibHkuTGlua0Vycm9yOiBQcm94eSBvZiBib3VuZCBjcm9zcy1yZWFsbSBOZXdU
YXJnZXQgd2l0aCBgTmFOYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJv
cjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHVuZGVmaW5lZGAgcHJvdG90eXBlIAorUEFT
UyBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGBu
dWxsYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogY3Jvc3MtcmVh
bG0gTmV3VGFyZ2V0IHdpdGggYGZhbHNlYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LlJ1
bnRpbWVFcnJvcjogY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYHRydWVgIHByb3RvdHlwZSAK
K1BBU1MgV2ViQXNzZW1ibHkuUnVudGltZUVycm9yOiBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0
aCBgMGAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJl
YWxtIE5ld1RhcmdldCB3aXRoIGAtMWAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5SdW50
aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAiImAgcHJvdG90eXBlIAorUEFT
UyBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGAi
c3RyImAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGNyb3NzLXJl
YWxtIE5ld1RhcmdldCB3aXRoIGBzeW1ib2wgIlN5bWJvbCgpImAgcHJvdG90eXBlIAorUEFTUyBX
ZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGJvdW5kIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRo
IGB1bmRlZmluZWRgIHByb3RvdHlwZSAKK1BBU1MgV2ViQXNzZW1ibHkuUnVudGltZUVycm9yOiBi
b3VuZCBib3VuZCBjcm9zcy1yZWFsbSBOZXdUYXJnZXQgd2l0aCBgbnVsbGAgcHJvdG90eXBlIAor
UEFTUyBXZWJBc3NlbWJseS5SdW50aW1lRXJyb3I6IGJvdW5kIFByb3h5IG9mIGNyb3NzLXJlYWxt
IE5ld1RhcmdldCB3aXRoIGBmYWxzZWAgcHJvdG90eXBlIAorUEFTUyBXZWJBc3NlbWJseS5SdW50
aW1lRXJyb3I6IFByb3h5IG9mIGNyb3NzLXJlYWxtIE5ld1RhcmdldCB3aXRoIGB0cnVlYCBwcm90
b3R5cGUgCitQQVNTIFdlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvcjogUHJveHkgb2YgUHJveHkgb2Yg
Y3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdpdGggYC0wYCBwcm90b3R5cGUgCitQQVNTIFdlYkFzc2Vt
Ymx5LlJ1bnRpbWVFcnJvcjogUHJveHkgb2YgYm91bmQgY3Jvc3MtcmVhbG0gTmV3VGFyZ2V0IHdp
dGggYE5hTmAgcHJvdG90eXBlIAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>