<?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>40854</bug_id>
          
          <creation_ts>2010-06-18 13:32:34 -0700</creation_ts>
          <short_desc>JSC bindings for Image Resizer API</short_desc>
          <delta_ts>2010-06-24 16:41:49 -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>Images</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>39905</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Sterling Swigart">sswigart</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dimich</cc>
    
    <cc>dumi</cc>
    
    <cc>levin</cc>
    
    <cc>mjs</cc>
    
    <cc>oliver</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>240104</commentid>
    <comment_count>0</comment_count>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-18 13:32:34 -0700</bug_when>
    <thetext>This patch exposes the classes and their callbacks to JSC through Image.webkitGetImage. The API is functionally incomplete, so it only will ever call the error callback or throw exceptions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240116</commentid>
    <comment_count>1</comment_count>
      <attachid>59151</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-18 13:53:46 -0700</bug_when>
    <thetext>Created attachment 59151
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240127</commentid>
    <comment_count>2</comment_count>
      <attachid>59155</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-18 14:05:19 -0700</bug_when>
    <thetext>Created attachment 59155
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240197</commentid>
    <comment_count>3</comment_count>
      <attachid>59163</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-18 16:00:22 -0700</bug_when>
    <thetext>Created attachment 59163
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240200</commentid>
    <comment_count>4</comment_count>
      <attachid>59165</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-18 16:05:10 -0700</bug_when>
    <thetext>Created attachment 59165
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240208</commentid>
    <comment_count>5</comment_count>
      <attachid>59165</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-06-18 16:12:34 -0700</bug_when>
    <thetext>Comment on attachment 59165
Patch 2: JSC bindings

I&apos;m pretty sure you can create these bindings without any extra code.  If you have trouble, you should ask dumi.

WebCore/ChangeLog:59
 +  2010-06-18  Sterling Swigart  &lt;sswigart@google.com&gt;
You have two ChangeLogs in this patch.

WebCore/bindings/js/JSCustomImageResizerErrorCallback.cpp:47
 +  JSCustomImageResizerErrorCallback::JSCustomImageResizerErrorCallback(JSObject* callback, JSDOMGlobalObject* globalObject)
We should be able to auto-generate these callbacks now.  There are some examples in the database bindings.

WebCore/html/HTMLImageElement.idl:56
 +          [Custom] void webkitGetImage(in DOMString mimeType, in ImageResizerSuccessCallback successCallback, [Optional] in ImageResizerErrorCallback errorCallback, [Optional] in ResizeOptions options)
This shouldn&apos;t be custom.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241036</commentid>
    <comment_count>6</comment_count>
      <attachid>59321</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-21 18:19:13 -0700</bug_when>
    <thetext>Created attachment 59321
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241048</commentid>
    <comment_count>7</comment_count>
      <attachid>59321</attachid>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-06-21 18:39:52 -0700</bug_when>
    <thetext>Comment on attachment 59321
Patch 2: JSC bindings

some drive-by comments:

WebCore/bindings/scripts/CodeGeneratorJS.pm:2182
 +                  push(@implContent, &quot;    args.append(&quot;);
minor: it might be nicer to keep the code shorter by moving this line and the one after the if-block, inside the if-else block:
if (...)
  push(@implContent, &quot;    args.append(jsString(exec, ${paramName}));\n&quot;);
else
  ...

or maybe even add a separate function for this? getToJSString()? i&apos;ll let adam decide what&apos;s best. :)

WebCore/bindings/scripts/CodeGeneratorJS.pm:2185
 +                   } else {
indentation is off by 1 space.

do we need to change the V8 code generator too? or toV8() works correctly on Strings?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241050</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-06-21 18:45:06 -0700</bug_when>
    <thetext>I&apos;m concerned that the spec for this API hasn&apos;t received enough review.  For example, it&apos;s unclear to to implement resizeOptions in other languages, such as Objective-C.  If we want other browsers to adopt this API, we should make sure it follows the regular conventions of other DOM APIs, such as being language neutral.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241305</commentid>
    <comment_count>9</comment_count>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 10:00:56 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 59165 [details])
&gt; I&apos;m pretty sure you can create these bindings without any extra code.  If you have trouble, you should ask dumi.
&gt; 

Done.

&gt; WebCore/ChangeLog:59
&gt;  +  2010-06-18  Sterling Swigart  &lt;sswigart@google.com&gt;
&gt; You have two ChangeLogs in this patch.
&gt; 

Fixed.

&gt; WebCore/bindings/js/JSCustomImageResizerErrorCallback.cpp:47
&gt;  +  JSCustomImageResizerErrorCallback::JSCustomImageResizerErrorCallback(JSObject* callback, JSDOMGlobalObject* globalObject)
&gt; We should be able to auto-generate these callbacks now.  There are some examples in the database bindings.
&gt; 

Done.

&gt; WebCore/html/HTMLImageElement.idl:56
&gt;  +          [Custom] void webkitGetImage(in DOMString mimeType, in ImageResizerSuccessCallback successCallback, [Optional] in ImageResizerErrorCallback errorCallback, [Optional] in ResizeOptions options)
&gt; This shouldn&apos;t be custom.

I asked WPL about this, but I am still looking for further feedback on the current state of this patch.


@Dumitru:

- I consolidated the new CodeGeneratorJS.pm code.
- This patch is only for JSC bindings--when the V8 bindings are added, CodeGeneratorV8.pm will be changed to match.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241306</commentid>
    <comment_count>10</comment_count>
      <attachid>59383</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 10:01:19 -0700</bug_when>
    <thetext>Created attachment 59383
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241325</commentid>
    <comment_count>11</comment_count>
      <attachid>59387</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 10:38:05 -0700</bug_when>
    <thetext>Created attachment 59387
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241454</commentid>
    <comment_count>12</comment_count>
      <attachid>59415</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 14:12:00 -0700</bug_when>
    <thetext>Created attachment 59415
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241578</commentid>
    <comment_count>13</comment_count>
      <attachid>59451</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 18:12:58 -0700</bug_when>
    <thetext>Created attachment 59451
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241607</commentid>
    <comment_count>14</comment_count>
      <attachid>59463</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 19:20:50 -0700</bug_when>
    <thetext>Created attachment 59463
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241611</commentid>
    <comment_count>15</comment_count>
      <attachid>59465</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 19:34:58 -0700</bug_when>
    <thetext>Created attachment 59465
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241612</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-22 19:41:38 -0700</bug_when>
    <thetext>Attachment 59465 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/bindings/js/JSHTMLImageElementCustom.cpp:92:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/bindings/js/JSHTMLImageElementCustom.cpp:93:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/bindings/js/JSHTMLImageElementCustom.cpp:94:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/bindings/js/JSHTMLImageElementCustom.cpp:101:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/bindings/js/JSHTMLImageElementCustom.cpp:102:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/bindings/js/JSHTMLImageElementCustom.cpp:103:  Tab found; better to use spaces  [whitespace/tab] [1]
Total errors found: 6 in 45 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241616</commentid>
    <comment_count>17</comment_count>
      <attachid>59467</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 19:55:28 -0700</bug_when>
    <thetext>Created attachment 59467
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241623</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-22 20:41:06 -0700</bug_when>
    <thetext>Attachment 59467 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/3281627</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241648</commentid>
    <comment_count>19</comment_count>
      <attachid>59474</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 21:43:39 -0700</bug_when>
    <thetext>Created attachment 59474
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241656</commentid>
    <comment_count>20</comment_count>
      <attachid>59476</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 21:57:18 -0700</bug_when>
    <thetext>Created attachment 59476
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241672</commentid>
    <comment_count>21</comment_count>
      <attachid>59478</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-22 22:27:08 -0700</bug_when>
    <thetext>Created attachment 59478
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241676</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-22 23:16:31 -0700</bug_when>
    <thetext>Attachment 59478 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/3337572</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241914</commentid>
    <comment_count>23</comment_count>
      <attachid>59527</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-23 10:16:52 -0700</bug_when>
    <thetext>Created attachment 59527
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241922</commentid>
    <comment_count>24</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2010-06-23 10:28:41 -0700</bug_when>
    <thetext>Attachment 59527 did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/3309603</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241927</commentid>
    <comment_count>25</comment_count>
      <attachid>59530</attachid>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-23 10:36:24 -0700</bug_when>
    <thetext>Created attachment 59530
Patch 2: JSC bindings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241936</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-23 10:53:46 -0700</bug_when>
    <thetext>Attachment 59527 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/3291659</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242013</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-23 12:14:48 -0700</bug_when>
    <thetext>Attachment 59530 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/3273615</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242196</commentid>
    <comment_count>28</comment_count>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-06-23 17:57:19 -0700</bug_when>
    <thetext>Just wanted to point out that the cr-linux bot (incorrectly) skips at least one step when building WebKit, so it goes red for any patch with IDL changes. If you&apos;re concerned about that bot, I&apos;d recommend just patching the changes into a clean Chromium client and building it locally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242232</commentid>
    <comment_count>29</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-06-23 18:42:01 -0700</bug_when>
    <thetext>(In reply to comment #28)
&gt; Just wanted to point out that the cr-linux bot (incorrectly) skips at least one step when building WebKit, so it goes red for any patch with IDL changes. If you&apos;re concerned about that bot, I&apos;d recommend just patching the changes into a clean Chromium client and building it locally.

What step is the bot supposed to run?  It just calls &quot;build-webkit --chromium&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242233</commentid>
    <comment_count>30</comment_count>
    <who name="Sterling Swigart">sswigart</who>
    <bug_when>2010-06-23 18:45:54 -0700</bug_when>
    <thetext>(In reply to comment #29)
&gt; (In reply to comment #28)
&gt; &gt; Just wanted to point out that the cr-linux bot (incorrectly) skips at least one step when building WebKit, so it goes red for any patch with IDL changes. If you&apos;re concerned about that bot, I&apos;d recommend just patching the changes into a clean Chromium client and building it locally.
&gt; 
&gt; What step is the bot supposed to run?  It just calls &quot;build-webkit --chromium&quot;

In my case, I was developing this API under the ENABLE_IMAGE_RESIZER flag, but someone flipped it from 0 to 1 without me knowing. It shouldn&apos;t be building the stuff in the IDLs at all--which is being fixed with 41116.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242726</commentid>
    <comment_count>31</comment_count>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-06-24 16:41:49 -0700</bug_when>
    <thetext>&gt; What step is the bot supposed to run?  It just calls &quot;build-webkit --chromium&quot;

It looks like it misses the &quot;gclient sync&quot; step (WebKitTools/Scripts/update-webkit-chromium). So whenever new files are added, the Makefile is not regenerated, which leads to build errors.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59151</attachid>
            <date>2010-06-18 13:53:46 -0700</date>
            <delta_ts>2010-06-18 14:05:19 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>104054</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5iYzcwMzY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTAtMDYt
MTggIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBKU0Mg
ZXhwb3N1cmUgb2YgdGhlIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGltYWdlIHJlc2l6ZXIgQVBJ
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NTQK
KworICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJn
dW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJj
ZS5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2st
d2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdl
Lmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvcmVzb3VyY2VzL2hlbG1ldC5qcGc6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RF
TVBMQVRFLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHNob3VsZE5vdFRocm93KToKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAoZW1wdHlG
dW5jdGlvbik6CisgICAgICAgICgpOgorICAgICAgICAoT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24u
cHJvdG90eXBlLnZhbHVlT2YpOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVk
LgorICAgICAgICAoZW1wdHlGdW5jdGlvbik6CisgICAgICAgIChkb2N1bWVudC5ib2R5Lm9ubG9h
ZCk6CisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzOiBBZGRlZC4KKyAgICAgICAg
KHN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChlcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBm
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVy
cmlkZS1vay13ZWJraXRHZXRJbWFnZS5qczogQWRkZWQuCisgICAgICAgIChpbWcud2Via2l0R2V0
SW1hZ2UpOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKHN1Y2Nl
c3NDYWxsYmFjayk6CisgICAgICAgIChlcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzogQWRkZWQuCisKIDIwMTAtMDYtMTggIEp1
c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3Vt
ZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li45MjE1OGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMDcgQEAKKworVGVzdHMgdGhlIGFjY2VwdGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50
cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UobnVsbCkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlT
TUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhj
ZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IE5PVF9TVVBQT1JURURfRVJSOiBET00gRXhjZXB0aW9uIDkuCitQQVNT
IGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01J
U01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6
IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
InN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBudWxsKSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbikgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlT
TUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIikgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBudWxsKSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IHdpZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgNDIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgSW5maW5pdHkpIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsICJzdHJpbmciKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1t
eVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1
bW15UHJvcGVydHk6bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15
UHJvcGVydHk6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2R1bW15UHJvcGVydHk6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0
aDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6InN0cmluZyJ9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtoZWlnaHQ6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6
b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWln
aHQ6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJz
dHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25M
ZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFs
dWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0
aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0
cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0
Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5m
aW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVs
Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9u
TGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0eUZ1bmN0
aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRp
bzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e29yaWVudGF0aW9uOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e29yaWVudGF0aW9uOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyYzUxYzUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2Fy
Z3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5
bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0i
cmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10
eXBlcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdl
LWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZDQ3ZWMzCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisK
K1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElE
X1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93bjogRXJyb3I6IElOVkFMSURfU1RBVEVf
RVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJs
ZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4zYzY1MjM2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICIt
Ly9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hl
bG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUi
PjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2st
YWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MWMwODVjCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LgorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxsYmFjayB3YXMgY29ycmVj
dGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBp
bWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNr
LWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLjljM2VkN2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5o
dG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8v
SUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxt
ZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzNjYWFkYgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTEgQEAKKworVGhpcyBlbnN1cmVzIHRoYXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJl
IG92ZXJyaWRkZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgNDIgaXMgbm9uLXplcm8uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJ
bWFnZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVk
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM5NDlkYWYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwx
NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlk
PSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlw
dC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNlcy9oZWxtZXQuanBnIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVs
bWV0LmpwZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDQ4MmFhCkJpbmFy
eSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3MTcwYWEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9InJl
c291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVu
dC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmUzNDE5MWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9h
cmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsxLDE0NSBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRo
ZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldElt
YWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24gc2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgewor
ICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lvbik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9u
ICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVz
dEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcg
ZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQorCitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4
cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVz
c2lvblNob3VsZFRocm93KSB7CisgICAgICAgIGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAg
ICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyAr
IGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0pKCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBzaG91bGROb3RUaHJvdyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3Zh
ciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24oKSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRocm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1
ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4
Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5l
R2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0
aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsKK3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9
IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpOworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoKScs
IHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKScsIHRydWUpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1bmN0aW9uKScsIHRydWUsICdF
cnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOScpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCA0MiknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpJywgdHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
bnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHt9KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgZW1w
dHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHRydWUpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBJbmZpbml0eSknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
LUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwgbnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUsICdFcnJvcjogd2lkdGggZ2V0
dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHRydWUpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBJbmZpbml0eSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCAic3RyaW5nIikn
LCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVuY3Rp
b259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSknLCBmYWxzZSk7Cit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0p
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSknLCBmYWxzZSk7CisK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBl
eGNlcHRpb24nKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHt3aWR0aDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZp
bml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdo
dDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdo
dDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSknLCBmYWxz
ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rl
c3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNz
aW9uTGV2ZWw6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlv
bicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXBy
ZXNzaW9uTGV2ZWw6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpJbmZp
bml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSknLCBmYWxzZSk7CisK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZl
QXNwZWN0UmF0aW86e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0pJywgZmFsc2Up
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm51
bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOjQyfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVu
dGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjoic3RyaW5n
In0pJywgZmFsc2UpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1
Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMt
bm8tc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjg1M2E5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQt
dGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpAQCAtMCwwICsxLDIwIEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCBhbiBpbWFnZSB3aXRoIG5vIHNvdXJjZSB3aWxsIHRocm93IGFuIElOVkFM
SURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4iKTsKKwordmFyIGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlv
bigpIHt9OworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScp
OworaW1nLnNyYyA9IG51bGw7CisKK2RvY3VtZW50LmJvZHkub25sb2FkID0gZnVuY3Rpb24oKSB7
CisJdHJ5IHsKKwkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RGYWlsZWQoIlNob3Vs
ZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duLi4uIik7CisJ
CWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2VkKCJFeGNlcHRpb24g
d2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0KCk7CisJfQorfTsK
Kword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNl
ZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQu
anMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYTg3Y2ViYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDE3IEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LiIpOworCit2YXIgc3Vj
Y2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxvYikgeworICAgIHRlc3RGYWlsZWQoIlN1Y2Nlc3Mg
Y2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNhbGxlZCIpOworICAgIGZpbmlzaEpTVGVzdCgpOwor
fTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBmdW5jdGlvbihlcnJvcikgeworICAgIHRlc3RQYXNz
ZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIHdpdGggb3V0cHV0OiAiICsg
ZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKworLy8gT25seSB0aGUgZXJyb3IgY2Fs
bGJhY2sgd2lsbCBjdXJyZW50bHkgZXZlciBiZSBjYWxsZWQgaW4gdGhpcyBwYXRjaCwgc28gdGVz
dCB0aGF0IGl0IHdvcmtzIGZvciBub3cKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0SW1h
Z2UnKS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JD
YWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Vi
a2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NzZjYzYzCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwx
MCBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0aGF0IHdlYmtpdEdldEltYWdlIG1heSBi
ZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2QuIik7CisKK3ZhciBpbWcgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7CitpbWcud2Via2l0R2V0SW1hZ2UgPSBmdW5j
dGlvbigpIHsgcmV0dXJuIDQyOyB9Cit2YXIgcmVzdWx0ID0gaW1nLndlYmtpdEdldEltYWdlKCk7
CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZh
bHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjOTVkNjEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAtMCwwICsxLDE3IEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LiIpOworCit2YXIgc3Vj
Y2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oKSB7CisgICAgdGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxs
YmFjayB3YXMgaW5jb3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9Owor
Cit2YXIgZXJyb3JDYWxsYmFjayA9IGZ1bmN0aW9uKCkgeworICAgIHRlc3RQYXNzZWQoIkVycm9y
IGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9
OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3aWxsIGN1cnJlbnRseSBldmVyIGJlIGNh
bGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3MgZm9yIG5vdworZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVn
Iiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKKword2luZG93LmpzVGVzdElzQXN5
bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNWRiMjAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQg
dGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgRXJyb3IgY2FsbGJhY2sgd2FzIGNvcnJlY3RseSBjYWxsZWQKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3Qt
Y2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjdkZmI4YQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVz
dC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHls
ZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJy
ZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBp
ZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJh
Y2tzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3Jp
Z2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJr
aXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jNDhlZjg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhhdCBJbWFnZS53ZWJraXRHZXRJbWFnZSBj
YW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmlnaW4uCisKKworUEFTUzog
VGhyZXcgZXhjZXB0aW9uOiBFcnJvcjogU0VDVVJJVFlfRVJSOiBET00gRXhjZXB0aW9uIDE4CisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4M2VlOTEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVt
b3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMzEgQEAKKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKG1zZykKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgibG9nIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobXNnICsgIlxu
IikpOworfQorCit2YXIgZW1wdHlDYWxsYmFjayA9IGZ1bmN0aW9uKCkgeyB9OworCit3aW5kb3cu
b25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgdHJ5
IHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RJbWFnZSIpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUNhbGxiYWNrKTsKKyAgICAgICAgbG9nKCJGQUlMOiBE
aWQgbm90IHRocm93IGV4Y2VwdGlvbiIpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgbG9n
ICgiUEFTUzogVGhyZXcgZXhjZXB0aW9uOiAiICsgZSk7CisgICAgfQorCisgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxwPlRlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgY2Fubm90IGJlIGNhbGxlZCBvbiBh
biBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLjwvcD4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZyI+Cis8cHJlIGlk
PSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2hlbG1ldC5qcGcgZGlmZmVyCmRpZmYgLS1naXQg
YS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBh
ZWI0YjY4Li4wMWMyYTVlIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI2Miw2ICsyNjIsOCBAQCBTRVQoV2ViQ29yZV9J
RExfRklMRVMKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsCiAgICAgaHRtbC9IVE1MVmlk
ZW9FbGVtZW50LmlkbAogICAgIGh0bWwvSW1hZ2VEYXRhLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5pZGwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5pZGwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsCiAgICAgaHRtbC9UZXh0TWV0cmljcy5pZGwK
ICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaWRsCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk5M2ExMjEuLjZlMzQzNGYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzQg
QEAKKzIwMTAtMDYtMTggIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIEpT
QyBiaW5kaW5ncyBhbmQgY2FsbGJhY2tzIGZvciBpbWFnZSByZXNpemVyIEFQSS4gVGhlIEFQSSBp
cyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0ZSwgc28KKyAgICAgICAgdGhlIHN1Y2Nlc3MgY2FsbGJh
Y2sgaXMgbmV2ZXIgY2FsbGVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDA4NTQKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAq
IERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAg
ICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAg
KiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKyAgICAgICAgKiBXZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6
CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6Omhh
bmRsZUV2ZW50KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazo6aGFuZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZSk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpjcmVhdGVSZXNpemVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJl
c2l6ZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZpbmlz
aGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IpOgor
ICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJ
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Vi
a2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAq
IGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjazo6SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjp+SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6
CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDogQWRkZWQuCisg
ICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OkltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2s6On5JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgorICAgICAgICAqIGh0bWwvSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFn
ZVJlc2l6ZXJUaHJlYWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFk
OjpzdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVz
aXplclRocmVhZCk6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDoKKyAgICAg
ICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNp
emVPcHRpb25zOjopOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWln
aHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZl
bCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9wdGlvbnMpOgorCiAyMDEwLTA2LTE4
ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2
aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
Y3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXggN2FjM2U1MS4uY2U1YzhmMyAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQAogI2luY2x1ZGUgIkpTSURCUmVxdWVz
dC5jcHAiCiAjaW5jbHVkZSAiSlNJREJTdWNjZXNzRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTSW1h
Z2VEYXRhLmNwcCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIgor
I2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJK
U0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIgogI2luY2x1ZGUgIkpTSmF2YVNjcmlwdENhbGxG
cmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmNwcCIKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpp
bmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yMjMsNiArMjIzLDgg
QEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSURCUmVxdWVzdCBcCiAgICAgSURCU3VjY2Vzc0V2ZW50
IFwKICAgICBJbWFnZURhdGEgXAorICAgIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBcCisg
ICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBcCiAgICAgSW5kZXhlZERhdGFiYXNlUmVxdWVz
dCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0IFwKICAgICBJbnNwZWN0b3JCYWNrZW5kIFwKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFt
CmluZGV4IGU3ODU3NDkuLjAzNmVhYjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUu
YW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtNDA5LDYgKzQwOSwxMCBAQCB3ZWJj
b3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDbGlwYm9hcmRDdXN0b20u
Y3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAgXAogCVdlYkNv
cmUvYmluZGluZ3MvanMvSlNDb29yZGluYXRlc0N1c3RvbS5jcHAgXAorCVdlYkNvcmUvYmluZGlu
Z3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKwlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAorCVdl
YkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBc
CisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwIFwK
IAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oIFwKIAlXZWJD
b3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCBcCkBAIC00
NTUsNiArNDU5LDcgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNI
VE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJ
bWFnZUVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0
RWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVt
ZW50Q3VzdG9tLmggXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1
c3RvbS5jcHAgXApAQCAtMTI2Nyw2ICsxMjcyLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlX
ZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1h
Z2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmggXAogCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3Bw
IFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9M
YWJlbHNOb2RlTGlzdC5jcHAgXApAQCAtMTI3NCw2ICsxMjgxLDcgQEAgd2ViY29yZV9zb3VyY2Vz
ICs9IFwKIAlXZWJDb3JlL2h0bWwvTWVkaWFFcnJvci5oIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9h
ZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29y
ZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5jcHAgXAog
CVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuaCBcCiAJV2ViQ29yZS9odG1sL1RleHRNZXRyaWNzLmgg
XApAQCAtMjYyMSw2ICsyNjI5LDE2IEBAIEZFQVRVUkVfREVGSU5FUyArPSBFTkFCTEVfSU1BR0Vf
UkVTSVpFUj0xCiAKIHdlYmNvcmVfY3BwZmxhZ3MgKz0gLURFTkFCTEVfSU1BR0VfUkVTSVpFUj0x
CiAKK3dlYmNvcmVfc291cmNlcyArPSBcCisgICAgV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCBcCisgICAgV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oIFwKKyAgICBXZWJDb3JlL2h0bWwvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmNwcCBcCisgICAgV2ViQ29yZS9odG1sL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmNwcAorCitJRExfQklORElOR1MgKz0gXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5pZGwKKwogZWxzZQogd2ViY29yZV9jcHBmbGFncyArPSAtREVOQUJMRV9JTUFHRV9S
RVNJWkVSPTAKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQppbmRleCBmMmNkZDY3Li5jZDMxMzM2IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTg3LDYgKzE4Nyw4IEBA
CiAgICAgICAgICAgICAnaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAn
aHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEu
aWRsJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwn
LAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGV4dE1l
dHJpY3MuaWRsJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuaWRsJywKQEAgLTUxNCw2
ICs1MTYsOCBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJhdGlv
bkN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJh
dGlvbkN1c3RvbS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9t
LmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1
c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1
c3RvbVBvc2l0aW9uQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDdXN0
b21Qb3NpdGlvbkVycm9yQ2FsbGJhY2suY3BwJywKQEAgLTU3MSw2ICs1NzUsNyBAQAogICAgICAg
ICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAg
ICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAnLAogICAg
ICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywKKyAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwJywKICAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwJywKICAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uaCcsCiAgICAg
ICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAnLApAQCAt
MTY1Niw2ICsxNjYxLDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxWaWV3U291cmNlRG9jdW1l
bnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuY3BwJywKICAgICAgICAgICAgICdo
dG1sL0ltYWdlRGF0YS5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwJywKICAgICAgICAg
ICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5oJywKICAgICAgICAgICAgICdodG1sL0xhYmVs
c05vZGVMaXN0LmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJpIGIvV2ViQ29y
ZS9XZWJDb3JlLnByaQppbmRleCAyNWM5NWZmLi40ZTZlZmU3IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAgLTQyMiw2ICs0MjIsOCBA
QCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogICAg
IGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSW1hZ2VEYXRhLmlkbCBcCisg
ICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisgICAgaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsIFwKICAg
ICBodG1sL1RleHRNZXRyaWNzLmlkbCBcCiAgICAgaHRtbC9UaW1lUmFuZ2VzLmlkbCBcCmRpZmYg
LS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCA5
MmE3NzVjLi40NjE5ZDg1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dl
YkNvcmUvV2ViQ29yZS5wcm8KQEAgLTI4MSw2ICsyODEsOCBAQCBTT1VSQ0VTICs9IFwKICAgICBi
aW5kaW5ncy9qcy9KU0NTU1N0eWxlRGVjbGFyYXRpb25DdXN0b20uY3BwIFwKICAgICBiaW5kaW5n
cy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNDb29yZGluYXRl
c0N1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcCBcCisgICAgYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNDdXN0b21Qb3NpdGlvbkNhbGxiYWNr
LmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNDdXN0b21Qb3NpdGlvbkVycm9yQ2FsbGJhY2suY3Bw
IFwKICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFjay5jcHAgXApAQCAtMzE0LDcg
KzMxNiw5IEBAIFNPVVJDRVMgKz0gXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEZvcm1FbGVtZW50
Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCBcCisg
ICAgYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGlu
Z3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0
RWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRD
dXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3Rv
bS5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
aiBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4u
MTRjZGVmYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
agorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2
ICszNzY2MSwxNCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRp
dmVQYXRoPSIuLlxodG1sXEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQor
CQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxl
DQogCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJ
CQk+DQogCQkJPC9GaWxlPg0KQEAgLTM3Njg5LDYgKzM3Njk3LDEwIEBACiAJCQkJPg0KIAkJCTwv
RmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9u
cy5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxTdGVwUmFuZ2UuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTM4NDk2LDYg
KzM4NTA4LDEzIEBACiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJ
CQkJPEZpbGUNCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIg0KKwkJCQkJPg0KKwkJCQk8L0ZpbGU+DQorCQkJ
CTxGaWxlDQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiDQorCQkJCQk+DQorCQkJCTxGaWxlDQogCQkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAiDQog
CQkJCQk+DQogCQkJCTwvRmlsZT4NCkBAIC00MDEyOCw3ICs0MDE0Nyw5IEBACiAJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCisKIAkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxFbWJlZEVsZW1lbnRDdXN0b20uY3BwIg0KKwog
CQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCiAJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4z
MiINCkBAIC00MDM4OCw2ICs0MDQwOSw1OSBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
IAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGlu
Z3NcanNcSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCINCisJCQkJCT4NCisJCQkJCTxGaWxl
Q29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiINCisJ
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJ
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
X0ludGVybmFsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJ
CT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJ
CS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9u
DQorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVp
bGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8
RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJ
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJ
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdf
QWxsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJ
CQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQor
CQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5j
cHAiDQogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCmRpZmYgLS1naXQgYS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAzMGIyOWQuLjg4ZjdhN2UgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNTA5LDYgKzM1MDksMTQg
QEAKIAkJQjAxNDlFN0UxMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QTExQTRC
MjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCAqLzsgfTsKIAkJQjAxNDlFN0YxMUE0
QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyog
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLzsgfTsKIAkJQjAxNDlFODAxMUE0QjIxNTAwMTk2QTdC
IC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjAxNDlFN0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRo
cmVhZC5oICovOyB9OworCQlCMDRFNkJGMjExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9u
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjA0RTZC
RjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLzsgfTsKKwkJQjA0RTZCRjUx
MUM3RjA3OTAwMjE0MjgzIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEMxMUFCMUVBMDAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4
MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUIwNEY1OUZGMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVs
ZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgKi87IH07CisJCUIwQTcxMzY3MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjBBNzEzNjMxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcxMzY4MTFDOTYyMjUwMDNDMzM3
MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzY0MTFDOTYyMjUwMDNDMzM3MyAv
KiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjBBNzEzNjkx
MUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzY1
MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5j
cHAgKi87IH07CisJCUIwQTcxMzZBMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAv
KiBKU1NWR0FFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAq
LzsgfTsKIAkJQjIwMTExMDgwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0
MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2Nzcw
MDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQ
T0RUeXBlV3JhcHBlci5oICovOyB9OwpAQCAtODg0NSw2ICs4ODUzLDE0IEBACiAJCUIwMTQ5RTdB
MTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBBc3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFk
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRo
cmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSW1hZ2VSZXNpemVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9w
dGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAg
LyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzEzNjQxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjBBNzEzNjUxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTExMDYwQUI3NzQwNTAwREIw
RTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTU1ZHQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIxMTI3QTUw
QjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUE9EVHlwZVdyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTEzMzg1LDYgKzEzNDAxLDcgQEAKIAkJOTNFRUMxRUMwOUMyODc3NzAw
QzUxNUQxIC8qIGh0bWwgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0g
KAorCQkJCUIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi8sCiAJ
CQkJNDk0ODRGQUUxMDJDRjAxRTAwMTg3REQzIC8qIGNhbnZhcyAqLywKIAkJCQlCMDE0OUU3OTEx
QTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuY3BwICovLAogCQkJCUIwMTQ5RTdB
MTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovLApAQCAtMTM2OTksNiAr
MTM3MTYsOCBAQAogCQkJCUE3Nzk3OTEzMEQ2QjlEMEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuY3Bw
ICovLAogCQkJCUE3Nzk3OTE0MEQ2QjlEMEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuaCAqLywKIAkJ
CQlBNzc5NzkxNTBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmlkbCAqLywKKwkJCQlCMDE0
QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovLAor
CQkJCUIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaCAqLywKIAkJCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhy
ZWFkLmNwcCAqLywKIAkJCQlCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVy
VGhyZWFkLmggKi8sCiAJCQkJQTQ1NkZBMjQxMUFENEE4MzAwMjBCNDIwIC8qIExhYmVsc05vZGVM
aXN0LmNwcCAqLywKQEAgLTE1NTEzLDYgKzE1NTMyLDcgQEAKIAkJCQlCQzJFRDdBNDBDNkMwRjM2
MDA5MjBCRkYgLyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q0MUFC
QTBDMDYwREU4MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCAqLywK
IAkJCQlCQzJFRDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAgKi8sCisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxl
bWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkNDNzAwNTMzREQ1IC8qIEpTSFRN
TElucHV0RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVDQTMwQzA3ODFCQjAwQ0QyMEYw
IC8qIEpTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCTQ0OEFEMjdBMEE0ODEz
NzkwMDIzRDE3OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCkBAIC0x
NTgwNSw2ICsxNTgyNSwxMCBAQAogCQlCQ0NFNThBNzEwNjFFODJGMDA4RkIzNUEgLyogQ2FsbGJh
Y2sgT2JqZWN0cyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQjBBNzEzNjMxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzEzNjQxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9t
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxMzY1MTFDOTYyMjUwMDND
MzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJCQkJ
QjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmggKi8sCiAJCQkJMTQ0OUUyODYxMDdENERCNDAwQjU3OTNGIC8qIEpTQ2FsbGJhY2tE
YXRhLmNwcCAqLywKIAkJCQkxNDQ5RTI0QTEwN0Q0QTg0MDBCNTc5M0YgLyogSlNDYWxsYmFja0Rh
dGEuaCAqLywKIAkJCQlGRTgwRDdBMjBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlv
bkNhbGxiYWNrLmNwcCAqLywKQEAgLTE5NDQyLDYgKzE5NDY2LDExIEBACiAJCQkJRTFCRTUxMkUw
Q0Y2QzUxMjAwMkVBOTU5IC8qIFhTTFRVbmljb2RlU29ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
OTdERDREODcwRkRGNEQ2RTAwRUNGOUE0IC8qIFhTU0F1ZGl0b3IuaCBpbiBIZWFkZXJzICovLAog
CQkJCUNFMTcyRTAxMTEzNkU4Q0UwMDYyQTUzMyAvKiBab29tTW9kZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4
MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3
MTM2ODExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTM2QTExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0
b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJ
CXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjA1NDMs
NiArMjA1NzIsOCBAQAogCQkJCUJDNjg2QzdDMEUwQzMzMDEwMERFOEEwOCAvKiBKU0NTU1Zhcmlh
Ymxlc0RlY2xhcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDNjg2QzdFMEUwQzMzMDEw
MERFOEEwOCAvKiBKU0NTU1ZhcmlhYmxlc1J1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTQ3
NzhCN0YxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8s
CisJCQkJQjBBNzEzNjcxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3MTM2OTExQzk2MjI1MDAzQzMz
NzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJRkU4MEQ3QTcwRTlDMUVEMjAwMEQ2Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25DYWxs
YmFjay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRTgwRDdBOTBFOUMxRUQyMDAwRDZGNzUgLyog
SlNDdXN0b21Qb3NpdGlvbkVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFF
QzkyNjUwQ0U5MERENDAwRjkwMzA4IC8qIEpTQ3VzdG9tU1FMU3RhdGVtZW50RXJyb3JDYWxsYmFj
ay5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIwNjU0LDYgKzIwNjg1LDcgQEAKIAkJCQlCQzQ5MThD
ODBCRkVBMDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1
c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBBMUNERDJEMDBCNDJCMjUgLyog
SlNIVE1MSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwNEY1OUZGMTFDNkFG
RDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0RWxlbWVudC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5w
dXRFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk5MEExQ0REMkQw
MEI0MkIyNSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MzIyZjI0Ci0t
LSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suY3BwCkBAIC0wLDAgKzEsNjggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICog
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaWYgRU5BQkxF
KElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIlNjcmlwdENv
bnRyb2xsZXIuaCIKKyNpbmNsdWRlIDxydW50aW1lL0pTTG9jay5oPgorI2luY2x1ZGUgPHJ1bnRp
bWUvSlNTdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2soSlNPYmplY3QqIGNh
bGxiYWNrLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQorICAgIDogSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjayhnbG9iYWxPYmplY3QtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkK
KyAgICAsIG1fZGF0YShjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KQoreworfQorCit2b2lkIEpTQ3Vz
dG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazo6aGFuZGxlRXZlbnQoY29uc3QgU3RyaW5nJiBl
cnJvcikKK3sKKyAgICAvLyBBY3RpdmVET01PYmplY3Qgd2lsbCBudWxsIG91ciBwb2ludGVyIHRv
IHRoZSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IHdoZW4gaXQgZ29lcyBhd2F5LgorICAgIGlmICgh
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBSZWZQdHI8
SlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBwcm90ZWN0KHRoaXMpOworCisgICAg
SlNDOjpKU0xvY2sgbG9jayhTaWxlbmNlQXNzZXJ0aW9uc09ubHkpOworICAgIEV4ZWNTdGF0ZSog
ZXhlYyA9IG1fZGF0YS5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpOworICAgIE1hcmtlZEFy
Z3VtZW50QnVmZmVyIGFyZ3M7CisgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgZXJyb3Ip
KTsKKyAgICBtX2RhdGEuaW52b2tlQ2FsbGJhY2soYXJncyk7Cit9CisKK30KKworI2VuZGlmIC8v
IEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBiL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYTJhNDA0YgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKQEAgLTAsMCArMSw2MCBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAq
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
CisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICog
T1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpZm5kZWYgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSlND
dXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKworI2luY2x1ZGUgIkltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5oIgorI2luY2x1ZGUg
PHd0Zi9Gb3J3YXJkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2Ns
YXNzIEpTRE9NR2xvYmFsT2JqZWN0OworCitjbGFzcyBKU0N1c3RvbUltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2sgOiBwdWJsaWMgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayB7CitwdWJsaWM6Cisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8SlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBj
cmVhdGUoSlNDOjpKU09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEpTQ3VzdG9tSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjayhjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KSk7CisgICAgfQorCisg
ICAgdmlydHVhbCB2b2lkIGhhbmRsZUV2ZW50KGNvbnN0IFN0cmluZyYpOworCitwcml2YXRlOgor
ICAgIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhKU0M6OkpTT2JqZWN0KiBjYWxs
YmFjaywgSlNET01HbG9iYWxPYmplY3QqKTsKKworICAgIEpTQ2FsbGJhY2tEYXRhIG1fZGF0YTsK
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEpTQ3VzdG9tSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
Q3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBiL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkYmEzNmQKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcApAQCAt
MCwwICsxLDY5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBt
ZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpTQ3VzdG9tSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNp
bmNsdWRlICJCbG9iLmgiCisjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJKU0Jsb2IuaCIK
KyNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCisjaW5jbHVkZSA8cnVudGltZS9KU0xvY2su
aD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordXNp
bmcgbmFtZXNwYWNlIEpTQzsKKworSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6
OkpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKEpTT2JqZWN0KiBjYWxsYmFjaywg
SlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAgICA6IEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjayhnbG9iYWxPYmplY3QtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKKyAgICAs
IG1fZGF0YShjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KQoreworfQorCit2b2lkIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjpoYW5kbGVFdmVudChCbG9iKiBibG9iKQoreworICAg
IC8vIEFjdGl2ZURPTU9iamVjdCB3aWxsIG51bGwgb3VyIHBvaW50ZXIgdG8gdGhlIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQgd2hlbiBpdCBnb2VzIGF3YXkuCisgICAgaWYgKCFzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCkpCisgICAgICAgIHJldHVybjsKKworICAgIFJlZlB0cjxKU0N1c3RvbUltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gcHJvdGVjdCh0aGlzKTsKKworICAgIEpTQzo6SlNMb2Nr
IGxvY2soU2lsZW5jZUFzc2VydGlvbnNPbmx5KTsKKyAgICBFeGVjU3RhdGUqIGV4ZWMgPSBtX2Rh
dGEuZ2xvYmFsT2JqZWN0KCktPmdsb2JhbEV4ZWMoKTsKKyAgICBNYXJrZWRBcmd1bWVudEJ1ZmZl
ciBhcmdzOworICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgZGVwcmVjYXRlZEdsb2JhbE9iamVj
dEZvclByb3RvdHlwZShleGVjKSwgYmxvYikpOworICAgIG1fZGF0YS5pbnZva2VDYWxsYmFjayhh
cmdzKTsKK30KKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmggYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTAwZTY0MAotLS0g
L2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaApAQCAtMCwwICsxLDYwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAg
ICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMK
KyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
KyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFja19oCisjZGVmaW5lIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrX2gKKworI2luY2x1ZGUgIkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgor
I2luY2x1ZGUgIkpTQ2FsbGJhY2tEYXRhLmgiCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgSlNET01HbG9iYWxPYmpl
Y3Q7CisKK2NsYXNzIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGlj
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IGNyZWF0ZShKU0M6OkpT
T2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAgICB7
CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2soY2FsbGJhY2ssIGdsb2JhbE9iamVjdCkpOworICAgIH0KKworICAgIHZpcnR1YWwg
dm9pZCBoYW5kbGVFdmVudChCbG9iKik7CisKK3ByaXZhdGU6CisgICAgSlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2soSlNDOjpKU09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFs
T2JqZWN0Kik7CisKKyAgICBKU0NhbGxiYWNrRGF0YSBtX2RhdGE7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVu
dEN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmY1Zjg4ZgotLS0gL2Rl
di9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9t
LmNwcApAQCAtMCwwICsxLDE2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0hU
TUxJbWFnZUVsZW1lbnQuaCIKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVk
ZSAiRE9NV2luZG93LmgiCisjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgorI2luY2x1ZGUg
IkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTQ3VzdG9t
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5o
IgorI2luY2x1ZGUgPHJ1bnRpbWUvSlNGdW5jdGlvbi5oPgorI2luY2x1ZGUgPHJ1bnRpbWUvSlNT
dHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisKK3VzaW5nIG5hbWVzcGFjZSBKU0M7CisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soRXhlY1N0YXRl
KiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQor
eworICAgIGlmICghdmFsdWUuaW5oZXJpdHMoJkpTRnVuY3Rpb246OmluZm8pKSB7CisgICAgICAg
IHNldERPTUV4Y2VwdGlvbihleGVjLCBUWVBFX01JU01BVENIX0VSUik7CisgICAgICAgIHJldHVy
biAwOworICAgIH0KKworICAgIEpTT2JqZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1ZSk7Cisg
ICAgcmV0dXJuIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjpjcmVhdGUob2Jq
ZWN0LCBnbG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKEV4ZWNTdGF0ZSog
ZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKK3sK
KyAgICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93ZWQp
LCBhbmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgp
KQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghdmFsdWUuaW5oZXJpdHMoJkpTRnVuY3Rp
b246OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBUWVBFX01JU01BVENI
X0VSUik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTT2JqZWN0KiBvYmplY3Qg
PSBhc09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3RhdGljIFBhc3NS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlUmVzaXplT3B0aW9ucyhFeGVjU3RhdGUqIGV4ZWMs
IEpTVmFsdWUgdmFsdWUpCit7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlv
bnMgPSBSZXNpemVPcHRpb25zOjpjcmVhdGUoKTsKKworICAgIC8vIEFyZ3VtZW50IGlzIG9wdGlv
bmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93ZWQuCisg
ICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAgICAgICAgLy8gVXNlIGRlZmF1
bHQgb3B0aW9ucy4KKyAgICAgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOworICAg
IH0KKyAgICBKU09iamVjdCogb2JqZWN0ID0gdmFsdWUudG9PYmplY3QoZXhlYyk7CisKKyAgICBK
U1ZhbHVlIHdpZHRoID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAid2lkdGgi
KSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAg
ICBpZiAoIXdpZHRoLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0
V2lkdGgod2lkdGgudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgaGVpZ2h0
ID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiaGVpZ2h0IikpOworICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCFoZWln
aHQuaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRIZWlnaHQoaGVp
Z2h0LnRvRmxvYXQoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIGNvbXByZXNzaW9uTGV2
ZWwgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJjb21wcmVzc2lvbkxldmVs
IikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgaWYgKCFjb21wcmVzc2lvbkxldmVsLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXpl
T3B0aW9ucy0+c2V0Q29tcHJlc3Npb25MZXZlbChjb21wcmVzc2lvbkxldmVsLnRvRmxvYXQoZXhl
YykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIHByZXNlcnZlQXNwZWN0UmF0aW8gPSBvYmplY3Qt
PmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJwcmVzZXJ2ZUFzcGVjdFJhdGlvIikpOworICAg
IGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCFw
cmVzZXJ2ZUFzcGVjdFJhdGlvLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9u
cy0+c2V0QXNwZWN0UmF0aW9PcHRpb24ocHJlc2VydmVBc3BlY3RSYXRpby50b0Jvb2xlYW4oZXhl
YykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIG9yaWVudGF0aW9uID0gb2JqZWN0LT5nZXQoZXhl
YywgSWRlbnRpZmllcihleGVjLCAib3JpZW50YXRpb24iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIW9yaWVudGF0aW9uLmlzVW5k
ZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0T3JpZW50YXRpb25PcHRpb24o
dXN0cmluZ1RvU3RyaW5nKG9yaWVudGF0aW9uLnRvU3RyaW5nKGV4ZWMpKSk7CisgICAgICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKwor
ICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsKK30KKworSlNWYWx1ZSBKU0hUTUxJ
bWFnZUVsZW1lbnQ6OndlYmtpdEdldEltYWdlKEV4ZWNTdGF0ZSogZXhlYykKK3sKKyAgICBFeGNl
cHRpb25Db2RlIGVjID0gMDsKKworICAgIGNvbnN0IFN0cmluZyYgbWltZVR5cGUgPSB1c3RyaW5n
VG9TdHJpbmcoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykpOworCisgICAgUmVmUHRy
PEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrID0gY3JlYXRlSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKGV4ZWMsIHN0YXRpY19jYXN0PEpTRE9NR2xvYmFsT2Jq
ZWN0Kj4oZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwgZXhlYy0+YXJndW1lbnQoMSkpOwor
ICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7CisgICAgQVNTRVJUKHN1Y2Nlc3NDYWxsYmFjayk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IGNyZWF0ZUltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhp
Y2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgyKSk7CisgICAgaWYgKGV4ZWMtPmhh
ZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIEZJ
WE1FOiBNb3JlIHNvcGhpc3RpY2F0ZWQgZXJyb3IgaGFuZGxpbmcgZm9yIHBhcmFtZXRlcnM/Cisg
ICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVhdGVSZXNpemVPcHRp
b25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9u
KCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChyZXNpemVPcHRp
b25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19jYXN0PEhUTUxJbWFn
ZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1
Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgpLCByZXNpemVP
cHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBlYyk7Cisg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1s
L0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5j
cHAKaW5kZXggNGJiNzRjOS4uMzJlYTY1MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5j
SW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3Bw
CkBAIC0zNCwyOCArMzQsMzAgQEAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAj
aW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVk
ZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2lu
Y2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gQXN5bmNJbWFnZVJlc2l6
ZXI6OmNyZWF0ZShDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlw
ZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNj
cmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9u
IGFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikK
K1Bhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IEFzeW5jSW1hZ2VSZXNpemVyOjpjcmVhdGUo
Q2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxS
ZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcg
QXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMs
IHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRp
b24sIG9yaWVudGF0aW9uT3B0aW9uKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBBc3luY0lt
YWdlUmVzaXplcihjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJv
ckNhbGxiYWNrLCByZXNpemVPcHRpb25zKSk7CiB9CiAKLUFzeW5jSW1hZ2VSZXNpemVyOjpBc3lu
Y0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0
VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ss
IFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0
aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlv
bikKLSAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCitBc3luY0ltYWdlUmVzaXplcjo6
QXN5bmNJbWFnZVJlc2l6ZXIoQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91
dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxs
YmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQorCTogbV9jYWNo
ZWRJbWFnZShjYWNoZWRJbWFnZSkKKyAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQogICAg
ICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxi
YWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKLSAgICAs
IG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1YWxpdHkp
Ci0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAgICwgbV9v
cmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXplT3B0aW9u
cyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5pc09iamVj
dCgpKTsKKyAgICAvLyBGcm9tIG5vdyBvbiwgbV9jYWxsYmFjayBjb250cm9scyB0aGUgbGlmZXRp
bWUgb2YgQXN5bmNJbWFnZVJlc2l6ZXIuCisgICAgbV9jYWxsYmFja0luZm8gPSBuZXcgQ2FsbGJh
Y2tJbmZvKHRoaXMpOworICAgIEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5nZXQoKSk7CiAgICAg
bV9jYWNoZWRJbWFnZS0+YWRkQ2xpZW50KHRoaXMpOwogfQogCkBAIC02NywxMSArNjksMjEgQEAg
dm9pZCBBc3luY0ltYWdlUmVzaXplcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqIGNh
Y2hlZFJlc291cmNlKQogewogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSA9IGNh
Y2hlZFJlc291cmNlLT5kYXRhKCktPmNvcHkoKTsKICAgICBjYWNoZWRSZXNvdXJjZS0+cmVtb3Zl
Q2xpZW50KHRoaXMpOwotICAgIENhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvID0gbmV3IENhbGxi
YWNrSW5mbyh0aGlzKTsKLSAgICBpZiAoIUltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoaW1hZ2VE
YXRhLCBjYWxsYmFja0luZm8sIG1fb3V0cHV0VHlwZSwgbV9kZXNpcmVkQm91bmRzLCBtX3F1YWxp
dHksIG1fYXNwZWN0UmF0aW9PcHRpb24sIG1fb3JpZW50YXRpb25PcHRpb24pKQorICAgIGlmICgh
SW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChpbWFnZURhdGEsIG1fY2FsbGJhY2tJbmZvLCBtX291
dHB1dFR5cGUsIEludFNpemUobV9yZXNpemVPcHRpb25zLT53aWR0aCgpLCBtX3Jlc2l6ZU9wdGlv
bnMtPmhlaWdodCgpKSwgbV9yZXNpemVPcHRpb25zLT5jb21wcmVzc2lvbkxldmVsKCksIG1fcmVz
aXplT3B0aW9ucy0+YXNwZWN0UmF0aW9PcHRpb24oKSwgbV9yZXNpemVPcHRpb25zLT5vcmllbnRh
dGlvbk9wdGlvbigpKSkKICAgICAgICAgcmVzaXplRXJyb3IoKTsKIH0KIAordm9pZCBBc3luY0lt
YWdlUmVzaXplcjo6cmVzaXplQ29tcGxldGUoUmVmUHRyPEJsb2I+IGJsb2IpCit7CisgICAgbV9z
dWNjZXNzQ2FsbGJhY2stPmhhbmRsZUV2ZW50KGJsb2IuZ2V0KCkpOworfQorCit2b2lkIEFzeW5j
SW1hZ2VSZXNpemVyOjpyZXNpemVFcnJvcigpCit7CisgICAgaWYgKG1fZXJyb3JDYWxsYmFjay5n
ZXQoKSkKKyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudCgiVW5leHBlY3RlZCBl
cnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmgKaW5kZXggM2VlZWVhZC4uZmZjODVhMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5j
SW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKQEAg
LTQwLDcgKzQwLDExIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdl
OworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6ZU9w
dGlvbnM7CisKIAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJbWFn
ZSB0aGF0IGlzIHBhc3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0cyBh
biBJbWFnZVJlc2l6ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVkLCBJ
bWFnZVJlc2l6ZXJUaHJlYWQKQEAgLTY2LDM4ICs3MCwyMiBAQCBwdWJsaWM6CiAgICAgICAgIFBO
RwogICAgIH07CiAKLSAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKLSAgICAgICAgUHJlc2Vy
dmVBc3BlY3RSYXRpbywKLSAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KLSAgICB9OwotCi0gICAg
ZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7Ci0gICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKLSAg
ICAgICAgSWdub3JlT3JpZW50YXRpb24KLSAgICB9OwotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8
QXN5bmNJbWFnZVJlc2l6ZXI+IGNyZWF0ZShDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNp
emUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1
ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50
YXRpb25PcHRpb24pOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBj
cmVhdGUoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBh
c3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0g
ICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9m
IGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lk
IHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1l
bnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGlt
cGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOwor
ICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXpl
cihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0
VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBx
dWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5j
SW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+KTsKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5
RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsKLQotICAgIENhY2hlZEltYWdlKiBtX2NhY2hlZElt
YWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3VjY2Vzc0NhbGxiYWNrOwotICAgIFNjcmlwdFZhbHVl
IG1fZXJyb3JDYWxsYmFjazsKICAgICAKLSAgICAvLyBQYXJhbWV0ZXJzIHRvIHBhc3MgaW50byBJ
bWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2FjaGVkSW1hZ2UqIG1fY2FjaGVkSW1hZ2U7CisgICAg
Q2FsbGJhY2tJbmZvKiBtX2NhbGxiYWNrSW5mbzsKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlw
ZTsKLSAgICBJbnRTaXplIG1fZGVzaXJlZEJvdW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0g
ICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlv
bk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2s+IG1fc3VjY2Vzc0NhbGxiYWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJhY2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+
IG1fcmVzaXplT3B0aW9uczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1M
SW1hZ2VFbGVtZW50LmNwcAppbmRleCA1ZDU5MjNkLi40YjViMzA5IDEwMDY0NAotLS0gYS9XZWJD
b3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFn
ZUVsZW1lbnQuY3BwCkBAIC0yMyw2ICsyMywxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2lu
Y2x1ZGUgIkhUTUxJbWFnZUVsZW1lbnQuaCIKIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQor
I2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCisjZW5kaWYKKwogI2luY2x1ZGUgIkF0dHJp
YnV0ZS5oIgogI2luY2x1ZGUgIkNTU0hlbHBlci5oIgogI2luY2x1ZGUgIkNTU1Byb3BlcnR5TmFt
ZXMuaCIKQEAgLTMyLDcgKzM2LDExIEBACiAjaW5jbHVkZSAiSFRNTERvY3VtZW50LmgiCiAjaW5j
bHVkZSAiSFRNTEZvcm1FbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVk
ZSAiSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNp
bmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUmVuZGVySW1h
Z2UuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRM
aXN0ZW5lci5oIgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwpAQCAtNDUxLDQgKzQ1OSwzNyBAQCB2
b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCkKICAgICBI
VE1MRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsKIH0KIAorI2lmIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQorCit2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OndlYmtpdEdldEltYWdl
KFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+
IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBl
cnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMsIEV4
Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmICghc3JjKCkuaXNWYWxpZCgpKSB7CisgICAgICAg
IGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAv
LyBUaGUgdGFpbnRzQ2FudmFzIG1ldGhvZCBhbHNvIGFsbG93cyBkYXRhIFVSTHMuCisJaWYgKGRv
Y3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPnRhaW50c0NhbnZhcyhzcmMoKSkpIHsKKyAgICAg
ICAgZWMgPSBTRUNVUklUWV9FUlI7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlOworICAgIGlmIChtaW1lVHlwZSA9
PSAiaW1hZ2UvanBlZyIpCisgICAgCW91dHB1dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6SlBF
RzsKKyAgICBlbHNlIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2UvcG5nIikKKyAgICAJb3V0cHV0VHlw
ZSA9IEFzeW5jSW1hZ2VSZXNpemVyOjpQTkc7CisgICAgZWxzZSB7CisgICAgICAgIGVjID0gTk9U
X1NVUFBPUlRFRF9FUlI7CisgICAgCXJldHVybjsKKyAgIAl9CisKKyAgICBSZWZQdHI8QXN5bmNJ
bWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyID0gQXN5bmNJbWFnZVJlc2l6ZXI6OmNyZWF0
ZShtX2ltYWdlTG9hZGVyLmltYWdlKCksIG91dHB1dFR5cGUsIHN1Y2Nlc3NDYWxsYmFjaywgZXJy
b3JDYWxsYmFjaywgcmVzaXplT3B0aW9ucyk7CisKKyAgICAvLyBSZWZlcmVuY2UgdG8gYXN5bmNJ
bWFnZVJlc2l6ZXIgaXMgbm93IGhlbGQgaW50ZXJuYWxseS4KKyAgICBhc3luY0ltYWdlUmVzaXpl
ci5yZWxlYXNlKCk7Cit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwogfQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaCBiL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmgKaW5kZXggNjJkMzE1Yy4uYTExMDJjYSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTElt
YWdlRWxlbWVudC5oCkBAIC0zMSw2ICszMSw5IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNs
YXNzIEhUTUxGb3JtRWxlbWVudDsKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazsK
K2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s7CitjbGFzcyBSZXNpemVPcHRpb25zOwog
CiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50IDogcHVibGljIEhUTUxFbGVtZW50IHsKICAgICBmcmll
bmQgY2xhc3MgSFRNTEZvcm1FbGVtZW50OwpAQCAtODksNiArOTIsMTIgQEAgcHVibGljOgogCiAg
ICAgYm9vbCBoYXZlRmlyZWRMb2FkRXZlbnQoKSBjb25zdCB7IHJldHVybiBtX2ltYWdlTG9hZGVy
LmhhdmVGaXJlZExvYWRFdmVudCgpOyB9CiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwor
ICAgIHZvaWQgd2Via2l0R2V0SW1hZ2UoU3RyaW5nIG1pbWVUeXBlLCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4sIEV4Y2VwdGlvbkNvZGUmKTsKKworI2Vu
ZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdl
RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQq
ID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBi
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi41ZGEzNTMw
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2Vi
Q29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCkBAIC00OSw2ICs0OSwxNCBAQCBtb2R1bGUg
aHRtbCB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgYWx0RGlzcGxheVN0
cmluZzsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFVSTCBhYnNvbHV0ZUltYWdlVVJMOwog
I2VuZGlmCisKKyNpZiBkZWZpbmVkKEVOQUJMRV9JTUFHRV9SRVNJWkVSKSAmJiBFTkFCTEVfSU1B
R0VfUkVTSVpFUgorI2lmIGRlZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0Vf
SkFWQVNDUklQVAorICAgICAgICAvLyBGdW5jdGlvbnMKKyAgICAgICAgW0N1c3RvbV0gdm9pZCB3
ZWJraXRHZXRJbWFnZShpbiBET01TdHJpbmcgbWltZVR5cGUsIGluIEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtPcHRpb25hbF0gaW4gSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjayBlcnJvckNhbGxiYWNrLCBbT3B0aW9uYWxdIGluIFJlc2l6ZU9wdGlvbnMgb3B0
aW9ucykKKyAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOworI2VuZGlmCisjZW5kaWYK
ICAgICB9OwogCiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MWYzZjZkCi0tLSAvZGV2L251bGwKKysr
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAtMCwwICsxLDU0
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisg
KiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRl
ICJBY3RpdmVET01PYmplY3QuaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBT
dHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291
bnRlZDxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7
CitwdWJsaWM6CisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiBjb250ZXh0KSA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlzKSB7IH0KKyAg
ICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCB2
b2lkIGhhbmRsZUV2ZW50KGNvbnN0IFN0cmluZyYpID0gMDsKK307CisKK30KKworI2VuZGlmIC8v
IEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5pZGwgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2E3OWU1ZAotLS0gL2Rldi9udWxsCisrKyBi
L1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbApAQCAtMCwwICsxLDM4
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisg
KiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworbW9kdWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFs
PUlNQUdFX1JFU0laRVIsCisgICAgICAgIENhbGxiYWNrCisgICAgXSBJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrIHsKKyAgICAgICAgW0N1c3RvbV0gYm9vbGVhbiBoYW5kbGVFdmVudChpbiBET01T
dHJpbmcgZXJyb3IpOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODY1NDdmNwot
LS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaApAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tf
aAorI2RlZmluZSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorCisjaWYgRU5BQkxFKElN
QUdFX1JFU0laRVIpCisjaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCisjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xh
c3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7CitwdWJsaWM6CisgICAgSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQp
IDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQsIHRoaXMpIHsgfQorICAgIHZpcnR1YWwgfkltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVFdmVu
dChCbG9iKikgPSAwOworfTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIp
CisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uYTRiYzE0ZgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0
aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5h
bWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAor
ICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFn
ZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwK
KyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7Cisg
ICAgICAgIFtDdXN0b21dIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gQmxvYiBibG9iKTsKKyAgICB9
OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgYi9X
ZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRleCAxYmFlNmEwLi5iN2VhNmFl
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAorKysgYi9X
ZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAtNTAsNyArNTAsNyBAQCBzdGF0
aWMgdm9pZCByZXR1cm5CbG9iT3JFcnJvcih2b2lkKiBjYWxsYmFja0luZm9ybWF0aW9uKQogICAg
IGRlbGV0ZSBjYWxsYmFja0luZm87CiB9CiAKLWJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFy
dChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6
Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBl
IG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJ
bWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0lt
YWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCitib29sIElt
YWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0
YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0lt
YWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMs
IGZsb2F0IHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJh
dGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9w
dGlvbikKIHsKICAgICBJbWFnZVJlc2l6ZXJUaHJlYWQqIGltYWdlUmVzaXplclRocmVhZCA9IG5l
dyBJbWFnZVJlc2l6ZXJUaHJlYWQoY2FsbGJhY2tJbmZvLCBvdXRwdXRUeXBlLCBkZXNpcmVkQm91
bmRzLCBxdWFsaXR5LCBhc3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24pOwogCkBA
IC02Miw3ICs2Miw3IEBAIGJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzCiAgICAgcmV0dXJuIGltYWdl
UmVzaXplclRocmVhZC0+bV90aHJlYWRJRDsKIH0KIAotSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFn
ZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJ
bmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRl
c2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRp
b09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9u
T3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6
ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBB
c3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRC
b3VuZHMsIGZsb2F0IHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFz
cGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRh
dGlvbk9wdGlvbikKICAgICA6IG1fdGhyZWFkSUQoMCkKICAgICAsIG1fY2FsbGJhY2tJbmZvKGNh
bGxiYWNrSW5mbykKICAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplclRocmVhZC5oCmluZGV4IGFlNWFkZTUuLjYxMDBiNTUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKIAog
I2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQyLDExICs0MywxMSBAQCBjbGFzcyBTaGFy
ZWRCdWZmZXI7CiAKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZCB7CiBwdWJsaWM6Ci0gICAgc3Rh
dGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJ
bWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBl
LCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVy
OjpBc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9u
KTsKKyAgICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VE
YXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6
Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXpl
T3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0
aW9uKTsKICAgICB+SW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAKIHByaXZhdGU6Ci0gICAgSW1hZ2VS
ZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdl
UmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5
LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVy
OjpPcmllbnRhdGlvbk9wdGlvbik7CisgICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VS
ZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50
U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RS
YXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24pOwogICAgIHN0YXRp
YyB2b2lkKiBpbWFnZVJlc2l6ZXJUaHJlYWRTdGFydCh2b2lkKik7CiAgICAgdm9pZCogaW1hZ2VS
ZXNpemVyVGhyZWFkKCk7CiAKQEAgLTU5LDggKzYwLDggQEAgcHJpdmF0ZToKICAgICBBc3luY0lt
YWdlUmVzaXplcjo6T3V0cHV0VHlwZSBtX291dHB1dFR5cGU7CiAgICAgSW50U2l6ZSBtX2Rlc2ly
ZWRCb3VuZHM7CiAgICAgZmxvYXQgbV9xdWFsaXR5OwotICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpB
c3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOwotICAgIEFzeW5jSW1hZ2VSZXNp
emVyOjpPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworICAgIFJlc2l6ZU9w
dGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgUmVzaXpl
T3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRp
b25zLmggYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjFmZjgzZDcKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwv
UmVzaXplT3B0aW9ucy5oCkBAIC0wLDAgKzEsMTAwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAg
ICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMK
KyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
KyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBSZXNpemVPcHRpb25zX2gK
KyNkZWZpbmUgUmVzaXplT3B0aW9uc19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwor
I2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
KworLy8gSW5jbHVzaXZlIGxpbWl0cy4KKyNkZWZpbmUgRElNRU5TSU9OU19MT1dFUl9MSU1JVCAx
CisjZGVmaW5lIERJTUVOU0lPTlNfVVBQRVJfTElNSVQgMzI3NjcKKyNkZWZpbmUgQ09NUFJFU1NJ
T05fTE9XRVJfTElNSVQgc3RhdGljX2Nhc3Q8ZmxvYXQ+KDAuMCkKKyNkZWZpbmUgQ09NUFJFU1NJ
T05fVVBQRVJfTElNSVQgc3RhdGljX2Nhc3Q8ZmxvYXQ+KDEuMCkKKworI2RlZmluZSBERUZBVUxU
X0NPTVBSRVNTSU9OIHN0YXRpY19jYXN0PGZsb2F0PigwLjg1KQorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK2NsYXNzIFJlc2l6ZU9wdGlvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxSZXNpemVPcHRp
b25zPiB7CitwdWJsaWM6CisgICAgZW51bSBBc3BlY3RSYXRpb09wdGlvbiB7CisgICAgICAgIFBy
ZXNlcnZlQXNwZWN0UmF0aW8sCisgICAgICAgIElnbm9yZUFzcGVjdFJhdGlvCisgICAgfTsKKwor
ICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24geworICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24s
CisgICAgICAgIElnbm9yZU9yaWVudGF0aW9uCisgICAgfTsKKworICAgIHN0YXRpYyBQYXNzUmVm
UHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZXNpemVP
cHRpb25zKCkpOyB9CisKKyAgICB2b2lkIHNldFdpZHRoKGludCB3aWR0aCkgeyBtX3dpZHRoID0g
d2lkdGggPj0gRElNRU5TSU9OU19MT1dFUl9MSU1JVCAmJiB3aWR0aCA8PSBESU1FTlNJT05TX1VQ
UEVSX0xJTUlUID8gd2lkdGggOiAwOyB9CisgICAgaW50IHdpZHRoKCkgeyByZXR1cm4gbV93aWR0
aDsgfQorCisgICAgdm9pZCBzZXRIZWlnaHQoaW50IGhlaWdodCkgeyBtX2hlaWdodCA9IGhlaWdo
dCA+PSBESU1FTlNJT05TX0xPV0VSX0xJTUlUICYmIGhlaWdodCA8PSBESU1FTlNJT05TX1VQUEVS
X0xJTUlUID8gaGVpZ2h0IDogMDsgfQorICAgIGludCBoZWlnaHQoKSB7IHJldHVybiBtX2hlaWdo
dDsgfQorCisgICAgdm9pZCBzZXRDb21wcmVzc2lvbkxldmVsKGZsb2F0IGNvbXByZXNzaW9uTGV2
ZWwpIHsgbV9jb21wcmVzc2lvbkxldmVsID0gY29tcHJlc3Npb25MZXZlbCA+PSBDT01QUkVTU0lP
Tl9MT1dFUl9MSU1JVCAmJiBjb21wcmVzc2lvbkxldmVsIDw9IENPTVBSRVNTSU9OX1VQUEVSX0xJ
TUlUID8gY29tcHJlc3Npb25MZXZlbCA6IERFRkFVTFRfQ09NUFJFU1NJT047IH0KKyAgICBmbG9h
dCBjb21wcmVzc2lvbkxldmVsKCkgeyByZXR1cm4gbV9jb21wcmVzc2lvbkxldmVsOyB9CisKKyAg
ICB2b2lkIHNldEFzcGVjdFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbykgeyBt
X2FzcGVjdFJhdGlvT3B0aW9uID0gcHJlc2VydmVBc3BlY3RSYXRpbyA/IFByZXNlcnZlQXNwZWN0
UmF0aW8gOiBJZ25vcmVBc3BlY3RSYXRpbzsgfQorICAgIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVj
dFJhdGlvT3B0aW9uKCkgeyByZXR1cm4gbV9hc3BlY3RSYXRpb09wdGlvbjsgfQorCisgICAgdm9p
ZCBzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50YXRpb25PcHRpb24pIHsgbV9vcmll
bnRhdGlvbk9wdGlvbiA9IG9yaWVudGF0aW9uT3B0aW9uID09ICJhdXRvIiA/IENvcnJlY3RPcmll
bnRhdGlvbiA6IElnbm9yZU9yaWVudGF0aW9uOyB9CisgICAgT3JpZW50YXRpb25PcHRpb24gb3Jp
ZW50YXRpb25PcHRpb24oKSB7IHJldHVybiBtX29yaWVudGF0aW9uT3B0aW9uOyB9CisKK3ByaXZh
dGU6CisgICAgUmVzaXplT3B0aW9ucygpCisgICAgOiBtX3dpZHRoKCkKKyAgICAsIG1faGVpZ2h0
KCkKKyAgICAsIG1fY29tcHJlc3Npb25MZXZlbCgpCisgICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9u
KElnbm9yZUFzcGVjdFJhdGlvKQorICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihJZ25vcmVPcmll
bnRhdGlvbikKKyAgICB7CisgICAgfQorCisgICAgLy8gSWYgbV93aWR0aCBvciBtX2hlaWdodCA9
PSAwLCB0aGF0IGRpbWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGljaXRseSBkdXJpbmcgcmVz
aXppbmcuCisgICAgaW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0OworICAgIGZsb2F0IG1f
Y29tcHJlc3Npb25MZXZlbDsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0
aW9uOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KworI2VuZGlmIC8vIFJlc2l6ZU9wdGlvbnNfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59155</attachid>
            <date>2010-06-18 14:05:19 -0700</date>
            <delta_ts>2010-06-18 14:39:18 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>105157</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5iYzcwMzY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTAtMDYt
MTggIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBKU0Mg
ZXhwb3N1cmUgb2YgdGhlIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGltYWdlIHJlc2l6ZXIgQVBJ
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NTQK
KworICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJn
dW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJj
ZS5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2st
d2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdl
Lmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvcmVzb3VyY2VzL2hlbG1ldC5qcGc6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RF
TVBMQVRFLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHNob3VsZE5vdFRocm93KToKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAoZW1wdHlG
dW5jdGlvbik6CisgICAgICAgICgpOgorICAgICAgICAoT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24u
cHJvdG90eXBlLnZhbHVlT2YpOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVk
LgorICAgICAgICAoZW1wdHlGdW5jdGlvbik6CisgICAgICAgIChkb2N1bWVudC5ib2R5Lm9ubG9h
ZCk6CisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzOiBBZGRlZC4KKyAgICAgICAg
KHN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChlcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBm
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVy
cmlkZS1vay13ZWJraXRHZXRJbWFnZS5qczogQWRkZWQuCisgICAgICAgIChpbWcud2Via2l0R2V0
SW1hZ2UpOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKHN1Y2Nl
c3NDYWxsYmFjayk6CisgICAgICAgIChlcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzogQWRkZWQuCisKIDIwMTAtMDYtMTggIEp1
c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3Vt
ZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li45MjE1OGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMDcgQEAKKworVGVzdHMgdGhlIGFjY2VwdGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50
cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UobnVsbCkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlT
TUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhj
ZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IE5PVF9TVVBQT1JURURfRVJSOiBET00gRXhjZXB0aW9uIDkuCitQQVNT
IGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01J
U01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6
IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
InN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBudWxsKSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbikgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlT
TUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIikgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBudWxsKSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IHdpZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgNDIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgSW5maW5pdHkpIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsICJzdHJpbmciKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1t
eVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1
bW15UHJvcGVydHk6bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15
UHJvcGVydHk6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2R1bW15UHJvcGVydHk6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0
aDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6InN0cmluZyJ9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtoZWlnaHQ6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6
b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWln
aHQ6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJz
dHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25M
ZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFs
dWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0
aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0
cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0
Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5m
aW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVs
Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9u
TGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0eUZ1bmN0
aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRp
bzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e29yaWVudGF0aW9uOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e29yaWVudGF0aW9uOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyYzUxYzUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2Fy
Z3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5
bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0i
cmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10
eXBlcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdl
LWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZDQ3ZWMzCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisK
K1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElE
X1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93bjogRXJyb3I6IElOVkFMSURfU1RBVEVf
RVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJs
ZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4zYzY1MjM2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICIt
Ly9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hl
bG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUi
PjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2st
YWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MWMwODVjCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LgorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxsYmFjayB3YXMgY29ycmVj
dGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBp
bWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNr
LWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLjljM2VkN2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5o
dG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8v
SUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxt
ZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzNjYWFkYgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTEgQEAKKworVGhpcyBlbnN1cmVzIHRoYXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJl
IG92ZXJyaWRkZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgNDIgaXMgbm9uLXplcm8uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJ
bWFnZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVk
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM5NDlkYWYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwx
NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlk
PSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlw
dC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNlcy9oZWxtZXQuanBnIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVs
bWV0LmpwZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDQ4MmFhCkJpbmFy
eSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3MTcwYWEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9InJl
c291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVu
dC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmUzNDE5MWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9h
cmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsxLDE0NSBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRo
ZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldElt
YWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24gc2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgewor
ICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lvbik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9u
ICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVz
dEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcg
ZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQorCitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4
cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVz
c2lvblNob3VsZFRocm93KSB7CisgICAgICAgIGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAg
ICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyAr
IGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0pKCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBzaG91bGROb3RUaHJvdyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3Zh
ciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24oKSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRocm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1
ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4
Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5l
R2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0
aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsKK3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9
IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpOworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoKScs
IHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKScsIHRydWUpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1bmN0aW9uKScsIHRydWUsICdF
cnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOScpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCA0MiknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpJywgdHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
bnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHt9KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgZW1w
dHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHRydWUpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBJbmZpbml0eSknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
LUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwgbnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUsICdFcnJvcjogd2lkdGggZ2V0
dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHRydWUpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBJbmZpbml0eSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCAic3RyaW5nIikn
LCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVuY3Rp
b259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSknLCBmYWxzZSk7Cit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0p
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSknLCBmYWxzZSk7CisK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBl
eGNlcHRpb24nKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHt3aWR0aDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZp
bml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdo
dDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdo
dDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSknLCBmYWxz
ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rl
c3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNz
aW9uTGV2ZWw6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlv
bicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXBy
ZXNzaW9uTGV2ZWw6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpJbmZp
bml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSknLCBmYWxzZSk7CisK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZl
QXNwZWN0UmF0aW86e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0pJywgZmFsc2Up
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm51
bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOjQyfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVu
dGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjoic3RyaW5n
In0pJywgZmFsc2UpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1
Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMt
bm8tc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjg1M2E5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQt
dGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpAQCAtMCwwICsxLDIwIEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCBhbiBpbWFnZSB3aXRoIG5vIHNvdXJjZSB3aWxsIHRocm93IGFuIElOVkFM
SURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4iKTsKKwordmFyIGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlv
bigpIHt9OworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScp
OworaW1nLnNyYyA9IG51bGw7CisKK2RvY3VtZW50LmJvZHkub25sb2FkID0gZnVuY3Rpb24oKSB7
CisJdHJ5IHsKKwkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RGYWlsZWQoIlNob3Vs
ZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duLi4uIik7CisJ
CWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2VkKCJFeGNlcHRpb24g
d2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0KCk7CisJfQorfTsK
Kword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNl
ZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQu
anMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYTg3Y2ViYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDE3IEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LiIpOworCit2YXIgc3Vj
Y2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxvYikgeworICAgIHRlc3RGYWlsZWQoIlN1Y2Nlc3Mg
Y2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNhbGxlZCIpOworICAgIGZpbmlzaEpTVGVzdCgpOwor
fTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBmdW5jdGlvbihlcnJvcikgeworICAgIHRlc3RQYXNz
ZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIHdpdGggb3V0cHV0OiAiICsg
ZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKworLy8gT25seSB0aGUgZXJyb3IgY2Fs
bGJhY2sgd2lsbCBjdXJyZW50bHkgZXZlciBiZSBjYWxsZWQgaW4gdGhpcyBwYXRjaCwgc28gdGVz
dCB0aGF0IGl0IHdvcmtzIGZvciBub3cKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0SW1h
Z2UnKS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JD
YWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Vi
a2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NzZjYzYzCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwx
MCBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0aGF0IHdlYmtpdEdldEltYWdlIG1heSBi
ZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2QuIik7CisKK3ZhciBpbWcgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7CitpbWcud2Via2l0R2V0SW1hZ2UgPSBmdW5j
dGlvbigpIHsgcmV0dXJuIDQyOyB9Cit2YXIgcmVzdWx0ID0gaW1nLndlYmtpdEdldEltYWdlKCk7
CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZh
bHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjOTVkNjEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAtMCwwICsxLDE3IEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LiIpOworCit2YXIgc3Vj
Y2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oKSB7CisgICAgdGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxs
YmFjayB3YXMgaW5jb3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9Owor
Cit2YXIgZXJyb3JDYWxsYmFjayA9IGZ1bmN0aW9uKCkgeworICAgIHRlc3RQYXNzZWQoIkVycm9y
IGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9
OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3aWxsIGN1cnJlbnRseSBldmVyIGJlIGNh
bGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3MgZm9yIG5vdworZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVn
Iiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKKword2luZG93LmpzVGVzdElzQXN5
bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNWRiMjAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQg
dGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgRXJyb3IgY2FsbGJhY2sgd2FzIGNvcnJlY3RseSBjYWxsZWQKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3Qt
Y2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjdkZmI4YQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVz
dC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHls
ZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJy
ZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBp
ZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJh
Y2tzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3Jp
Z2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJr
aXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jNDhlZjg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhhdCBJbWFnZS53ZWJraXRHZXRJbWFnZSBj
YW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmlnaW4uCisKKworUEFTUzog
VGhyZXcgZXhjZXB0aW9uOiBFcnJvcjogU0VDVVJJVFlfRVJSOiBET00gRXhjZXB0aW9uIDE4CisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4M2VlOTEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVt
b3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMzEgQEAKKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKG1zZykKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgibG9nIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobXNnICsgIlxu
IikpOworfQorCit2YXIgZW1wdHlDYWxsYmFjayA9IGZ1bmN0aW9uKCkgeyB9OworCit3aW5kb3cu
b25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgdHJ5
IHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RJbWFnZSIpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUNhbGxiYWNrKTsKKyAgICAgICAgbG9nKCJGQUlMOiBE
aWQgbm90IHRocm93IGV4Y2VwdGlvbiIpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgbG9n
ICgiUEFTUzogVGhyZXcgZXhjZXB0aW9uOiAiICsgZSk7CisgICAgfQorCisgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxwPlRlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgY2Fubm90IGJlIGNhbGxlZCBvbiBh
biBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLjwvcD4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZyI+Cis8cHJlIGlk
PSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2hlbG1ldC5qcGcgZGlmZmVyCmRpZmYgLS1naXQg
YS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBh
ZWI0YjY4Li4wMWMyYTVlIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI2Miw2ICsyNjIsOCBAQCBTRVQoV2ViQ29yZV9J
RExfRklMRVMKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsCiAgICAgaHRtbC9IVE1MVmlk
ZW9FbGVtZW50LmlkbAogICAgIGh0bWwvSW1hZ2VEYXRhLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5pZGwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5pZGwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsCiAgICAgaHRtbC9UZXh0TWV0cmljcy5pZGwK
ICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaWRsCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk5M2ExMjEuLjZlMzQzNGYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzQg
QEAKKzIwMTAtMDYtMTggIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIEpT
QyBiaW5kaW5ncyBhbmQgY2FsbGJhY2tzIGZvciBpbWFnZSByZXNpemVyIEFQSS4gVGhlIEFQSSBp
cyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0ZSwgc28KKyAgICAgICAgdGhlIHN1Y2Nlc3MgY2FsbGJh
Y2sgaXMgbmV2ZXIgY2FsbGVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDA4NTQKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAq
IERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAg
ICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAg
KiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKyAgICAgICAgKiBXZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6
CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6Omhh
bmRsZUV2ZW50KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazo6aGFuZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZSk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpjcmVhdGVSZXNpemVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJl
c2l6ZXIpOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZpbmlz
aGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IpOgor
ICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJ
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Vi
a2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAq
IGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjazo6SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjp+SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6
CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDogQWRkZWQuCisg
ICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OkltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2s6On5JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgorICAgICAgICAqIGh0bWwvSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFn
ZVJlc2l6ZXJUaHJlYWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFk
OjpzdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVz
aXplclRocmVhZCk6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDoKKyAgICAg
ICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNp
emVPcHRpb25zOjopOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWln
aHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZl
bCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9wdGlvbnMpOgorCiAyMDEwLTA2LTE4
ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2
aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
Y3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXggN2FjM2U1MS4uY2U1YzhmMyAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQAogI2luY2x1ZGUgIkpTSURCUmVxdWVz
dC5jcHAiCiAjaW5jbHVkZSAiSlNJREJTdWNjZXNzRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTSW1h
Z2VEYXRhLmNwcCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIgor
I2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJK
U0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIgogI2luY2x1ZGUgIkpTSmF2YVNjcmlwdENhbGxG
cmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmNwcCIKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpp
bmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yMjMsNiArMjIzLDgg
QEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSURCUmVxdWVzdCBcCiAgICAgSURCU3VjY2Vzc0V2ZW50
IFwKICAgICBJbWFnZURhdGEgXAorICAgIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBcCisg
ICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBcCiAgICAgSW5kZXhlZERhdGFiYXNlUmVxdWVz
dCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0IFwKICAgICBJbnNwZWN0b3JCYWNrZW5kIFwKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFt
CmluZGV4IGU3ODU3NDkuLjAzNmVhYjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUu
YW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtNDA5LDYgKzQwOSwxMCBAQCB3ZWJj
b3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDbGlwYm9hcmRDdXN0b20u
Y3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAgXAogCVdlYkNv
cmUvYmluZGluZ3MvanMvSlNDb29yZGluYXRlc0N1c3RvbS5jcHAgXAorCVdlYkNvcmUvYmluZGlu
Z3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKwlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAorCVdl
YkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBc
CisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwIFwK
IAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oIFwKIAlXZWJD
b3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCBcCkBAIC00
NTUsNiArNDU5LDcgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNI
VE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJ
bWFnZUVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0
RWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVt
ZW50Q3VzdG9tLmggXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1
c3RvbS5jcHAgXApAQCAtMTI2Nyw2ICsxMjcyLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlX
ZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1h
Z2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmggXAogCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3Bw
IFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9M
YWJlbHNOb2RlTGlzdC5jcHAgXApAQCAtMTI3NCw2ICsxMjgxLDcgQEAgd2ViY29yZV9zb3VyY2Vz
ICs9IFwKIAlXZWJDb3JlL2h0bWwvTWVkaWFFcnJvci5oIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9h
ZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29y
ZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5jcHAgXAog
CVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuaCBcCiAJV2ViQ29yZS9odG1sL1RleHRNZXRyaWNzLmgg
XApAQCAtMjYyMSw2ICsyNjI5LDE2IEBAIEZFQVRVUkVfREVGSU5FUyArPSBFTkFCTEVfSU1BR0Vf
UkVTSVpFUj0xCiAKIHdlYmNvcmVfY3BwZmxhZ3MgKz0gLURFTkFCTEVfSU1BR0VfUkVTSVpFUj0x
CiAKK3dlYmNvcmVfc291cmNlcyArPSBcCisgICAgV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCBcCisgICAgV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oIFwKKyAgICBXZWJDb3JlL2h0bWwvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmNwcCBcCisgICAgV2ViQ29yZS9odG1sL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmNwcAorCitJRExfQklORElOR1MgKz0gXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5pZGwKKwogZWxzZQogd2ViY29yZV9jcHBmbGFncyArPSAtREVOQUJMRV9JTUFHRV9S
RVNJWkVSPTAKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQppbmRleCBmMmNkZDY3Li5jZDMxMzM2IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTg3LDYgKzE4Nyw4IEBA
CiAgICAgICAgICAgICAnaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAn
aHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEu
aWRsJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwn
LAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGV4dE1l
dHJpY3MuaWRsJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuaWRsJywKQEAgLTUxNCw2
ICs1MTYsOCBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJhdGlv
bkN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJh
dGlvbkN1c3RvbS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9t
LmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1
c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1
c3RvbVBvc2l0aW9uQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDdXN0
b21Qb3NpdGlvbkVycm9yQ2FsbGJhY2suY3BwJywKQEAgLTU3MSw2ICs1NzUsNyBAQAogICAgICAg
ICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAg
ICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAnLAogICAg
ICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywKKyAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwJywKICAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwJywKICAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uaCcsCiAgICAg
ICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAnLApAQCAt
MTY1Niw2ICsxNjYxLDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxWaWV3U291cmNlRG9jdW1l
bnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuY3BwJywKICAgICAgICAgICAgICdo
dG1sL0ltYWdlRGF0YS5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwJywKICAgICAgICAg
ICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5oJywKICAgICAgICAgICAgICdodG1sL0xhYmVs
c05vZGVMaXN0LmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJpIGIvV2ViQ29y
ZS9XZWJDb3JlLnByaQppbmRleCAyNWM5NWZmLi40ZTZlZmU3IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAgLTQyMiw2ICs0MjIsOCBA
QCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogICAg
IGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSW1hZ2VEYXRhLmlkbCBcCisg
ICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisgICAgaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsIFwKICAg
ICBodG1sL1RleHRNZXRyaWNzLmlkbCBcCiAgICAgaHRtbC9UaW1lUmFuZ2VzLmlkbCBcCmRpZmYg
LS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCA5
MmE3NzVjLi40NjE5ZDg1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dl
YkNvcmUvV2ViQ29yZS5wcm8KQEAgLTI4MSw2ICsyODEsOCBAQCBTT1VSQ0VTICs9IFwKICAgICBi
aW5kaW5ncy9qcy9KU0NTU1N0eWxlRGVjbGFyYXRpb25DdXN0b20uY3BwIFwKICAgICBiaW5kaW5n
cy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNDb29yZGluYXRl
c0N1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcCBcCisgICAgYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNDdXN0b21Qb3NpdGlvbkNhbGxiYWNr
LmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNDdXN0b21Qb3NpdGlvbkVycm9yQ2FsbGJhY2suY3Bw
IFwKICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFjay5jcHAgXApAQCAtMzE0LDcg
KzMxNiw5IEBAIFNPVVJDRVMgKz0gXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEZvcm1FbGVtZW50
Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCBcCisg
ICAgYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGlu
Z3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0
RWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRD
dXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3Rv
bS5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
aiBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4u
MTRjZGVmYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
agorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2
ICszNzY2MSwxNCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRp
dmVQYXRoPSIuLlxodG1sXEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQor
CQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxl
DQogCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJ
CQk+DQogCQkJPC9GaWxlPg0KQEAgLTM3Njg5LDYgKzM3Njk3LDEwIEBACiAJCQkJPg0KIAkJCTwv
RmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9u
cy5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxTdGVwUmFuZ2UuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTM4NDk2LDYg
KzM4NTA4LDEzIEBACiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJ
CQkJPEZpbGUNCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIg0KKwkJCQkJPg0KKwkJCQk8L0ZpbGU+DQorCQkJ
CTxGaWxlDQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiDQorCQkJCQk+DQorCQkJCTxGaWxlDQogCQkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAiDQog
CQkJCQk+DQogCQkJCTwvRmlsZT4NCkBAIC00MDEyOCw3ICs0MDE0Nyw5IEBACiAJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCisKIAkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxFbWJlZEVsZW1lbnRDdXN0b20uY3BwIg0KKwog
CQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCiAJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4z
MiINCkBAIC00MDM4OCw2ICs0MDQwOSw1OSBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
IAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGlu
Z3NcanNcSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCINCisJCQkJCT4NCisJCQkJCTxGaWxl
Q29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiINCisJ
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJ
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
X0ludGVybmFsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJ
CT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJ
CS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9u
DQorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVp
bGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8
RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJ
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJ
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdf
QWxsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJ
CQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQor
CQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5j
cHAiDQogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCmRpZmYgLS1naXQgYS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAzMGIyOWQuLjcwOTIwMGYgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNTA5LDYgKzM1MDksMTQg
QEAKIAkJQjAxNDlFN0UxMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QTExQTRC
MjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCAqLzsgfTsKIAkJQjAxNDlFN0YxMUE0
QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyog
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLzsgfTsKIAkJQjAxNDlFODAxMUE0QjIxNTAwMTk2QTdC
IC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjAxNDlFN0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRo
cmVhZC5oICovOyB9OworCQlCMDRFNkJGMjExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9u
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjA0RTZC
RjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLzsgfTsKKwkJQjA0RTZCRjUx
MUM3RjA3OTAwMjE0MjgzIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEMxMUFCMUVBMDAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4
MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUIwNEY1OUZGMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVs
ZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgKi87IH07CisJCUIwQTcxMzY3MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjBBNzEzNjMxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcxMzY4MTFDOTYyMjUwMDNDMzM3
MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzY0MTFDOTYyMjUwMDNDMzM3MyAv
KiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjBBNzEzNjkx
MUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzY1
MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5j
cHAgKi87IH07CisJCUIwQTcxMzZBMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAv
KiBKU1NWR0FFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAq
LzsgfTsKIAkJQjIwMTExMDgwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0
MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2Nzcw
MDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQ
T0RUeXBlV3JhcHBlci5oICovOyB9OwpAQCAtODg0NSw2ICs4ODUzLDE0IEBACiAJCUIwMTQ5RTdB
MTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBBc3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFk
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRo
cmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSW1hZ2VSZXNpemVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9w
dGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAg
LyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzEzNjQxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjBBNzEzNjUxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTExMDYwQUI3NzQwNTAwREIw
RTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTU1ZHQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIxMTI3QTUw
QjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUE9EVHlwZVdyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTEzNjk5LDYgKzEzNzE1LDggQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBD
MDAzODUxQjkgLyogSW1hZ2VEYXRhLmNwcCAqLywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUx
QjkgLyogSW1hZ2VEYXRhLmggKi8sCiAJCQkJQTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIElt
YWdlRGF0YS5pZGwgKi8sCisJCQkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJCQlCMDE0QTA0QzExQUIxRUEwMDAxOTZBN0IgLyog
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCiAJCQkJQjAxNDlFN0IxMUE0QjIxNTAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgKi8sCiAJCQkJQjAxNDlFN0MxMUE0QjIx
NTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovLAogCQkJCUE0NTZGQTI0MTFBRDRB
ODMwMDIwQjQyMCAvKiBMYWJlbHNOb2RlTGlzdC5jcHAgKi8sCkBAIC0xMzcwOSw2ICsxMzcyNyw3
IEBACiAJCQkJRTQ0NjEzOUMwQ0Q2MzMxMDAwRkFEQTc1IC8qIE1lZGlhRXJyb3IuaWRsICovLAog
CQkJCUU0RDRBQkUwMEQ3NTQyRjAwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5jcHAgKi8sCiAJ
CQkJRTRENEFCRTEwRDc1NDJGMTAwRjk2ODY5IC8qIFByZWxvYWRTY2FubmVyLmggKi8sCisJCQkJ
QjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLywKIAkJCQlBNUFG
QjM0RDExNTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmNwcCAqLywKIAkJCQlBNUFGQjM0RTEx
NTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmggKi8sCiAJCQkJQkNFRjQ1RTgwRTY4Nzc2NzAw
MUMxMjg3IC8qIFRleHRNZXRyaWNzLmggKi8sCkBAIC0xNTUxMyw2ICsxNTUzMiw3IEBACiAJCQkJ
QkMyRUQ3QTQwQzZDMEYzNjAwOTIwQkZGIC8qIEpTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAg
Ki8sCiAJCQkJQkNENDFBQkEwQzA2MERFODAwQzBFNDQ2IC8qIEpTSFRNTEZyYW1lU2V0RWxlbWVu
dEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMyRUQ2NEYwQzZCQzQ4QzAwOTIwQkZGIC8qIEpTSFRNTElG
cmFtZUVsZW1lbnRDdXN0b20uY3BwICovLAorCQkJCUIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAv
KiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQzQzODc3MEU4ODZDQzcw
MDUzM0RENSAvKiBKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMzA1Q0Ez
MEMwNzgxQkIwMENEMjBGMCAvKiBKU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJ
CQk0NDhBRDI3QTBBNDgxMzc5MDAyM0QxNzkgLyogSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0
b20uY3BwICovLApAQCAtMTU4MDUsNiArMTU4MjUsMTAgQEAKIAkJQkNDRTU4QTcxMDYxRTgyRjAw
OEZCMzVBIC8qIENhbGxiYWNrIE9iamVjdHMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJ
CWNoaWxkcmVuID0gKAorCQkJCUIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUlt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxMzY0MTFDOTYyMjUwMDND
MzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3
MTM2NTExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suY3BwICovLAorCQkJCUIwQTcxMzY2MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTE0NDlFMjg2MTA3RDREQjQwMEI1Nzkz
RiAvKiBKU0NhbGxiYWNrRGF0YS5jcHAgKi8sCiAJCQkJMTQ0OUUyNEExMDdENEE4NDAwQjU3OTNG
IC8qIEpTQ2FsbGJhY2tEYXRhLmggKi8sCiAJCQkJRkU4MEQ3QTIwRTlDMUVEMjAwMEQ2Rjc1IC8q
IEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAgKi8sCkBAIC0xODExOSw2ICsxODE0Myw4IEBA
CiAJCQkJMUE4MjBEOTIwQTEzRUJBNjAwQUY4NDNDIC8qIEltYWdlRG9jdW1lbnQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTA4OTU4MjU2MEU4NTdBN0UwMEY4MkM4MyAvKiBJbWFnZUxvYWRlci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkM3RjQ0QTgwQjlFMzI0RTAwQTlEMDgxIC8qIEltYWdlT2JzZXJ2
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGNTExQzdG
MDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAq
LywKIAkJCQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCMjc1MzU3MTBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2VTb3Vy
Y2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTRCMzQ4MDk0MEVFRjUwRDQwMEFDMUI0MSAvKiBJbWFn
ZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLywKQEAgLTE4MjE1LDYgKzE4MjQxLDggQEAKIAkJCQlC
QzY4NkM3RDBFMEMzMzAxMDBERThBMDggLyogSlNDU1NWYXJpYWJsZXNEZWNsYXJhdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkM2ODZDN0YwRTBDMzMwMTAwREU4QTA4IC8qIEpTQ1NTVmFyaWFi
bGVzUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ3NzhCODAxMTVBNTgxQTAwQjVEMzcyIC8q
IEpTQ3VzdG9tRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwQTcxMzY4MTFDOTYyMjUwMDND
MzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
LAorCQkJCUIwQTcxMzZBMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU4MEQ3QTgwRTlDMUVEMjAwMEQ2
Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU4
MEQ3QUEwRTlDMUVEMjAwMEQ2Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkxQTM0MTdDOTBDRUNGRjI1MDA0OUNCREUgLyogSlNDdXN0b21W
b2lkQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLApAQCAtMTg4ODUsNiArMTg5MTMsNyBAQAogCQkJ
CUE4OUNDQzUzMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VT
ZWxlY3Rpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0IxNkMyRjA5NzlDM0JEMDA0
Njc3NDEgLyogUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjIxMUM2RjBFOTAw
MjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNEY3MTQyMEQ1
QTZGNDQwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzRG
NzEzQzBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2UuaCBpbiBIZWFkZXJzICov
LAogCQkJCTUxNEM3Njc5MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5oIGluIEhl
YWRlcnMgKi8sCkBAIC0yMDU0Myw2ICsyMDU3Miw4IEBACiAJCQkJQkM2ODZDN0MwRTBDMzMwMTAw
REU4QTA4IC8qIEpTQ1NTVmFyaWFibGVzRGVjbGFyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQkM2ODZDN0UwRTBDMzMwMTAwREU4QTA4IC8qIEpTQ1NTVmFyaWFibGVzUnVsZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlFNDc3OEI3RjExNUE1ODFBMDBCNUQzNzIgLyogSlNDdXN0b21FdmVu
dC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3MTM2NzExQzk2MjI1MDAzQzMzNzMgLyogSlND
dXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIw
QTcxMzY5MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRTgwRDdBNzBFOUMxRUQyMDAwRDZGNzUgLyog
SlNDdXN0b21Qb3NpdGlvbkNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEN0E5
MEU5QzFFRDIwMDBENkY3NSAvKiBKU0N1c3RvbVBvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk1MUVDOTI2NTBDRTkwREQ0MDBGOTAzMDggLyogSlNDdXN0b21TUUxT
dGF0ZW1lbnRFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjA2NTQsNiArMjA2
ODUsNyBAQAogCQkJCUJDNDkxOEM4MEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxJRnJhbWVFbGVt
ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMkVENjUwMEM2QkM0OEMwMDkyMEJGRiAvKiBK
U0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk3
MEExQ0REMkQwMEI0MkIyNSAvKiBKU0hUTUxJbWFnZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8s
CisJCQkJQjA0RjU5RkYxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBODBFN0U5ODBBMUE4M0UzMDA3RkI4QzUgLyogSlNI
VE1MSW5wdXRFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQzQzODc4MEU4ODZDQzcw
MDUzM0RENSAvKiBKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMUFFMkFBOTkwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTElzSW5kZXhFbGVtZW50LmNwcCBp
biBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUlt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3Rv
bUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjczMjJmMjQKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAKQEAgLTAsMCArMSw2OCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCIKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgIkZyYW1lLmgi
CisjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgorI2luY2x1ZGUgPHJ1bnRpbWUvSlNMb2Nr
Lmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCit1c2luZyBuYW1lc3BhY2UgSlNDOworCitKU0N1
c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjayhKU09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCisgICAgOiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKGdsb2JhbE9iamVjdC0+c2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICwgbV9kYXRhKGNhbGxiYWNrLCBnbG9iYWxPYmplY3Qp
Cit7Cit9CisKK3ZvaWQgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpoYW5kbGVF
dmVudChjb25zdCBTdHJpbmcmIGVycm9yKQoreworICAgIC8vIEFjdGl2ZURPTU9iamVjdCB3aWxs
IG51bGwgb3VyIHBvaW50ZXIgdG8gdGhlIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgd2hlbiBpdCBn
b2VzIGF3YXkuCisgICAgaWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIFJlZlB0cjxKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IHBy
b3RlY3QodGhpcyk7CisKKyAgICBKU0M6OkpTTG9jayBsb2NrKFNpbGVuY2VBc3NlcnRpb25zT25s
eSk7CisgICAgRXhlY1N0YXRlKiBleGVjID0gbV9kYXRhLmdsb2JhbE9iamVjdCgpLT5nbG9iYWxF
eGVjKCk7CisgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKKyAgICBhcmdzLmFwcGVuZChq
c1N0cmluZyhleGVjLCBlcnJvcikpOworICAgIG1fZGF0YS5pbnZva2VDYWxsYmFjayhhcmdzKTsK
K30KKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMmE0MDRiCi0tLSAvZGV2L251bGwK
KysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaApAQCAtMCwwICsxLDYwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2tfaAorI2RlZmluZSBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaAorCisj
aW5jbHVkZSAiSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTQ2FsbGJh
Y2tEYXRhLmgiCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitjbGFzcyBCbG9iOworY2xhc3MgSlNET01HbG9iYWxPYmplY3Q7CisKK2NsYXNzIEpTQ3Vz
dG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxKU0N1c3RvbUltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s+IGNyZWF0ZShKU0M6OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01H
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKGNhbGxiYWNrLCBnbG9iYWxP
YmplY3QpKTsKKyAgICB9CisKKyAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlRXZlbnQoY29uc3QgU3Ry
aW5nJik7CisKK3ByaXZhdGU6CisgICAgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
KEpTQzo6SlNPYmplY3QqIGNhbGxiYWNrLCBKU0RPTUdsb2JhbE9iamVjdCopOworCisgICAgSlND
YWxsYmFja0RhdGEgbV9kYXRhOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3Bw
IGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmRiYTM2ZAotLS0gL2Rl
di9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suY3BwCkBAIC0wLDAgKzEsNjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
ICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5j
bHVkZSAiSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNpZiBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgIkJsb2IuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgor
I2luY2x1ZGUgIkpTQmxvYi5oIgorI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNs
dWRlIDxydW50aW1lL0pTTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCit1c2luZyBuYW1lc3BhY2UgSlNDOworCitKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazo6SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2so
SlNPYmplY3QqIGNhbGxiYWNrLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQorICAg
IDogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKGdsb2JhbE9iamVjdC0+c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpKQorICAgICwgbV9kYXRhKGNhbGxiYWNrLCBnbG9iYWxPYmplY3QpCit7Cit9
CisKK3ZvaWQgSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmhhbmRsZUV2ZW50
KEJsb2IqIGJsb2IpCit7CisgICAgLy8gQWN0aXZlRE9NT2JqZWN0IHdpbGwgbnVsbCBvdXIgcG9p
bnRlciB0byB0aGUgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCB3aGVuIGl0IGdvZXMgYXdheS4KKyAg
ICBpZiAoIXNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
UmVmUHRyPEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBwcm90ZWN0KHRoaXMp
OworCisgICAgSlNDOjpKU0xvY2sgbG9jayhTaWxlbmNlQXNzZXJ0aW9uc09ubHkpOworICAgIEV4
ZWNTdGF0ZSogZXhlYyA9IG1fZGF0YS5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpOworICAg
IE1hcmtlZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CisgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCBk
ZXByZWNhdGVkR2xvYmFsT2JqZWN0Rm9yUHJvdG90eXBlKGV4ZWMpLCBibG9iKSk7CisgICAgbV9k
YXRhLmludm9rZUNhbGxiYWNrKGFyZ3MpOworfQorCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21J
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5lMDBlNjQwCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCkBAIC0wLDAgKzEsNjAgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICog
ZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSlNDdXN0
b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiSlNDYWxsYmFja0RhdGEuaCIKKyNpbmNsdWRl
IDx3dGYvRm9yd2FyZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEJsb2I7Citj
bGFzcyBKU0RPTUdsb2JhbE9iamVjdDsKKworY2xhc3MgSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2sgOiBwdWJsaWMgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHsKK3B1Ymxp
YzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjaz4gY3JlYXRlKEpTQzo6SlNPYmplY3QqIGNhbGxiYWNrLCBKU0RPTUdsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBKU0N1c3Rv
bUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KSk7Cisg
ICAgfQorCisgICAgdmlydHVhbCB2b2lkIGhhbmRsZUV2ZW50KEJsb2IqKTsKKworcHJpdmF0ZToK
KyAgICBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhKU0M6OkpTT2JqZWN0KiBj
YWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqKTsKKworICAgIEpTQ2FsbGJhY2tEYXRhIG1fZGF0
YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNI
VE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5mZjVmODhmCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCkBAIC0wLDAgKzEsMTY1IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlv
bi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1l
cyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJ
UyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAq
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
CisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZp
Zy5oIgorI2luY2x1ZGUgIkpTSFRNTEltYWdlRWxlbWVudC5oIgorCisjaWYgRU5BQkxFKElNQUdF
X1JFU0laRVIpCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRlICJIVE1MSW1hZ2VF
bGVtZW50LmgiCisjaW5jbHVkZSAiSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgi
CisjaW5jbHVkZSAiSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNpbmNs
dWRlICJSZXNpemVPcHRpb25zLmgiCisjaW5jbHVkZSA8cnVudGltZS9KU0Z1bmN0aW9uLmg+Cisj
aW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9HZXRQdHIuaD4KKyNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKwordXNp
bmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgUGFzc1Jl
ZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IGNyZWF0ZUltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlv
bjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hf
RVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3QqIG9iamVjdCA9
IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQYXNz
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0ZUltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIC8vIEFyZ3VtZW50IGlzIG9wdGlvbmFsIChoZW5jZSB1
bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93ZWQuCisgICAgaWYgKHZhbHVl
LmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKCF2YWx1
ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0aW9u
KGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisg
ICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3Qp
OworfQorCitzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGVSZXNpemVPcHRp
b25zKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBSZWZQdHI8UmVzaXpl
T3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpOworCisgICAg
Ly8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBpcyBhbGxvd2VkKSwgYW5k
IG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmluZWRPck51bGwoKSkgewor
ICAgICAgICAvLyBVc2UgZGVmYXVsdCBvcHRpb25zLgorICAgICAgICByZXR1cm4gcmVzaXplT3B0
aW9ucy5yZWxlYXNlKCk7CisgICAgfQorICAgIEpTT2JqZWN0KiBvYmplY3QgPSB2YWx1ZS50b09i
amVjdChleGVjKTsKKworICAgIEpTVmFsdWUgd2lkdGggPSBvYmplY3QtPmdldChleGVjLCBJZGVu
dGlmaWVyKGV4ZWMsICJ3aWR0aCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiAwOworICAgIGlmICghd2lkdGguaXNVbmRlZmluZWQoKSkgeworICAgICAg
ICByZXNpemVPcHRpb25zLT5zZXRXaWR0aCh3aWR0aC50b0Zsb2F0KGV4ZWMpKTsKKyAgICAgICAg
aWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgSlNWYWx1ZSBoZWlnaHQgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMs
ICJoZWlnaHQiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm4gMDsKKyAgICBpZiAoIWhlaWdodC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9w
dGlvbnMtPnNldEhlaWdodChoZWlnaHQudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVj
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpT
VmFsdWUgY29tcHJlc3Npb25MZXZlbCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhl
YywgImNvbXByZXNzaW9uTGV2ZWwiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWNvbXByZXNzaW9uTGV2ZWwuaXNVbmRlZmluZWQo
KSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRDb21wcmVzc2lvbkxldmVsKGNvbXByZXNz
aW9uTGV2ZWwudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVB
c3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZl
QXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICBy
ZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgewor
ICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVj
dFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRp
b24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsK
KyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlm
ICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5z
ZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmco
ZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOwor
fQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRl
KiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhl
eGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGlj
X2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBl
eGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKwor
ICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3Jl
YXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2Jh
bE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIp
KTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVm
aW5lZCgpOworCisgICAgLy8gRklYTUU6IE1vcmUgc29waGlzdGljYXRlZCBlcnJvciBoYW5kbGlu
ZyBmb3IgcGFyYW1ldGVycz8KKyAgICBSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9u
cyA9IGNyZWF0ZVJlc2l6ZU9wdGlvbnMoZXhlYywgZXhlYy0+YXJndW1lbnQoMykpOworICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cisg
ICAgQVNTRVJUKHJlc2l6ZU9wdGlvbnMpOworCisgICAgSFRNTEltYWdlRWxlbWVudCogaW1wID0g
c3RhdGljX2Nhc3Q8SFRNTEltYWdlRWxlbWVudCo+KGltcGwoKSk7CisgICAgaW1wLT53ZWJraXRH
ZXRJbWFnZShtaW1lVHlwZSwgc3VjY2Vzc0NhbGxiYWNrLnJlbGVhc2UoKSwgZXJyb3JDYWxsYmFj
ay5yZWxlYXNlKCksIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpLCBlYyk7CisgICAgc2V0RE9NRXhj
ZXB0aW9uKGV4ZWMsIGVjKTsKKyAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30KKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwIGIvV2ViQ29yZS9odG1s
L0FzeW5jSW1hZ2VSZXNpemVyLmNwcAppbmRleCA0YmI3NGM5Li4zMmVhNjUyIDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9B
c3luY0ltYWdlUmVzaXplci5jcHAKQEAgLTM0LDI4ICszNCwzMCBAQAogI2luY2x1ZGUgIkFzeW5j
SW1hZ2VSZXNpemVyLmgiCiAKICNpbmNsdWRlICJDYWNoZWRJbWFnZS5oIgorI2luY2x1ZGUgIklt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaCIKICNpbmNsdWRlICJJbWFnZVJlc2l6ZXJUaHJlYWQuaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCiAjaW5jbHVkZSA8dXRp
bGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNp
emVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwg
T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVl
IHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0
eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9u
IG9yaWVudGF0aW9uT3B0aW9uKQorUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gQXN5bmNJ
bWFnZVJlc2l6ZXI6OmNyZWF0ZShDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUg
b3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nl
c3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNh
bGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMpCiB7Ci0gICAg
cmV0dXJuIGFkb3B0UmVmKG5ldyBBc3luY0ltYWdlUmVzaXplcihjYWNoZWRJbWFnZSwgb3V0cHV0
VHlwZSwgZGVzaXJlZEJvdW5kcywgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCBxdWFs
aXR5LCBhc3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24pKTsKKyAgICByZXR1cm4g
YWRvcHRSZWYobmV3IEFzeW5jSW1hZ2VSZXNpemVyKGNhY2hlZEltYWdlLCBvdXRwdXRUeXBlLCBz
dWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpKTsKIH0KIAotQXN5
bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFn
ZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZh
bHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVh
bGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0
aW9uIG9yaWVudGF0aW9uT3B0aW9uKQotICAgIDogbV9jYWNoZWRJbWFnZShjYWNoZWRJbWFnZSkK
K0FzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSogY2FjaGVk
SW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6
ZU9wdGlvbnMpCisJOiBtX2NhY2hlZEltYWdlKGNhY2hlZEltYWdlKQorICAgICwgbV9vdXRwdXRU
eXBlKG91dHB1dFR5cGUpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2sp
CiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKLSAgICAsIG1fb3V0cHV0VHlw
ZShvdXRwdXRUeXBlKQotICAgICwgbV9kZXNpcmVkQm91bmRzKGRlc2lyZWRCb3VuZHMpCi0gICAg
LCBtX3F1YWxpdHkocXVhbGl0eSkKLSAgICAsIG1fYXNwZWN0UmF0aW9PcHRpb24oYXNwZWN0UmF0
aW9PcHRpb24pCi0gICAgLCBtX29yaWVudGF0aW9uT3B0aW9uKG9yaWVudGF0aW9uT3B0aW9uKQor
ICAgICwgbV9yZXNpemVPcHRpb25zKHJlc2l6ZU9wdGlvbnMpCiB7Ci0gICAgQVNTRVJUKG1fc3Vj
Y2Vzc0NhbGxiYWNrLmlzT2JqZWN0KCkpOworICAgIC8vIEZyb20gbm93IG9uLCBtX2NhbGxiYWNr
IGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxi
YWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0Nh
bGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAK
QEAgLTY3LDExICs2OSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hl
ZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNh
Y2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxs
YmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVy
VGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rl
c2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlv
bk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwg
bV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndp
ZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXBy
ZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jl
c2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigp
OwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8Qmxv
Yj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQoYmxvYi5nZXQo
KSk7Cit9CisKK3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKCkKK3sKKyAgICBp
ZiAobV9lcnJvckNhbGxiYWNrLmdldCgpKQorICAgICAgICBtX2Vycm9yQ2FsbGJhY2stPmhhbmRs
ZUV2ZW50KCJVbmV4cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6aW5nIGltYWdlIik7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmggYi9XZWJDb3JlL2h0
bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaAppbmRleCAzZWVlZWFkLi5mZmM4NWEzIDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaAorKysgYi9XZWJDb3JlL2h0bWwvQXN5
bmNJbWFnZVJlc2l6ZXIuaApAQCAtNDAsNyArNDAsMTEgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgQ2FjaGVkSW1hZ2U7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOwor
Y2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOwogY2xhc3MgSW1hZ2VSZXNpemVyVGhy
ZWFkOworY2xhc3MgUmVzaXplT3B0aW9uczsKKwogCiAvLyBBc3luY0ltYWdlUmVzaXplciB3YWl0
cyBmb3IgdGhlIENhY2hlZEltYWdlIHRoYXQgaXMgcGFzc2VkIGluIHRvIGxvYWQgY29tcGxldGVs
eSwKIC8vIHRoZW4gc3RhcnRzIGFuIEltYWdlUmVzaXplclRocmVhZCB0byByZXNpemUgdGhlIGlt
YWdlLiBPbmNlIGNyZWF0ZWQsIEltYWdlUmVzaXplclRocmVhZApAQCAtNjYsMzggKzcwLDIyIEBA
IHB1YmxpYzoKICAgICAgICAgUE5HCiAgICAgfTsKIAotICAgIGVudW0gQXNwZWN0UmF0aW9PcHRp
b24gewotICAgICAgICBQcmVzZXJ2ZUFzcGVjdFJhdGlvLAotICAgICAgICBJZ25vcmVBc3BlY3RS
YXRpbwotICAgIH07Ci0KLSAgICBlbnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKLSAgICAgICAgQ29y
cmVjdE9yaWVudGF0aW9uLAotICAgICAgICBJZ25vcmVPcmllbnRhdGlvbgotICAgIH07Ci0KLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gY3JlYXRlKENhY2hlZEltYWdl
KiwgT3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNz
Q2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVj
dFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbik7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8
QXN5bmNJbWFnZVJlc2l6ZXI+IGNyZWF0ZShDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgfkFzeW5j
SW1hZ2VSZXNpemVyKCk7CiAKLSAgICAvLyBGSVhNRTogSW5zZXJ0IG92ZXJyaWRlIGZ1bmN0aW9u
IGZvciBub3RpZmljYXRpb24gb2YgZG9jdW1lbnQgZGVzdHJ1Y3Rpb24gKGNoYW5nZSBtX2NhbGxi
YWNrc09rKS4KLQotICAgIHZvaWQgcmVzaXplQ29tcGxldGUoUmVmUHRyPEJsb2I+KSB7IC8qIEZJ
WE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9Ci0gICAgdm9pZCByZXNpemVFcnJvcigpIHsg
LyogRklYTUU6IE5vdCB5ZXQgaW1wbGVtZW50ZWQuICovIH0KKyAgICB2b2lkIHJlc2l6ZUNvbXBs
ZXRlKFJlZlB0cjxCbG9iPik7CisgICAgdm9pZCByZXNpemVFcnJvcigpOwogCiBwcml2YXRlOgot
ICAgIEFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6ZSBk
ZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVy
cm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlv
bk9wdGlvbik7CisgICAgQXN5bmNJbWFnZVJlc2l6ZXIoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBl
LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAg
IHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopOwotCi0gICAgQ2Fj
aGVkSW1hZ2UqIG1fY2FjaGVkSW1hZ2U7Ci0gICAgU2NyaXB0VmFsdWUgbV9zdWNjZXNzQ2FsbGJh
Y2s7Ci0gICAgU2NyaXB0VmFsdWUgbV9lcnJvckNhbGxiYWNrOwogICAgIAotICAgIC8vIFBhcmFt
ZXRlcnMgdG8gcGFzcyBpbnRvIEltYWdlUmVzaXplclRocmVhZC4KKyAgICBDYWNoZWRJbWFnZSog
bV9jYWNoZWRJbWFnZTsKKyAgICBDYWxsYmFja0luZm8qIG1fY2FsbGJhY2tJbmZvOwogICAgIE91
dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwotICAgIEludFNpemUgbV9kZXNpcmVkQm91bmRzOwotICAg
IGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0
aW9uOwotICAgIE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAgUmVm
UHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gbV9zdWNjZXNzQ2FsbGJhY2s7CisgICAg
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxsYmFjazsKKyAgICBS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gbV9yZXNpemVPcHRpb25zOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3Bw
IGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDVkNTkyM2QuLjRiNWIz
MDkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcAorKysgYi9X
ZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKQEAgLTIzLDYgKzIzLDEwIEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgogCisjaWYgRU5B
QkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNlbmRp
ZgorCiAjaW5jbHVkZSAiQXR0cmlidXRlLmgiCiAjaW5jbHVkZSAiQ1NTSGVscGVyLmgiCiAjaW5j
bHVkZSAiQ1NTUHJvcGVydHlOYW1lcy5oIgpAQCAtMzIsNyArMzYsMTEgQEAKICNpbmNsdWRlICJI
VE1MRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJI
VE1MTmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIK
ICNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNp
bmNsdWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CkBA
IC00NTEsNCArNDU5LDM3IEBAIHZvaWQgSFRNTEltYWdlRWxlbWVudDo6d2lsbE1vdmVUb05ld093
bmVyRG9jdW1lbnQoKQogICAgIEhUTUxFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVu
dCgpOwogfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKK3ZvaWQgSFRNTEltYWdlRWxl
bWVudDo6d2Via2l0R2V0SW1hZ2UoU3RyaW5nIG1pbWVUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9u
cz4gcmVzaXplT3B0aW9ucywgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFzcmMoKS5p
c1ZhbGlkKCkpIHsKKyAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIC8vIFRoZSB0YWludHNDYW52YXMgbWV0aG9kIGFsc28gYWxsb3dz
IGRhdGEgVVJMcy4KKwlpZiAoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+dGFpbnRzQ2Fu
dmFzKHNyYygpKSkgeworICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGU7
CisgICAgaWYgKG1pbWVUeXBlID09ICJpbWFnZS9qcGVnIikKKyAgICAJb3V0cHV0VHlwZSA9IEFz
eW5jSW1hZ2VSZXNpemVyOjpKUEVHOworICAgIGVsc2UgaWYgKG1pbWVUeXBlID09ICJpbWFnZS9w
bmciKQorICAgIAlvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OlBORzsKKyAgICBlbHNl
IHsKKyAgICAgICAgZWMgPSBOT1RfU1VQUE9SVEVEX0VSUjsKKyAgICAJcmV0dXJuOworICAgCX0K
KworICAgIFJlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXIgPSBBc3lu
Y0ltYWdlUmVzaXplcjo6Y3JlYXRlKG1faW1hZ2VMb2FkZXIuaW1hZ2UoKSwgb3V0cHV0VHlwZSwg
c3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKKworICAgIC8v
IFJlZmVyZW5jZSB0byBhc3luY0ltYWdlUmVzaXplciBpcyBub3cgaGVsZCBpbnRlcm5hbGx5Lgor
ICAgIGFzeW5jSW1hZ2VSZXNpemVyLnJlbGVhc2UoKTsKK30KKworI2VuZGlmIC8vIEVOQUJMRShJ
TUFHRV9SRVNJWkVSKQorCiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxl
bWVudC5oIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAppbmRleCA2MmQzMTVjLi5h
MTEwMmNhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCisrKyBi
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKQEAgLTMxLDYgKzMxLDkgQEAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2Ns
YXNzIFJlc2l6ZU9wdGlvbnM7CiAKIGNsYXNzIEhUTUxJbWFnZUVsZW1lbnQgOiBwdWJsaWMgSFRN
TEVsZW1lbnQgewogICAgIGZyaWVuZCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CkBAIC04OSw2ICs5
MiwxMiBAQCBwdWJsaWM6CiAKICAgICBib29sIGhhdmVGaXJlZExvYWRFdmVudCgpIGNvbnN0IHsg
cmV0dXJuIG1faW1hZ2VMb2FkZXIuaGF2ZUZpcmVkTG9hZEV2ZW50KCk7IH0KIAorI2lmIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQorCisgICAgdm9pZCB3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWltZVR5
cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiwgRXhj
ZXB0aW9uQ29kZSYpOworCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIHByb3Rl
Y3RlZDoKICAgICBIVE1MSW1hZ2VFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVu
dCosIEhUTUxGb3JtRWxlbWVudCogPSAwKTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hU
TUxJbWFnZUVsZW1lbnQuaWRsIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCmlu
ZGV4IDBmYzcyNzEuLjVkYTM1MzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmlkbAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKQEAgLTQ5
LDYgKzQ5LDE0IEBAIG1vZHVsZSBodG1sIHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBhbHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgVVJM
IGFic29sdXRlSW1hZ2VVUkw7CiAjZW5kaWYKKworI2lmIGRlZmluZWQoRU5BQkxFX0lNQUdFX1JF
U0laRVIpICYmIEVOQUJMRV9JTUFHRV9SRVNJWkVSCisjaWYgZGVmaW5lZChMQU5HVUFHRV9KQVZB
U0NSSVBUKSAmJiBMQU5HVUFHRV9KQVZBU0NSSVBUCisgICAgICAgIC8vIEZ1bmN0aW9ucworICAg
ICAgICBbQ3VzdG9tXSB2b2lkIHdlYmtpdEdldEltYWdlKGluIERPTVN0cmluZyBtaW1lVHlwZSwg
aW4gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW09wdGlvbmFs
XSBpbiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2ssIFtPcHRpb25hbF0g
aW4gUmVzaXplT3B0aW9ucyBvcHRpb25zKQorICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlv
bik7CisjZW5kaWYKKyNlbmRpZgogICAgIH07CiAKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYxZjNm
NmQKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5oCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICog
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tf
aAorI2RlZmluZSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQorI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgorI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBwdWJs
aWMgQWN0aXZlRE9NT2JqZWN0IHsKK3B1YmxpYzoKKyAgICBJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIDogQWN0aXZlRE9NT2JqZWN0KGNv
bnRleHQsIHRoaXMpIHsgfQorICAgIHZpcnR1YWwgfkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2so
KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlRXZlbnQoY29uc3QgU3RyaW5nJikgPSAwOwor
fTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YTc5ZTVk
Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICog
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsK
KyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAg
ICBdIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgeworICAgICAgICBbQ3VzdG9tXSBib29sZWFu
IGhhbmRsZUV2ZW50KGluIERPTVN0cmluZyBlcnJvcik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44NjU0N2Y3Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9u
LgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFja19oCisjZGVmaW5lIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
a19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBY3RpdmVET01PYmpl
Y3QuaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK2NsYXNzIEJsb2I7CitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OworY2xhc3MgU3Ry
aW5nOworCitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291
bnRlZDxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0
IHsKK3B1YmxpYzoKKyAgICBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCkgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykgeyB9
CisgICAgdmlydHVhbCB+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmly
dHVhbCB2b2lkIGhhbmRsZUV2ZW50KEJsb2IqKSA9IDA7Cit9OworCit9CisKKyNlbmRpZiAvLyBF
TkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5pZGwgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNGJjMTRmCi0tLSAvZGV2L251bGwKKysr
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKQEAgLTAsMCAr
MSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRp
b25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrIHsKKyAgICAgICAgW0N1c3RvbV0gYm9vbGVhbiBoYW5kbGVFdmVudChp
biBCbG9iIGJsb2IpOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VS
ZXNpemVyVGhyZWFkLmNwcCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwCmlu
ZGV4IDFiYWU2YTAuLmI3ZWE2YWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJUaHJlYWQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwCkBA
IC01MCw3ICs1MCw3IEBAIHN0YXRpYyB2b2lkIHJldHVybkJsb2JPckVycm9yKHZvaWQqIGNhbGxi
YWNrSW5mb3JtYXRpb24pCiAgICAgZGVsZXRlIGNhbGxiYWNrSW5mbzsKIH0KIAotYm9vbCBJbWFn
ZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEs
IEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBm
bG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRh
dGlvbk9wdGlvbikKK2Jvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBj
YWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIElu
dFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0
UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9u
T3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQogewogICAgIEltYWdlUmVzaXplclRocmVhZCogaW1h
Z2VSZXNpemVyVGhyZWFkID0gbmV3IEltYWdlUmVzaXplclRocmVhZChjYWxsYmFja0luZm8sIG91
dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHF1YWxpdHksIGFzcGVjdFJhdGlvT3B0aW9uLCBvcmll
bnRhdGlvbk9wdGlvbik7CiAKQEAgLTYyLDcgKzYyLDcgQEAgYm9vbCBJbWFnZVJlc2l6ZXJUaHJl
YWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VS
ZXMKICAgICByZXR1cm4gaW1hZ2VSZXNpemVyVGhyZWFkLT5tX3RocmVhZElEOwogfQogCi1JbWFn
ZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2Fs
bGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91
dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFn
ZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdl
UmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCitJbWFnZVJlc2l6
ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJ
bmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5
cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQogICAgIDogbV90aHJlYWRJRCgwKQogICAg
ICwgbV9jYWxsYmFja0luZm8oY2FsbGJhY2tJbmZvKQogICAgICwgbV9vdXRwdXRUeXBlKG91dHB1
dFR5cGUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggYi9X
ZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKaW5kZXggYWU1YWRlNS4uNjEwMGI1NSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCisrKyBiL1dlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaApAQCAtMzQsNiArMzQsNyBAQAogI2lmIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQogCiAjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNpbmNs
dWRlICJSZXNpemVPcHRpb25zLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMTEg
KzQzLDExIEBAIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFk
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0
eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXpl
cjo6T3JpZW50YXRpb25PcHRpb24pOworICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8q
LCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBm
bG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0
aW9uczo6T3JpZW50YXRpb25PcHRpb24pOwogICAgIH5JbWFnZVJlc2l6ZXJUaHJlYWQoKTsKIAog
cHJpdmF0ZToKLSAgICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxi
YWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRC
b3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlv
biwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBJbWFnZVJlc2l6
ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNp
emVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIFJl
c2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlv
bk9wdGlvbik7CiAgICAgc3RhdGljIHZvaWQqIGltYWdlUmVzaXplclRocmVhZFN0YXJ0KHZvaWQq
KTsKICAgICB2b2lkKiBpbWFnZVJlc2l6ZXJUaHJlYWQoKTsKIApAQCAtNTksOCArNjAsOCBAQCBw
cml2YXRlOgogICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsK
ICAgICBJbnRTaXplIG1fZGVzaXJlZEJvdW5kczsKICAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAg
QXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247
Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25P
cHRpb247CisgICAgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRp
b09wdGlvbjsKKyAgICBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0
aW9uT3B0aW9uOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWZmODNkNwotLS0gL2Rldi9udWxs
CisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgKQEAgLTAsMCArMSwxMDAgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICog
ZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIFJlc2l6ZU9wdGlvbnNfaAorI2RlZmluZSBSZXNpemVPcHRpb25zX2gKKworI2lmIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgorCisvLyBJbmNsdXNpdmUgbGltaXRzLgorI2RlZmluZSBESU1F
TlNJT05TX0xPV0VSX0xJTUlUIDEKKyNkZWZpbmUgRElNRU5TSU9OU19VUFBFUl9MSU1JVCAzMjc2
NworI2RlZmluZSBDT01QUkVTU0lPTl9MT1dFUl9MSU1JVCBzdGF0aWNfY2FzdDxmbG9hdD4oMC4w
KQorI2RlZmluZSBDT01QUkVTU0lPTl9VUFBFUl9MSU1JVCBzdGF0aWNfY2FzdDxmbG9hdD4oMS4w
KQorCisjZGVmaW5lIERFRkFVTFRfQ09NUFJFU1NJT04gc3RhdGljX2Nhc3Q8ZmxvYXQ+KDAuODUp
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUmVzaXplT3B0aW9ucyA6IHB1YmxpYyBS
ZWZDb3VudGVkPFJlc2l6ZU9wdGlvbnM+IHsKK3B1YmxpYzoKKyAgICBlbnVtIEFzcGVjdFJhdGlv
T3B0aW9uIHsKKyAgICAgICAgUHJlc2VydmVBc3BlY3RSYXRpbywKKyAgICAgICAgSWdub3JlQXNw
ZWN0UmF0aW8KKyAgICB9OworCisgICAgZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7CisgICAgICAg
IENvcnJlY3RPcmllbnRhdGlvbiwKKyAgICAgICAgSWdub3JlT3JpZW50YXRpb24KKyAgICB9Owor
CisgICAgc3RhdGljIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlKCkgeyByZXR1cm4g
YWRvcHRSZWYobmV3IFJlc2l6ZU9wdGlvbnMoKSk7IH0KKworICAgIHZvaWQgc2V0V2lkdGgoaW50
IHdpZHRoKSB7IG1fd2lkdGggPSB3aWR0aCA+PSBESU1FTlNJT05TX0xPV0VSX0xJTUlUICYmIHdp
ZHRoIDw9IERJTUVOU0lPTlNfVVBQRVJfTElNSVQgPyB3aWR0aCA6IDA7IH0KKyAgICBpbnQgd2lk
dGgoKSB7IHJldHVybiBtX3dpZHRoOyB9CisKKyAgICB2b2lkIHNldEhlaWdodChpbnQgaGVpZ2h0
KSB7IG1faGVpZ2h0ID0gaGVpZ2h0ID49IERJTUVOU0lPTlNfTE9XRVJfTElNSVQgJiYgaGVpZ2h0
IDw9IERJTUVOU0lPTlNfVVBQRVJfTElNSVQgPyBoZWlnaHQgOiAwOyB9CisgICAgaW50IGhlaWdo
dCgpIHsgcmV0dXJuIG1faGVpZ2h0OyB9CisKKyAgICB2b2lkIHNldENvbXByZXNzaW9uTGV2ZWwo
ZmxvYXQgY29tcHJlc3Npb25MZXZlbCkgeyBtX2NvbXByZXNzaW9uTGV2ZWwgPSBjb21wcmVzc2lv
bkxldmVsID49IENPTVBSRVNTSU9OX0xPV0VSX0xJTUlUICYmIGNvbXByZXNzaW9uTGV2ZWwgPD0g
Q09NUFJFU1NJT05fVVBQRVJfTElNSVQgPyBjb21wcmVzc2lvbkxldmVsIDogREVGQVVMVF9DT01Q
UkVTU0lPTjsgfQorICAgIGZsb2F0IGNvbXByZXNzaW9uTGV2ZWwoKSB7IHJldHVybiBtX2NvbXBy
ZXNzaW9uTGV2ZWw7IH0KKworICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVz
ZXJ2ZUFzcGVjdFJhdGlvKSB7IG1fYXNwZWN0UmF0aW9PcHRpb24gPSBwcmVzZXJ2ZUFzcGVjdFJh
dGlvID8gUHJlc2VydmVBc3BlY3RSYXRpbyA6IElnbm9yZUFzcGVjdFJhdGlvOyB9CisgICAgQXNw
ZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24oKSB7IHJldHVybiBtX2FzcGVjdFJhdGlv
T3B0aW9uOyB9CisKKyAgICB2b2lkIHNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRh
dGlvbk9wdGlvbikgeyBtX29yaWVudGF0aW9uT3B0aW9uID0gb3JpZW50YXRpb25PcHRpb24gPT0g
ImF1dG8iID8gQ29ycmVjdE9yaWVudGF0aW9uIDogSWdub3JlT3JpZW50YXRpb247IH0KKyAgICBP
cmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbigpIHsgcmV0dXJuIG1fb3JpZW50YXRp
b25PcHRpb247IH0KKworcHJpdmF0ZToKKyAgICBSZXNpemVPcHRpb25zKCkKKyAgICA6IG1fd2lk
dGgoKQorICAgICwgbV9oZWlnaHQoKQorICAgICwgbV9jb21wcmVzc2lvbkxldmVsKCkKKyAgICAs
IG1fYXNwZWN0UmF0aW9PcHRpb24oSWdub3JlQXNwZWN0UmF0aW8pCisgICAgLCBtX29yaWVudGF0
aW9uT3B0aW9uKElnbm9yZU9yaWVudGF0aW9uKQorICAgIHsKKyAgICB9CisKKyAgICAvLyBJZiBt
X3dpZHRoIG9yIG1faGVpZ2h0ID09IDAsIHRoYXQgZGltZW5zaW9uIHdpbGwgbm90IGNoYW5nZSBl
eHBsaWNpdGx5IGR1cmluZyByZXNpemluZy4KKyAgICBpbnQgbV93aWR0aDsKKyAgICBpbnQgbV9o
ZWlnaHQ7CisgICAgZmxvYXQgbV9jb21wcmVzc2lvbkxldmVsOworICAgIEFzcGVjdFJhdGlvT3B0
aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgT3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRh
dGlvbk9wdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gUmVzaXplT3B0aW9uc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59163</attachid>
            <date>2010-06-18 16:00:22 -0700</date>
            <delta_ts>2010-06-18 16:05:10 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>115013</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi44YjRlMWFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzIgQEAKKzIwMTAtMDYt
MTggIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciB0aGUg
ZXhwb3N1cmUgb2YgdGhlIGltYWdlIHJlc2l6ZXIgQVBJIHRvIEpTQywgd2hpY2ggaXMgZnVuY3Rp
b25hbGx5CisgICAgICAgIGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBmYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1z
b3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZDog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFm
dGVyLXVubG9hZC5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Jlc291cmNlcy9oZWxtZXQuanBnOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5v
LXNvdXJjZS5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qczogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvdGVzdC1jYWxsYmFja3MuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
bWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90
ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9taXNj
L3Jlc291cmNlcy9oZWxtZXQuanBnOiBBZGRlZC4KKworMjAxMC0wNi0xOCAgU3RlcmxpbmcgU3dp
Z2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgdGVzdHMgZm9yIEpTQyBleHBvc3VyZSBvZiB0aGUg
ZnVuY3Rpb25hbGx5IGluY29tcGxldGUgaW1hZ2UgcmVzaXplciBBUEkuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAoc2hvdWxkTm90
VGhyb3cpOgorICAgICAgICAodGVzdCk6CisgICAgICAgIChlbXB0eUZ1bmN0aW9uKToKKyAgICAg
ICAgKCk6CisgICAgICAgIChPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbi5wcm90b3R5cGUudmFsdWVP
Zik6CisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qczogQWRkZWQuCisgICAgICAgIChlbXB0
eUZ1bmN0aW9uKToKKyAgICAgICAgKGRvY3VtZW50LmJvZHkub25sb2FkKToKKyAgICAgICAgKiBm
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1j
YWxsYmFjay1hZnRlci11bmxvYWQuanM6IEFkZGVkLgorICAgICAgICAoc3VjY2Vzc0NhbGxiYWNr
KToKKyAgICAgICAgKGVycm9yQ2FsbGJhY2spOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdl
dEltYWdlLmpzOiBBZGRlZC4KKyAgICAgICAgKGltZy53ZWJraXRHZXRJbWFnZSk6CisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMv
dGVzdC1jYWxsYmFja3MuanM6IEFkZGVkLgorICAgICAgICAoc3VjY2Vzc0NhbGxiYWNrKToKKyAg
ICAgICAgKGVycm9yQ2FsbGJhY2spOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2Fs
bGJhY2tzLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9p
bWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4uaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL3Jlc291
cmNlcy9oZWxtZXQuanBnOiBBZGRlZC4KKwogMjAxMC0wNi0xOCAgSnVzdGluIEdhcmNpYSAgPGp1
c3Rpbi5nYXJjaWFAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE9qYW4gVmFmYWku
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyMTU4YTIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwNyBAQAor
CitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRzIHRvIHRoZSBJbWFnZS53
ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNN
QVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSh1bmRl
ZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlT
TUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5kZWZp
bmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwge30pIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVt
cHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
Tk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIDQyKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmlu
aXR5KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG51bGwpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHt9KSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9i
amVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHRydWUpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVf
TUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVk
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG51bGwpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0
VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogd2lkdGggZ2V0dGVyIGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0MikgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBJbmZpbml0eSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgInN0cmlu
ZyIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dW5kZWZp
bmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxs
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp7fX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6b2JqZWN0VGhyb3dp
bmdFeGNlcHRpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1t
eVByb3BlcnR5OnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5OjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVy
dHk6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eToic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVu
ZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dHJ1
ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2hlaWdodDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp7fX0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7aGVpZ2h0OmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpJbmZpbml0
eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6InN0cmluZyJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVmaW5lZH0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnRydWV9KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOjQyfSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDoic3RyaW5nIn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5k
ZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNw
ZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOjQyfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86LUlu
ZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp7
fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50
YXRpb246ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOklu
ZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUlu
ZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246InN0
cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwt
ZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdl
dEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYjJjNTFjNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMuaHRt
bC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lF
VEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0
LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkNDdlYzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1u
by1zb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCBhbiBp
bWFnZSB3aXRoIG5vIHNvdXJjZSB3aWxsIHRocm93IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2Vw
dGlvbi4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgRXhjZXB0aW9uIHdh
cyBjb3JyZWN0bHkgdGhyb3duOiBFcnJvcjogSU5WQUxJRF9TVEFURV9FUlI6IERPTSBFeGNlcHRp
b24gMTEKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNv
dXJjZS5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNj
NjUyMzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZApA
QCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8u
Li8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxw
IGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxYzA4NWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxi
YWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitUZXN0cyB0
aGF0IHRoZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTIEVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIHdpdGgg
b3V0cHV0OiBVbmV4cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6aW5nIGltYWdlCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxs
YmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0
bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWMzZWQ3Ygot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQKQEAg
LTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBz
cmM9InNjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFn
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jM2NhYWRiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9v
dmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAor
CitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRo
IGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyA0
MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJs
ZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYzk0OWRhZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2st
d2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3Jj
PSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL292ZXJyaWRl
LW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2UvcmVzb3VyY2VzL2hlbG1ldC5qcGcgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVs
bCBhbmQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Jlc291cmNlcy9oZWxtZXQuanBnIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVN
UExBVEUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uMjcxNzBhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBM
QVRFLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRG
Ly9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5q
cGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9IllPVVJfSlNfRklMRV9IRVJFIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQt
dGVzdHMvYXJndW1lbnQtdHlwZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uZTM0MTkxYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpz
CkBAIC0wLDAgKzEsMTQ1IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhlIGFjY2VwdGFibGUgdHlw
ZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0aG9kLiIpOwor
CitmdW5jdGlvbiBzaG91bGROb3RUaHJvdyhleHByZXNzaW9uKSB7CisgIHRyeSB7CisgICAgZXZh
bChleHByZXNzaW9uKTsKKyAgICB0ZXN0UGFzc2VkKGV4cHJlc3Npb24gKyAiIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLiIpOworICB9IGNhdGNoKGUpIHsKKyAgICB0ZXN0RmFpbGVkKGV4cHJlc3Np
b24gKyAiIHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJldyBleGNlcHRpb24gIiArIGUp
OworICB9Cit9CisKK2Z1bmN0aW9uIHRlc3QoZXhwcmVzc2lvbiwgZXhwcmVzc2lvblNob3VsZFRo
cm93LCBleHBlY3RlZEV4Y2VwdGlvbikgeworICAgIGlmIChleHByZXNzaW9uU2hvdWxkVGhyb3cp
IHsKKyAgICAgICAgaWYgKGV4cGVjdGVkRXhjZXB0aW9uKQorICAgICAgICAgICAgc2hvdWxkVGhy
b3coZXhwcmVzc2lvbiwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICInICsgZXhwZWN0ZWRFeGNlcHRp
b24gKyAnIjsgfSkoKTsnKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2hvdWxkVGhyb3co
ZXhwcmVzc2lvbiwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICJFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTciOyB9KSgpOycpOworICAgIH0gZWxzZSB7CisgICAgICAgIHNo
b3VsZE5vdFRocm93KGV4cHJlc3Npb24pOworICAgIH0KK30KKwordmFyIGVtcHR5RnVuY3Rpb24g
PSBmdW5jdGlvbigpIHt9OworCitmdW5jdGlvbiBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpIHt9
OworT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLnZhbHVlT2YgPSBmdW5jdGlvbigp
IHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3ZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit9CitP
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbi5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygid2lkdGgi
LCBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3dpZHRoIGdldHRlciBleGNlcHRp
b24nKTsKK30pOwordmFyIG9iamVjdFRocm93aW5nRXhjZXB0aW9uID0gbmV3IE9iamVjdFRocm93
aW5nRXhjZXB0aW9uKCk7CisKK3ZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVz
dEltYWdlJyk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgpJywgdHJ1ZSk7CisKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UobnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
anBlZyIpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywg
dHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5kZWZpbmVk
KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKScs
IHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdF
eGNlcHRpb24pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9qcGVnIiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pJywgdHJ1ZSwgJ0Vycm9yOiBOT1RfU1VQUE9S
VEVEX0VSUjogRE9NIEV4Y2VwdGlvbiA5Jyk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIHRydWUpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgLUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBudWxsKScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30p
JywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgNDIpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpJywgdHJ1
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
ICJzdHJpbmciKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0VGhy
b3dpbmdFeGNlcHRpb24pJywgdHJ1ZSwgJ0Vycm9yOiB3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdHJ1ZSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwgNDIpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCAtSW5maW5pdHkpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKScsIGZhbHNlKTsKKwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp7fX0pJywgZmFs
c2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtkdW1teVByb3BlcnR5OnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OkluZmluaXR5fSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1
bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHt3aWR0aDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3dpZHRoOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnVu
ZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtoZWlnaHQ6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om9iamVjdFRocm93aW5n
RXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp0
cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Oi1JbmZpbml0eX0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp7fX0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9u
fSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2Nv
bXByZXNzaW9uTGV2ZWw6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0p
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5fSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp7fX0p
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhj
ZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86ZW1wdHlGdW5j
dGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNw
ZWN0UmF0aW86InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRl
ZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjp7fX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnRydWV9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50
YXRpb246SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSknLCBmYWxzZSk7CisK
K3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gZmFsc2U7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2Vk
ID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Njcmlw
dC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjI2ODUzYTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMt
bm8tc291cmNlLmpzCkBAIC0wLDAgKzEsMjAgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IGFu
IGltYWdlIHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhj
ZXB0aW9uLiIpOworCit2YXIgZW1wdHlGdW5jdGlvbiA9IGZ1bmN0aW9uKCkge307CisKK3ZhciBp
bWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7CitpbWcuc3JjID0gbnVs
bDsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgeworCQlkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJykud2Via2l0R2V0SW1hZ2UoImltYWdlL2pw
ZWciLCBlbXB0eUZ1bmN0aW9uKTsKKwkJdGVzdEZhaWxlZCgiU2hvdWxkIGhhdmUgdGhyb3duIGV4
Y2VwdGlvbi4gTm8gZXhjZXB0aW9uIHdhcyB0aHJvd24uLi4iKTsKKwkJZmluaXNoSlNUZXN0KCk7
CisJfSBjYXRjaChlKSB7CisJCXRlc3RQYXNzZWQoIkV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRo
cm93bjogIiArIGUpOworCQlmaW5pc2hKU1Rlc3QoKTsKKwl9Cit9OworCit3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5hODdjZWJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0
ZXItdW5sb2FkLmpzCkBAIC0wLDAgKzEsMTcgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IHRo
ZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuIik7CisKK3ZhciBzdWNjZXNzQ2FsbGJhY2sgPSBm
dW5jdGlvbihibG9iKSB7CisgICAgdGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxsYmFjayB3YXMgaW5j
b3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgZXJyb3JD
YWxsYmFjayA9IGZ1bmN0aW9uKGVycm9yKSB7CisgICAgdGVzdFBhc3NlZCgiRXJyb3IgY2FsbGJh
Y2sgd2FzIGNvcnJlY3RseSBjYWxsZWQgd2l0aCBvdXRwdXQ6ICIgKyBlcnJvcik7CisgICAgZmlu
aXNoSlNUZXN0KCk7Cit9OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3aWxsIGN1cnJl
bnRseSBldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKKword2lu
ZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRy
dWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2Ny
aXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjk3NmNjNjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9v
dmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcwpAQCAtMCwwICsxLDEwIEBACitkZXNjcmlwdGlv
bigiVGhpcyBlbnN1cmVzIHRoYXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRkZW4gd2l0
aCBhbm90aGVyIG1ldGhvZC4iKTsKKwordmFyIGltZyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0ZXN0SW1hZ2UnKTsKK2ltZy53ZWJraXRHZXRJbWFnZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4g
NDI7IH0KK3ZhciByZXN1bHQgPSBpbWcud2Via2l0R2V0SW1hZ2UoKTsKKworc2hvdWxkQmVOb25a
ZXJvKHJlc3VsdCk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gZmFsc2U7Cit3aW5kb3cuc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJh
Y2tzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYmM5NWQ2MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3Qt
Y2FsbGJhY2tzLmpzCkBAIC0wLDAgKzEsMTcgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IHRo
ZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuIik7CisKK3ZhciBzdWNjZXNzQ2FsbGJhY2sgPSBm
dW5jdGlvbigpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNvcnJl
Y3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNhbGxi
YWNrID0gZnVuY3Rpb24oKSB7CisgICAgdGVzdFBhc3NlZCgiRXJyb3IgY2FsbGJhY2sgd2FzIGNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhl
IGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVudGx5IGV2ZXIgYmUgY2FsbGVkIGluIHRoaXMgcGF0
Y2gsIHNvIHRlc3QgdGhhdCBpdCB3b3JrcyBmb3Igbm93Citkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndGVzdEltYWdlJykud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBzdWNjZXNzQ2FsbGJh
Y2ssIGVycm9yQ2FsbGJhY2spOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit3aW5k
b3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZmU1ZGIyMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdv
cmsgY29ycmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJv
ciBjYWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1k
aXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi42N2RmYjhhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1s
LWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQu
anBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90
ZS1vcmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmM0OGVmODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
aW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw1IEBACitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQg
b24gYW4gaW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246
IEVycm9yOiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4uaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJr
aXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uZjgzZWU5MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwt
ZGlzYWJsZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5j
dGlvbiBsb2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBl
bXB0eUNhbGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlv
bigpIHsKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uIik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBl
eGNlcHRpb246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3Rp
ZnlEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJ
bWFnZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90
ZSBvcmlnaW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6
ODAwMC9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIj4KKzxwcmUgaWQ9ImxvZyI+PC9wcmU+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
cmVzb3VyY2VzL2hlbG1ldC5qcGcgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3Vy
Y2VzL2hlbG1ldC5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2Q0ODJh
YQpCaW5hcnkgZmlsZXMgL2Rldi9udWxsIGFuZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlz
Yy9yZXNvdXJjZXMvaGVsbWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGFlYjRiNjguLjAxYzJhNWUg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dApAQCAtMjYyLDYgKzI2Miw4IEBAIFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIGh0
bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsCiAg
ICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbAogICAgIGh0bWwv
TWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAgIGh0bWwvVmFsaWRp
dHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggOTkzYTEyMS4uYzBiNDFiNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMzIgQEAKKzIwMTAtMDYtMTgg
IFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cG9zZWQgdGhlIGltYWdlIHJlc2l6
aW5nIEFQSSB0byBKU0MsIGJ1dCBpdCBpcyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0ZSBhdCB0aGlz
IHN0YWdlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA4NTQKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRlZCBmaWxlcy4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5jcHA6IERpdHRvLgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1h
a2U6IERpdHRvLgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOiBEaXR0by4KKyAgICAgICAgKiBX
ZWJDb3JlLmd5cGk6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUucHJpOiBEaXR0by4KKyAgICAg
ICAgKiBXZWJDb3JlLnBybzogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2o6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajogRGl0dG8uCisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6
CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6Omhh
bmRsZUV2ZW50KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazo6aGFuZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZSk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpjcmVhdGVSZXNpemVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0
YXJ0KTogQ2hhbmdlZCBzbyB0aGF0IGNhbGxlciBkb2VzIG5vIFJlZkNvdW50aW5nIChzZWxmLW93
bmVkKS4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdlUmVz
aXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlm
eUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNp
emVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2ViQ29yZTo6
QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICogaHRtbC9B
c3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vzc2V0aWVz
LgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9uIG9mIEpT
IGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOiBEaXR0by4KKyAg
ICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsOiBKUyBmdW5jdGlvbi4KKyAgICAgICAg
KiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJD
b3JlOjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjazo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6
CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4K
KyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVz
aXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVz
aXplclRocmVhZC5oOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKKzIwMTAtMDYtMTggIFN0ZXJsaW5n
IFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIEpTQyBiaW5kaW5ncyBhbmQgY2FsbGJhY2tz
IGZvciBpbWFnZSByZXNpemVyIEFQSS4gVGhlIEFQSSBpcyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0
ZSwgc28KKyAgICAgICAgdGhlIHN1Y2Nlc3MgY2FsbGJhY2sgaXMgbmV2ZXIgY2FsbGVkLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NTQKKworICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAg
ICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgor
ICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAg
KiBXZWJDb3JlLnBybzoKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OkpT
Q3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1
c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OmhhbmRsZUV2ZW50KToKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OmNyZWF0
ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkpTQ3VzdG9tSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6aGFu
ZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNI
VE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpjcmVh
dGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRl
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVSZXNp
emVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0
R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZpbmlzaGVkKToKKyAgICAgICAgKFdlYkNvcmU6
OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpB
c3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IpOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFn
ZVJlc2l6ZXIuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAq
IGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxl
bWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5p
ZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgor
ICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazo6SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrOjp+SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2s6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6On5JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2spOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydCk6CisgICAgICAgIChXZWJD
b3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZCk6CisgICAgICAgICog
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDoKKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMu
aDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjopOgorICAgICAgICAo
V2ViQ29yZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Ondp
ZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWlnaHQpOgorICAgICAgICAoV2ViQ29yZTo6
UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVy
eXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5jcHAKaW5kZXggN2FjM2U1MS4uY2U1YzhmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTE4MCw2
ICsxODAsOCBAQAogI2luY2x1ZGUgIkpTSURCUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNJREJT
dWNjZXNzRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTSW1hZ2VEYXRhLmNwcCIKKyNpbmNsdWRlICJK
U0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3Qu
Y3BwIgogI2luY2x1ZGUgIkpTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNL
ZXlib2FyZEV2ZW50LmNwcCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZSBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEw
MDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCkBAIC0yMjMsNiArMjIzLDggQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAg
SURCUmVxdWVzdCBcCiAgICAgSURCU3VjY2Vzc0V2ZW50IFwKICAgICBJbWFnZURhdGEgXAorICAg
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBcCisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayBcCiAgICAgSW5kZXhlZERhdGFiYXNlUmVxdWVzdCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRI
b3N0IFwKICAgICBJbnNwZWN0b3JCYWNrZW5kIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGU3ODU3NDkuLjcwYWEwMjAg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5hbQpAQCAtNDA5LDYgKzQwOSwxMCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNv
cmUvYmluZGluZ3MvanMvSlNDbGlwYm9hcmRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdz
L2pzL0pTQ29uc29sZUN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDb29yZGlu
YXRlc0N1c3RvbS5jcHAgXAorCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKwlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAorCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pT
Q3VzdG9tUG9zaXRpb25DYWxsYmFjay5oIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9t
UG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCBcCkBAIC00NTUsNiArNDU5LDcgQEAgd2ViY29yZV9z
b3VyY2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9t
LmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwK
IAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogCVdl
YkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmggXAogCVdlYkNvcmUv
YmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgXApAQCAtMTI2Nyw2ICsx
MjcyLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3Vy
Y2VEb2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9o
dG1sL0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VS
ZXNpemVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXApAQCAt
MTI3NCw2ICsxMjgxLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvTWVk
aWFFcnJvci5oIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3Jl
L2h0bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3Bw
IFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJh
bmdlLmNwcCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5oIFwKIAlXZWJDb3JlL2h0bWwvVGV4
dE1ldHJpY3MuaCBcCkBAIC0yNjIxLDYgKzI2MzAsMTYgQEAgRkVBVFVSRV9ERUZJTkVTICs9IEVO
QUJMRV9JTUFHRV9SRVNJWkVSPTEKIAogd2ViY29yZV9jcHBmbGFncyArPSAtREVOQUJMRV9JTUFH
RV9SRVNJWkVSPTEKIAord2ViY29yZV9zb3VyY2VzICs9IFwKKyAgICBXZWJDb3JlL2h0bWwvSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIFwKKyAgICBXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmggXAorICAgIFdlYkNvcmUvaHRtbC9KU0N1c3RvbUltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suY3BwIFwKKyAgICBXZWJDb3JlL2h0bWwvSlNDdXN0b21JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwCisKK0lETF9CSU5ESU5HUyArPSBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmlkbAorCiBlbHNlCiB3ZWJjb3JlX2NwcGZsYWdzICs9IC1ERU5B
QkxFX0lNQUdFX1JFU0laRVI9MAogCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBi
L1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGYyY2RkNjcuLmNkMzEzMzYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xODcs
NiArMTg3LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsJywKICAg
ICAgICAgICAgICdodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1s
L0ltYWdlRGF0YS5pZGwnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9NZWRpYUVycm9yLmlkbCcsCiAgICAgICAgICAgICAn
aHRtbC9UZXh0TWV0cmljcy5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGltZVJhbmdlcy5pZGwn
LApAQCAtNTE0LDYgKzUxNiw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDU1NTdHls
ZURlY2xhcmF0aW9uQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDU1NT
dHlsZURlY2xhcmF0aW9uQ3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ1NT
VmFsdWVDdXN0b20uY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1
c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oJywKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0N1c3RvbVBvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHAnLApAQCAtNTcxLDYgKzU3NSw3
IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9t
LmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3Rv
bS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9t
LmNwcCcsCkBAIC0xNjU2LDYgKzE2NjEsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZXdT
b3VyY2VEb2N1bWVudC5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5jcHAnLAogICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmgnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAn
LAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgnLAogICAgICAgICAgICAg
J2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5w
cmkgYi9XZWJDb3JlL1dlYkNvcmUucHJpCmluZGV4IDI1Yzk1ZmYuLjRlNmVmZTcgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvV2ViQ29yZS5wcmkKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtNDIy
LDYgKzQyMiw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgaHRtbC9IVE1MVUxpc3RFbGVtZW50
LmlkbCBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbCBcCiAgICAgaHRtbC9JbWFnZURh
dGEuaWRsIFwKKyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKyAgICBo
dG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogICAgIGh0bWwvTWVkaWFFcnJv
ci5pZGwgXAogICAgIGh0bWwvVGV4dE1ldHJpY3MuaWRsIFwKICAgICBodG1sL1RpbWVSYW5nZXMu
aWRsIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUu
cHJvCmluZGV4IDkyYTc3NWMuLjE3M2VjZDcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5w
cm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMjgxLDYgKzI4MSw4IEBAIFNPVVJDRVMg
Kz0gXAogICAgIGJpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHAgXAog
ICAgIGJpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9K
U0Nvb3JkaW5hdGVzQ3VzdG9tLmNwcCBcCisgICAgYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKyAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0
aW9uQ2FsbGJhY2suY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uRXJyb3JD
YWxsYmFjay5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tVm9pZENhbGxiYWNrLmNwcCBc
CkBAIC0zMTQsNyArMzE2LDkgQEAgU09VUkNFUyArPSBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1M
Rm9ybUVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1l
bnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0
b20uY3BwIFwKKyAgICBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICBiaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisgICAgYmlu
ZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMv
SlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT2Jq
ZWN0RWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xs
ZWN0aW9uQ3VzdG9tLmNwcCBcCkBAIC03MDQsNiArNzA4LDcgQEAgU09VUkNFUyArPSBcCiAgICAg
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmNw
cCBcCiAgICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAorICAgIGh0bWwvUmVzaXplT3B0aW9u
cy5jcHAgXAogICAgIGh0bWwvU3RlcFJhbmdlLmNwcCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRl
LmNwcCBcCiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcCBcCkBAIC0xNDM2LDkgKzE0
NDEsMTIgQEAgSEVBREVSUyArPSBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggXAogICAg
IGh0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKICAgICBodG1sL0ltYWdlRGF0YS5oIFwK
KyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCisgICAgaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBc
CiAgICAgaHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmgg
XAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5oIFwKICAgICBodG1sL1N0ZXBSYW5nZS5oIFwKICAg
ICBodG1sL1RpbWVSYW5nZXMuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4uMWExZGQ3YiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3Jl
L1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2ICszNzY2MSwxNCBAQAog
CQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1s
XEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJ
CTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZl
UGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxl
Pg0KQEAgLTM3Njg5LDYgKzM3Njk3LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8Rmls
ZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5jcHAiDQorCQkJCT4N
CisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6
ZU9wdGlvbnMuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGh0bWxcU3RlcFJhbmdlLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0z
ODQ5Niw2ICszODUxMiwxMyBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0Zp
bGU+DQogCQkJCTxGaWxlDQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3Vz
dG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCINCisJCQkJCT4NCisJCQkJPC9GaWxl
Pg0KKwkJCQk8RmlsZQ0KKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0N1c3Rv
bUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQkJPg0KKwkJCQk8RmlsZQ0KIAkJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2su
Y3BwIg0KIAkJCQkJPg0KIAkJCQk8L0ZpbGU+DQpAQCAtNDAxMjgsNyArNDAxNTEsOSBAQAogCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCiAJCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNw
cCINCisKIAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQogCQkJCQkJTmFtZT0iRGVi
dWd8V2luMzIiDQpAQCAtNDAzODgsNiArNDA0MTMsNTkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8RmlsZQ0KKworCQkJCQlSZWxhdGl2ZVBhdGg9Ii4u
XGJpbmRpbmdzXGpzXEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAiDQorCQkJCQk+DQorCQkJ
CQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2lu
MzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxU
b29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1l
PSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIN
CisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIN
CisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmln
dXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4z
MiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRv
b2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9
IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJ
CQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJ
CQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPC9GaWxlPg0KKwkJCQk8Rmls
ZQ0KIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uY3BwIg0KIAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMzBiMjlkLi4zYjZiZTRjIDEw
MDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzUwOSw2ICsz
NTA5LDE1IEBACiAJCUIwMTQ5RTdFMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXpl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlF
N0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi87IH07CiAJCUIwMTQ5
RTdGMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0IxMUE0QjIxNTAwMTk2
QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgKi87IH07CiAJCUIwMTQ5RTgwMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuaCAqLzsgfTsKKwkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6
ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi87IH07CisJCUIw
NEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRDMTFB
QjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRFNkJGNjExQzdGMDdF
MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1M
SW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1l
bnRDdXN0b20uY3BwICovOyB9OworCQlCMEE3MTM2NzExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3Rv
bUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTM2ODExQzk2MjI1
MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTM2NDExQzk2MjI1MDAz
QzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IH07CisJCUIw
QTcxMzY5MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MEE3MTM2NTExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwICovOyB9OworCQlCMEE3MTM2QTExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21J
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzY2MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUlt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyB9OworCQlCMEE3MTUxQjExQ0MyNEVFMDAz
QzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9u
cy5jcHAgKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDEx
MTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLzsgfTsKIAkJQjIwMTEx
MDgwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBK
U1NWR0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NW
R1BPRFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5o
ICovOyB9OwpAQCAtODg0NSw2ICs4ODU0LDE1IEBACiAJCUIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3
QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBc3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0
OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFn
ZVJlc2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VS
ZXNpemVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRBMTFB
QjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VF
bGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjBBNzEzNjQxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBB
NzEzNjUxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA2MEFCNzc0MDUw
MERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0FFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMTEy
N0E1MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BPRFR5cGVXcmFwcGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xMzY5OSw2ICsxMzcxNyw4IEBACiAJCQkJQTc3OTc5MTMwRDZC
OUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5MTQwRDZCOUQwQzAw
Mzg1MUI5IC8qIEltYWdlRGF0YS5oICovLAogCQkJCUE3Nzk3OTE1MEQ2QjlEMEMwMDM4NTFCOSAv
KiBJbWFnZURhdGEuaWRsICovLAorCQkJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdC
IC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCUIwMTQ5RTdCMTFBNEIy
MTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5RTdDMTFB
NEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2RkEyNDEx
QUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLApAQCAtMTM3MDksNiArMTM3
MjksOCBAQAogCQkJCUU0NDYxMzlDMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9yLmlkbCAq
LywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIuY3BwICov
LAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5oICovLAor
CQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLywKKwkJ
CQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovLAogCQkJCUE1
QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuY3BwICovLAogCQkJCUE1QUZCMzRF
MTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAqLywKIAkJCQlCQ0VGNDVFODBFNjg3NzY3
MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAgLTE1NTEzLDYgKzE1NTM1LDcgQEAKIAkJ
CQlCQzJFRDdBNDBDNkMwRjM2MDA5MjBCRkYgLyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCAqLywKIAkJCQlCQ0Q0MUFCQTBDMDYwREU4MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVt
ZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzJFRDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1M
SUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgKi8sCisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMw
IC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkND
NzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVD
QTMwQzA3ODFCQjAwQ0QyMEYwIC8qIEpTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAog
CQkJCTQ0OEFEMjdBMEE0ODEzNzkwMDIzRDE3OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1
c3RvbS5jcHAgKi8sCkBAIC0xNTgwNyw2ICsxNTgzMCwxMCBAQAogCQkJY2hpbGRyZW4gPSAoCiAJ
CQkJMTQ0OUUyODYxMDdENERCNDAwQjU3OTNGIC8qIEpTQ2FsbGJhY2tEYXRhLmNwcCAqLywKIAkJ
CQkxNDQ5RTI0QTEwN0Q0QTg0MDBCNTc5M0YgLyogSlNDYWxsYmFja0RhdGEuaCAqLywKKwkJCQlC
MEE3MTM2MzExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmNwcCAqLywKKwkJCQlCMEE3MTM2NDExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzEzNjUxMUM5NjIyNTAwM0MzMzcz
IC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLywKKwkJCQlCMEE3
MTM2NjExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaCAqLywKIAkJCQlGRTgwRDdBMjBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlv
bkNhbGxiYWNrLmNwcCAqLywKIAkJCQlGRTgwRDdBMzBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0
b21Qb3NpdGlvbkNhbGxiYWNrLmggKi8sCiAJCQkJRkU4MEQ3QTQwRTlDMUVEMjAwMEQ2Rjc1IC8q
IEpTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCAqLywKQEAgLTE4MTE5LDYgKzE4MTQ2
LDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNFQkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgyNTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VP
YnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1
MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovLAogCQkJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJl
YWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFn
ZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8q
IEltYWdlU291cmNlQ0cuaCBpbiBIZWFkZXJzICovLApAQCAtMTgyMTUsNiArMTgyNDQsOCBAQAog
CQkJCUJDNjg2QzdEMEUwQzMzMDEwMERFOEEwOCAvKiBKU0NTU1ZhcmlhYmxlc0RlY2xhcmF0aW9u
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzY4NkM3RjBFMEMzMzAxMDBERThBMDggLyogSlNDU1NW
YXJpYWJsZXNSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDc3OEI4MDExNUE1ODFBMDBCNUQz
NzIgLyogSlNDdXN0b21FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzEzNjgxMUM5NjIy
NTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQjBBNzEzNkExMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTgwRDdBODBFOUMxRUQy
MDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlvbkNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlGRTgwRDdBQTBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlvbkVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAogCQkJCTFBMzQxN0M5MENFQ0ZGMjUwMDQ5Q0JERSAvKiBKU0N1
c3RvbVZvaWRDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCkBAIC0xODg4NSw2ICsxODkxNiw3IEBA
CiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2QzJGMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGMjExQzZG
MEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0Rjcx
NDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIwNTQzLDYgKzIwNTc1LDggQEAKIAkJCQlCQzY4NkM3QzBFMEMz
MzAxMDBERThBMDggLyogSlNDU1NWYXJpYWJsZXNEZWNsYXJhdGlvbi5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlCQzY4NkM3RTBFMEMzMzAxMDBERThBMDggLyogSlNDU1NWYXJpYWJsZXNSdWxlLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUU0Nzc4QjdGMTE1QTU4MUEwMEI1RDM3MiAvKiBKU0N1c3Rv
bUV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxMzY3MTFDOTYyMjUwMDNDMzM3MyAv
KiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkJQjBBNzEzNjkxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEN0E3MEU5QzFFRDIwMDBENkY3
NSAvKiBKU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkU4
MEQ3QTkwRTlDMUVEMjAwMEQ2Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTUxRUM5MjY1MENFOTBERDQwMEY5MDMwOCAvKiBKU0N1c3Rv
bVNRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMDY1NCw2
ICsyMDY4OCw3IEBACiAJCQkJQkM0OTE4QzgwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFt
ZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyRUQ2NTAwQzZCQzQ4QzAwOTIwQkZG
IC8qIEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFF
MkFBOTcwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3RTk4MEExQTgzRTMwMDdGQjhDNSAv
KiBKU0hUTUxJbnB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNDNDM4NzgwRTg4
NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkxQUUyQUE5OTBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSXNJbmRleEVsZW1lbnQu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMTI1OSw2ICsyMTI5NCw3IEBACiAJCQkJQTg5Q0NDNTIw
RjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTkzMzA5RTA5MDk5RTY0OTIwMDU2RTU4MSAvKiBSZXBsYWNlU2VsZWN0aW9u
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0IxNkMyRTA5NzlDM0JEMDA0Njc3NDEg
LyogUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMz
NzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzRGNzEzRTBENUE2
RjI4MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NTE0Qzc2NTAwQ0U5MjM0RTAwN0VGM0NEIC8qIFJlc291cmNlRXJyb3JNYWMubW0gaW4gU291cmNl
cyAqLywKIAkJCQk1MTRDNzY3ODBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9t
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3Vz
dG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uY2M5YzkwYQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcApAQCAtMCwwICsxLDY5IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUK
KyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBP
V05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
CisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oIgorCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlICJGcmFt
ZS5oIgorI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKworI2luY2x1ZGUgPHJ1bnRpbWUv
SlNMb2NrLmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9S
ZWZQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCit1c2luZyBuYW1lc3BhY2UgSlNDOwor
CitKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayhKU09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCisgICAgOiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKGdsb2JhbE9iamVjdC0+
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICwgbV9kYXRhKGNhbGxiYWNrLCBnbG9iYWxP
YmplY3QpCit7Cit9CisKK3ZvaWQgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpo
YW5kbGVFdmVudChjb25zdCBTdHJpbmcmIGVycm9yKQoreworICAgIGlmICghc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBSZWZQdHI8SlNDdXN0b21JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBwcm90ZWN0KHRoaXMpOworCisgICAgSlNDOjpKU0xvY2sg
bG9jayhTaWxlbmNlQXNzZXJ0aW9uc09ubHkpOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9IG1fZGF0
YS5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpOworICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVy
IGFyZ3M7CisgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgZXJyb3IpKTsKKyAgICBtX2Rh
dGEuaW52b2tlQ2FsbGJhY2soYXJncyk7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGExMTkyMwotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSlND
dXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSlNDdXN0b21JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrX2gKKworI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCIKKyNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5oIgorCisjaW5jbHVkZSA8d3RmL0Zvcndh
cmQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgSlNET01H
bG9iYWxPYmplY3Q7CisKK2NsYXNzIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6
IHB1YmxpYyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
UGFzc1JlZlB0cjxKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0ZShKU0M6
OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAg
ICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrKGNhbGxiYWNrLCBnbG9iYWxPYmplY3QpKTsKKyAgICB9CisKKyAgICB2aXJ0dWFs
IHZvaWQgaGFuZGxlRXZlbnQoY29uc3QgU3RyaW5nJik7CisKK3ByaXZhdGU6CisgICAgSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKEpTQzo6SlNPYmplY3QqIGNhbGxiYWNrLCBKU0RP
TUdsb2JhbE9iamVjdCopOworCisgICAgSlNDYWxsYmFja0RhdGEgbV9kYXRhOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3Rv
bUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uYjY1OTVmYgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwCkBAIC0wLDAgKzEsNzAg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAq
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suaCIKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSAi
QmxvYi5oIgorI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVkZSAiSlNCbG9iLmgiCisjaW5jbHVk
ZSAiU2NyaXB0Q29udHJvbGxlci5oIgorCisjaW5jbHVkZSA8cnVudGltZS9KU0xvY2suaD4KKyNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordXNpbmcgbmFt
ZXNwYWNlIEpTQzsKKworSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OkpTQ3Vz
dG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKEpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01H
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAgICA6IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjayhnbG9iYWxPYmplY3QtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKKyAgICAsIG1fZGF0
YShjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KQoreworfQorCit2b2lkIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrOjpoYW5kbGVFdmVudChCbG9iKiBibG9iKQoreworICAgIGlmICgh
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBSZWZQdHI8
SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHByb3RlY3QodGhpcyk7CisKKyAg
ICBKU0M6OkpTTG9jayBsb2NrKFNpbGVuY2VBc3NlcnRpb25zT25seSk7CisgICAgRXhlY1N0YXRl
KiBleGVjID0gbV9kYXRhLmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCk7CisgICAgTWFya2Vk
QXJndW1lbnRCdWZmZXIgYXJnczsKKyAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIGRlcHJlY2F0
ZWRHbG9iYWxPYmplY3RGb3JQcm90b3R5cGUoZXhlYyksIGJsb2IpKTsKKyAgICBtX2RhdGEuaW52
b2tlQ2FsbGJhY2soYXJncyk7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJ
WkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5oIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmVhNGE3YjYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9t
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSlND
dXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorI2RlZmluZSBKU0N1c3RvbUltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5oIgorCisjaW5jbHVkZSA8d3Rm
L0ZvcndhcmQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3Mg
SlNET01HbG9iYWxPYmplY3Q7CisKK2NsYXNzIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrIDogcHVibGljIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CitwdWJsaWM6Cisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+
IGNyZWF0ZShKU0M6OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soY2FsbGJhY2ssIGdsb2JhbE9iamVjdCkpOworICAgIH0K
KworICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVFdmVudChCbG9iKik7CisKK3ByaXZhdGU6CisgICAg
SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soSlNDOjpKU09iamVjdCogY2FsbGJh
Y2ssIEpTRE9NR2xvYmFsT2JqZWN0Kik7CisKKyAgICBKU0NhbGxiYWNrRGF0YSBtX2RhdGE7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElt
YWdlRWxlbWVudEN1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
MGZjMWE3YgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1h
Z2VFbGVtZW50Q3VzdG9tLmNwcApAQCAtMCwwICsxLDE2NCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisg
KiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2Yg
aXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJKU0hUTUxJbWFnZUVsZW1lbnQu
aCIKKworI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUgIkhUTUxJbWFnZUVsZW1lbnQu
aCIKKyNpbmNsdWRlICJKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNs
dWRlICJKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1ZGUgIlJl
c2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNGdW5jdGlvbi5oPgorI2luY2x1
ZGUgPHJ1bnRpbWUvSlNTdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+CisjaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK3VzaW5nIG5h
bWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U1ZhbHVlIHZhbHVlKQoreworICAgIGlmICghdmFsdWUuaW5oZXJpdHMoJkpTRnVuY3Rpb246Omlu
Zm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBUWVBFX01JU01BVENIX0VSUik7
CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTT2JqZWN0KiBvYmplY3QgPSBhc09i
amVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrOjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0
cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSB2YWx1ZSkKK3sKKyAgICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZp
bmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1Vu
ZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghdmFsdWUuaW5o
ZXJpdHMoJkpTRnVuY3Rpb246OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVj
LCBUWVBFX01JU01BVENIX0VSUik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpT
T2JqZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30K
Kworc3RhdGljIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlUmVzaXplT3B0aW9ucyhF
eGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+IHJlc2l6ZU9wdGlvbnMgPSBSZXNpemVPcHRpb25zOjpjcmVhdGUoKTsKKworICAgIC8vIEFy
Z3VtZW50IGlzIG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxs
IGlzIGFsbG93ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAgICAg
ICAgLy8gVXNlIGRlZmF1bHQgb3B0aW9ucy4KKyAgICAgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMu
cmVsZWFzZSgpOworICAgIH0KKyAgICBKU09iamVjdCogb2JqZWN0ID0gdmFsdWUudG9PYmplY3Qo
ZXhlYyk7CisKKyAgICBKU1ZhbHVlIHdpZHRoID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmll
cihleGVjLCAid2lkdGgiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4gMDsKKyAgICBpZiAoIXdpZHRoLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVz
aXplT3B0aW9ucy0+c2V0V2lkdGgod2lkdGgudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChl
eGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAg
IEpTVmFsdWUgaGVpZ2h0ID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiaGVp
Z2h0IikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKCFoZWlnaHQuaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25z
LT5zZXRIZWlnaHQoaGVpZ2h0LnRvRmxvYXQoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFk
RXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVl
IGNvbXByZXNzaW9uTGV2ZWwgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJj
b21wcmVzc2lvbkxldmVsIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIDA7CisgICAgaWYgKCFjb21wcmVzc2lvbkxldmVsLmlzVW5kZWZpbmVkKCkpIHsK
KyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0Q29tcHJlc3Npb25MZXZlbChjb21wcmVzc2lvbkxl
dmVsLnRvRmxvYXQoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIHByZXNlcnZlQXNwZWN0
UmF0aW8gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJwcmVzZXJ2ZUFzcGVj
dFJhdGlvIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
IDA7CisgICAgaWYgKCFwcmVzZXJ2ZUFzcGVjdFJhdGlvLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAg
ICAgcmVzaXplT3B0aW9ucy0+c2V0QXNwZWN0UmF0aW9PcHRpb24ocHJlc2VydmVBc3BlY3RSYXRp
by50b0Jvb2xlYW4oZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIG9yaWVudGF0aW9uID0g
b2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAib3JpZW50YXRpb24iKSk7CisgICAg
aWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIW9y
aWVudGF0aW9uLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0T3Jp
ZW50YXRpb25PcHRpb24odXN0cmluZ1RvU3RyaW5nKG9yaWVudGF0aW9uLnRvU3RyaW5nKGV4ZWMp
KSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biAwOworICAgIH0KKworICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsKK30KKwor
SlNWYWx1ZSBKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtpdEdldEltYWdlKEV4ZWNTdGF0ZSogZXhl
YykKK3sKKyAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKKworICAgIGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUgPSB1c3RyaW5nVG9TdHJpbmcoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykp
OworCisgICAgUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxi
YWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKGV4ZWMsIHN0YXRpY19jYXN0
PEpTRE9NR2xvYmFsT2JqZWN0Kj4oZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwgZXhlYy0+
YXJndW1lbnQoMSkpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgQVNTRVJUKHN1Y2Nlc3NDYWxsYmFjayk7CisKKyAgICBS
ZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IGNyZWF0ZUlt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmpl
Y3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgyKSk7Cisg
ICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKKworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zID0gY3JlYXRlUmVz
aXplT3B0aW9ucyhleGVjLCBleGVjLT5hcmd1bWVudCgzKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQocmVz
aXplT3B0aW9ucyk7CisKKyAgICBIVE1MSW1hZ2VFbGVtZW50KiBpbXAgPSBzdGF0aWNfY2FzdDxI
VE1MSW1hZ2VFbGVtZW50Kj4oaW1wbCgpKTsKKyAgICBpbXAtPndlYmtpdEdldEltYWdlKG1pbWVU
eXBlLCBzdWNjZXNzQ2FsbGJhY2sucmVsZWFzZSgpLCBlcnJvckNhbGxiYWNrLnJlbGVhc2UoKSwg
cmVzaXplT3B0aW9ucy5yZWxlYXNlKCksIGVjKTsKKyAgICBzZXRET01FeGNlcHRpb24oZXhlYywg
ZWMpOworICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJl
c2l6ZXIuY3BwCmluZGV4IDRiYjc0YzkuLmZkMmVjMWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRt
bC9Bc3luY0ltYWdlUmVzaXplci5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNp
emVyLmNwcApAQCAtMzQsMjggKzM0LDMxIEBACiAjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIu
aCIKIAogI2luY2x1ZGUgIkNhY2hlZEltYWdlLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgog
I2luY2x1ZGUgIkltYWdlUmVzaXplclRocmVhZC5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMu
aCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gQXN5bmNJ
bWFnZVJlc2l6ZXI6OmNyZWF0ZShDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUg
b3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2Fs
bGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJh
dGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlv
bk9wdGlvbikKK3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KENhY2hlZEltYWdlKiBjYWNo
ZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVz
aXplT3B0aW9ucykKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEFzeW5jSW1hZ2VSZXNpemVy
KGNhY2hlZEltYWdlLCBvdXRwdXRUeXBlLCBkZXNpcmVkQm91bmRzLCBzdWNjZXNzQ2FsbGJhY2ss
IGVycm9yQ2FsbGJhY2ssIHF1YWxpdHksIGFzcGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9w
dGlvbikpOworICAgICBuZXcgQXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5
cGUsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcmVzaXplT3B0aW9ucyk7CiB9CiAK
LUFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSogY2FjaGVk
SW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3Jp
cHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0
IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlv
bk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK0FzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdl
UmVzaXplcihDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNz
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMpCiAgICAgOiBtX2NhY2hlZEltYWdl
KGNhY2hlZEltYWdlKQorICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5cGUpCiAgICAgLCBtX3N1
Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJy
b3JDYWxsYmFjaykKLSAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQotICAgICwgbV9kZXNp
cmVkQm91bmRzKGRlc2lyZWRCb3VuZHMpCi0gICAgLCBtX3F1YWxpdHkocXVhbGl0eSkKLSAgICAs
IG1fYXNwZWN0UmF0aW9PcHRpb24oYXNwZWN0UmF0aW9PcHRpb24pCi0gICAgLCBtX29yaWVudGF0
aW9uT3B0aW9uKG9yaWVudGF0aW9uT3B0aW9uKQorICAgICwgbV9yZXNpemVPcHRpb25zKHJlc2l6
ZU9wdGlvbnMpCiB7Ci0gICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmlzT2JqZWN0KCkpOwor
ICAgIC8vIG1fY2FsbGJhY2sgY29udHJvbHMgdGhlIGxpZmV0aW1lIG9mIEFzeW5jSW1hZ2VSZXNp
emVyLgorICAgIG1fY2FsbGJhY2tJbmZvID0gbmV3IENhbGxiYWNrSW5mbyh0aGlzKTsKKyAgICBB
U1NFUlQobV9zdWNjZXNzQ2FsbGJhY2suZ2V0KCkpOwogICAgIG1fY2FjaGVkSW1hZ2UtPmFkZENs
aWVudCh0aGlzKTsKIH0KIApAQCAtNjcsMTEgKzcwLDIxIEBAIHZvaWQgQXN5bmNJbWFnZVJlc2l6
ZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKIHsKICAg
ICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEgPSBjYWNoZWRSZXNvdXJjZS0+ZGF0YSgp
LT5jb3B5KCk7CiAgICAgY2FjaGVkUmVzb3VyY2UtPnJlbW92ZUNsaWVudCh0aGlzKTsKLSAgICBD
YWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7Ci0gICAg
aWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgY2FsbGJhY2tJbmZvLCBt
X291dHB1dFR5cGUsIG1fZGVzaXJlZEJvdW5kcywgbV9xdWFsaXR5LCBtX2FzcGVjdFJhdGlvT3B0
aW9uLCBtX29yaWVudGF0aW9uT3B0aW9uKSkKKyAgICBpZiAoIUltYWdlUmVzaXplclRocmVhZDo6
c3RhcnQoaW1hZ2VEYXRhLCBtX2NhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBJbnRTaXplKG1f
cmVzaXplT3B0aW9ucy0+d2lkdGgoKSwgbV9yZXNpemVPcHRpb25zLT5oZWlnaHQoKSksIG1fcmVz
aXplT3B0aW9ucy0+Y29tcHJlc3Npb25MZXZlbCgpLCBtX3Jlc2l6ZU9wdGlvbnMtPmFzcGVjdFJh
dGlvT3B0aW9uKCksIG1fcmVzaXplT3B0aW9ucy0+b3JpZW50YXRpb25PcHRpb24oKSkpCiAgICAg
ICAgIHJlc2l6ZUVycm9yKCk7CiB9CiAKK3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUNv
bXBsZXRlKFJlZlB0cjxCbG9iPiBibG9iKQoreworICAgIG1fc3VjY2Vzc0NhbGxiYWNrLT5oYW5k
bGVFdmVudChibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXpl
RXJyb3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJy
b3JDYWxsYmFjay0+aGFuZGxlRXZlbnQoIlVuZXhwZWN0ZWQgZXJyb3Igd2hpbGUgcmVzaXppbmcg
aW1hZ2UiKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxF
KElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuaCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oCmluZGV4IDNlZWVlYWQuLmI0
MmVhYmYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oCisrKyBi
L1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oCkBAIC00MCw3ICs0MCwxMSBAQAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDYWNoZWRJbWFnZTsKK2NsYXNzIEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2s7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CiBjbGFz
cyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CitjbGFzcyBSZXNpemVPcHRpb25zOworCiAKIC8vIEFzeW5j
SW1hZ2VSZXNpemVyIHdhaXRzIGZvciB0aGUgQ2FjaGVkSW1hZ2UgdGhhdCBpcyBwYXNzZWQgaW4g
dG8gbG9hZCBjb21wbGV0ZWx5LAogLy8gdGhlbiBzdGFydHMgYW4gSW1hZ2VSZXNpemVyVGhyZWFk
IHRvIHJlc2l6ZSB0aGUgaW1hZ2UuIE9uY2UgY3JlYXRlZCwgSW1hZ2VSZXNpemVyVGhyZWFkCkBA
IC00OCwxNiArNTIsMTYgQEAgY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkOwogLy8gb2NjdXIsIGJv
dGggb2JqZWN0cyBhcmUgZGVzdHJveWVkLiBJZiB0aGUgZG9jdW1lbnQgaXMgZGVzdHJveWVkIGR1
cmluZyByZXNpemluZywKIC8vIEFzeW5jSW1hZ2VSZXNpemVyIHdpbGwgcmVjZWl2ZSBhIG5vdGlm
aWNhdGlvbiBhbmQgc3Vic2VxdWVudGx5IGJsb2NrIHRoZSBjYWxsYmFja3MgZnJvbQogLy8gb2Nj
dXJyaW5nLgotY2xhc3MgQXN5bmNJbWFnZVJlc2l6ZXIgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VD
bGllbnQsIHB1YmxpYyBSZWZDb3VudGVkPEFzeW5jSW1hZ2VSZXNpemVyPiB7CitjbGFzcyBBc3lu
Y0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCB7CiBwdWJsaWM6CiAg
ICAgc3RydWN0IENhbGxiYWNrSW5mbyB7Ci0gICAgICAgIENhbGxiYWNrSW5mbyhQYXNzUmVmUHRy
PEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcikKKyAgICAgICAgQ2FsbGJhY2tJ
bmZvKFBhc3NPd25QdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQogICAg
ICAgICAgICAgOiBhc3luY0ltYWdlUmVzaXplcihhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAg
ICAgICwgYmxvYigwKQogICAgICAgICB7CiAgICAgICAgIH0KIAotICAgICAgICBSZWZQdHI8QXN5
bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyOworICAgICAgICBPd25QdHI8QXN5bmNJ
bWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyOwogICAgICAgICBSZWZQdHI8QmxvYj4gYmxv
YjsKICAgICB9OwogICAgIApAQCAtNjYsMzggKzcwLDIyIEBAIHB1YmxpYzoKICAgICAgICAgUE5H
CiAgICAgfTsKIAotICAgIGVudW0gQXNwZWN0UmF0aW9PcHRpb24gewotICAgICAgICBQcmVzZXJ2
ZUFzcGVjdFJhdGlvLAotICAgICAgICBJZ25vcmVBc3BlY3RSYXRpbwotICAgIH07Ci0KLSAgICBl
bnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKLSAgICAgICAgQ29ycmVjdE9yaWVudGF0aW9uLAotICAg
ICAgICBJZ25vcmVPcmllbnRhdGlvbgotICAgIH07Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxB
c3luY0ltYWdlUmVzaXplcj4gY3JlYXRlKENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6
ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVl
IGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRh
dGlvbk9wdGlvbik7CisgICAgc3RhdGljIHZvaWQgc3RhcnQoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRU
eXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwog
ICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlk
ZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFu
Z2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9i
PikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXpl
RXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCBy
ZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAog
cHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUs
IEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3Jp
cHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwg
T3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiwg
T3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+KTsKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsK
LQotICAgIENhY2hlZEltYWdlKiBtX2NhY2hlZEltYWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3Vj
Y2Vzc0NhbGxiYWNrOwotICAgIFNjcmlwdFZhbHVlIG1fZXJyb3JDYWxsYmFjazsKICAgICAKLSAg
ICAvLyBQYXJhbWV0ZXJzIHRvIHBhc3MgaW50byBJbWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2Fj
aGVkSW1hZ2UqIG1fY2FjaGVkSW1hZ2U7CisgICAgQ2FsbGJhY2tJbmZvKiBtX2NhbGxiYWNrSW5m
bzsKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKLSAgICBJbnRTaXplIG1fZGVzaXJlZEJv
dW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3Bl
Y3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9u
OworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IG1fc3VjY2Vzc0NhbGxi
YWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJh
Y2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IG1fcmVzaXplT3B0aW9uczsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcAppbmRleCA1ZDU5
MjNkLi42NTRiNzAzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5j
cHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCkBAIC0zMiw5ICszMiwx
NyBAQAogI2luY2x1ZGUgIkhUTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVu
dC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkltYWdlLmgiCisjaW5jbHVk
ZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oIgogI2luY2x1ZGUgIlJlbmRlckltYWdlLmgiCisjaW5jbHVkZSAiUmVz
aXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNjcmlwdEV2ZW50TGlzdGVuZXIuaCIKIAorI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCisjZW5k
aWYKKwogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDUx
LDQgKzQ1OSwzNCBAQCB2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRv
Y3VtZW50KCkKICAgICBIVE1MRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsK
IH0KIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCit2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6
OndlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJl
c2l6ZU9wdGlvbnMsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmICghc3JjKCkuaXNWYWxp
ZCgpKSB7CisgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICAvLyBUaGUgdGFpbnRzQ2FudmFzIG1ldGhvZCBhbHNvIGFsbG93cyBkYXRh
IFVSTHMuCisgICAgaWYgKGRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPnRhaW50c0NhbnZh
cyhzcmMoKSkpIHsKKyAgICAgICAgZWMgPSBTRUNVUklUWV9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlOwor
ICAgIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2UvanBlZyIpCisgICAgICAgIG91dHB1dFR5cGUgPSBB
c3luY0ltYWdlUmVzaXplcjo6SlBFRzsKKyAgICBlbHNlIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2Uv
cG5nIikKKyAgICAgICAgb3V0cHV0VHlwZSA9IEFzeW5jSW1hZ2VSZXNpemVyOjpQTkc7CisgICAg
ZWxzZSB7CisgICAgICAgIGVjID0gTk9UX1NVUFBPUlRFRF9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQobV9pbWFnZUxvYWRlci5pbWFn
ZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9w
dGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBI
VE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CitjbGFz
cyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsKIAogY2xh
c3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJpZW5kIGNs
YXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAogICAgIGJv
b2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRlci5oYXZl
RmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyAgICB2
b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+
LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNlbmRpZgor
CiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwg
RG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50
LmlkbAppbmRleCAwZmM3MjcxLi41ZGEzNTMwIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRs
CkBAIC00OSw2ICs0OSwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgYWx0RGlzcGxheVN0cmluZzsKICAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIFVSTCBhYnNvbHV0ZUltYWdlVVJMOwogI2VuZGlmCisKKyNpZiBkZWZpbmVkKEVOQUJMRV9J
TUFHRV9SRVNJWkVSKSAmJiBFTkFCTEVfSU1BR0VfUkVTSVpFUgorI2lmIGRlZmluZWQoTEFOR1VB
R0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVAorICAgICAgICAvLyBGdW5jdGlv
bnMKKyAgICAgICAgW0N1c3RvbV0gdm9pZCB3ZWJraXRHZXRJbWFnZShpbiBET01TdHJpbmcgbWlt
ZVR5cGUsIGluIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtP
cHRpb25hbF0gaW4gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBlcnJvckNhbGxiYWNrLCBbT3B0
aW9uYWxdIGluIFJlc2l6ZU9wdGlvbnMgb3B0aW9ucykKKyAgICAgICAgICAgIHJhaXNlcyhET01F
eGNlcHRpb24pOworI2VuZGlmCisjZW5kaWYKICAgICB9OwogCiB9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4xYTEwZGQ1Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaApAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEw
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAq
IE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAq
IGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAq
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFC
TEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBY3RpdmVET01PYmplY3QuaCIKKworI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2s+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK3B1YmxpYzoKKyAgICBJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIDogQWN0aXZlRE9N
T2JqZWN0KGNvbnRleHQsIHRoaXMpIHsgfQorICAgIHZpcnR1YWwgfkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlRXZlbnQoY29uc3QgU3RyaW5n
JikgPSAwOworfTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNl
bmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li43YTc5ZTVkCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
ICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50
ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2Fs
bGJhY2sKKyAgICBdIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgeworICAgICAgICBbQ3VzdG9t
XSBib29sZWFuIGhhbmRsZUV2ZW50KGluIERPTVN0cmluZyBlcnJvcik7CisgICAgfTsKK30KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBiL1dl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5mODlmNDM0Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9o
dG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisjZGVmaW5lIEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBY3Rp
dmVET01PYmplY3QuaCIKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7
CitjbGFzcyBTdHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayA6IHB1
YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIHB1YmxpYyBBY3Rp
dmVET01PYmplY3QgeworcHVibGljOgorICAgIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KSA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0
LCB0aGlzKSB7IH0KKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soKSB7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlRXZlbnQoQmxvYiopID0gMDsKK307CisKK30KKwor
I2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0YmMxNGYKLS0tIC9k
ZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJl
CisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhl
IG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
CisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAq
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworbW9kdWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFjZSBbCisgICAg
ICAgIENvbmRpdGlvbmFsPUlNQUdFX1JFU0laRVIsCisgICAgICAgIENhbGxiYWNrCisgICAgXSBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgeworICAgICAgICBbQ3VzdG9tXSBib29sZWFuIGhh
bmRsZUV2ZW50KGluIEJsb2IgYmxvYik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAKaW5kZXggMWJhZTZhMC4uY2Q5OWRjYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclRocmVhZC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJCaXRtYXBJbWFnZS5oIgogI2lu
Y2x1ZGUgIkltYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKICNpbmNsdWRlIDx1
dGlsaXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MCw3ICs1MSw3IEBAIHN0YXRpYyB2
b2lkIHJldHVybkJsb2JPckVycm9yKHZvaWQqIGNhbGxiYWNrSW5mb3JtYXRpb24pCiAgICAgZGVs
ZXRlIGNhbGxiYWNrSW5mbzsKIH0KIAotYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK2Jvb2wgSW1hZ2VS
ZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9P
cHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9u
KQogewogICAgIEltYWdlUmVzaXplclRocmVhZCogaW1hZ2VSZXNpemVyVGhyZWFkID0gbmV3IElt
YWdlUmVzaXplclRocmVhZChjYWxsYmFja0luZm8sIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMs
IHF1YWxpdHksIGFzcGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9wdGlvbik7CiAKQEAgLTYy
LDcgKzYzLDcgQEAgYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXMKICAgICByZXR1cm4gaW1hZ2VSZXNp
emVyVGhyZWFkLT5tX3RocmVhZElEOwogfQogCi1JbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVz
aXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8s
IEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJl
ZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0
aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRp
b24gb3JpZW50YXRpb25PcHRpb24pCitJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRo
cmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5j
SW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5k
cywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9u
T3B0aW9uKQogICAgIDogbV90aHJlYWRJRCgwKQogICAgICwgbV9jYWxsYmFja0luZm8oY2FsbGJh
Y2tJbmZvKQogICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5cGUpCmRpZmYgLS1naXQgYS9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmgKaW5kZXggYWU1YWRlNS4uNjEwMGI1NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclRocmVhZC5oCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJl
YWQuaApAQCAtMzQsNiArMzQsNyBAQAogI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQogCiAjaW5j
bHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMTEgKzQzLDExIEBAIGNsYXNzIFNoYXJlZEJ1
ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMg
Ym9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdl
UmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIElu
dFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFz
cGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24pOwor
ICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEs
IEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRp
b25zOjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24p
OwogICAgIH5JbWFnZVJlc2l6ZXJUaHJlYWQoKTsKIAogcHJpdmF0ZToKLSAgICBJbWFnZVJlc2l6
ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNp
emVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFz
eW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9y
aWVudGF0aW9uT3B0aW9uKTsKKyAgICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6
ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXpl
IGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlv
T3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7CiAgICAgc3RhdGljIHZv
aWQqIGltYWdlUmVzaXplclRocmVhZFN0YXJ0KHZvaWQqKTsKICAgICB2b2lkKiBpbWFnZVJlc2l6
ZXJUaHJlYWQoKTsKIApAQCAtNTksOCArNjAsOCBAQCBwcml2YXRlOgogICAgIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKICAgICBJbnRTaXplIG1fZGVzaXJlZEJv
dW5kczsKICAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVj
dFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6
Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAgUmVzaXplT3B0aW9u
czo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKKyAgICBSZXNpemVPcHRp
b25zOjpPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMu
Y3BwIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmQyMmNhMTAKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwv
UmVzaXplT3B0aW9ucy5jcHAKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
CisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
ZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCisKKyNp
bmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKy8vIElu
Y2x1c2l2ZSBsaW1pdHM7CitzdGF0aWMgY29uc3QgaW50IGRpbWVuc2lvbnNMb3dlckxpbWl0ID0g
MTsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9uc1VwcGVyTGltaXQgPSAzMjc2NzsKK3N0YXRp
YyBjb25zdCBmbG9hdCBjb21wcmVzc2lvbkxvd2VyTGltaXQgPSAwLjBmOworc3RhdGljIGNvbnN0
IGZsb2F0IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA9IDEuMGY7CisKK3N0YXRpYyBjb25zdCBmbG9h
dCBkZWZhdWx0Q29tcHJlc3Npb24gPSAwLjg1ZjsKKworUGFzc1JlZlB0cjxSZXNpemVPcHRpb25z
PiBSZXNpemVPcHRpb25zOjpjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgUmVzaXplT3B0
aW9ucygpKTsgfQorCitSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKCkKKwk6IG1fd2lkdGgo
KQorCSwgbV9oZWlnaHQoKQorCSwgbV9jb21wcmVzc2lvbkxldmVsKCkKKwksIG1fYXNwZWN0UmF0
aW9PcHRpb24oSWdub3JlQXNwZWN0UmF0aW8pCisJLCBtX29yaWVudGF0aW9uT3B0aW9uKElnbm9y
ZU9yaWVudGF0aW9uKQoreworfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKGludCB3
aWR0aCkgeyBtX3dpZHRoID0gd2lkdGggPj0gZGltZW5zaW9uc0xvd2VyTGltaXQgJiYgd2lkdGgg
PD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyB3aWR0aCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25z
Ojp3aWR0aCgpIHsgcmV0dXJuIG1fd2lkdGg7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRI
ZWlnaHQoaW50IGhlaWdodCkgeyBtX2hlaWdodCA9IGhlaWdodCA+PSBkaW1lbnNpb25zTG93ZXJM
aW1pdCAmJiBoZWlnaHQgPD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyBoZWlnaHQgOiAwOyB9Citp
bnQgUmVzaXplT3B0aW9uczo6aGVpZ2h0KCkgeyByZXR1cm4gbV9oZWlnaHQ7IH0KKwordm9pZCBS
ZXNpemVPcHRpb25zOjpzZXRDb21wcmVzc2lvbkxldmVsKGZsb2F0IGNvbXByZXNzaW9uTGV2ZWwp
IHsgbV9jb21wcmVzc2lvbkxldmVsID0gY29tcHJlc3Npb25MZXZlbCA+PSBjb21wcmVzc2lvbkxv
d2VyTGltaXQgJiYgY29tcHJlc3Npb25MZXZlbCA8PSBjb21wcmVzc2lvblVwcGVyTGltaXQgPyBj
b21wcmVzc2lvbkxldmVsIDogZGVmYXVsdENvbXByZXNzaW9uOyB9CitmbG9hdCBSZXNpemVPcHRp
b25zOjpjb21wcmVzc2lvbkxldmVsKCkgeyByZXR1cm4gbV9jb21wcmVzc2lvbkxldmVsOyB9CisK
K3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0QXNwZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2ZUFz
cGVjdFJhdGlvKSB7IG1fYXNwZWN0UmF0aW9PcHRpb24gPSBwcmVzZXJ2ZUFzcGVjdFJhdGlvID8g
UHJlc2VydmVBc3BlY3RSYXRpbyA6IElnbm9yZUFzcGVjdFJhdGlvOyB9CitSZXNpemVPcHRpb25z
OjpBc3BlY3RSYXRpb09wdGlvbiBSZXNpemVPcHRpb25zOjphc3BlY3RSYXRpb09wdGlvbigpIHsg
cmV0dXJuIG1fYXNwZWN0UmF0aW9PcHRpb247IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRP
cmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50YXRpb25PcHRpb24pIHsgbV9vcmllbnRhdGlv
bk9wdGlvbiA9IG9yaWVudGF0aW9uT3B0aW9uID09ICJhdXRvIiA/IENvcnJlY3RPcmllbnRhdGlv
biA6IElnbm9yZU9yaWVudGF0aW9uOyB9CitSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlv
biBSZXNpemVPcHRpb25zOjpvcmllbnRhdGlvbk9wdGlvbigpIHsgcmV0dXJuIG1fb3JpZW50YXRp
b25PcHRpb247IH0KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5o
IGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi41MzBjYzk1Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL1Jlc2l6
ZU9wdGlvbnMuaApAQCAtMCwwICsxLDg3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBSZXNpemVPcHRpb25zX2gKKyNkZWZp
bmUgUmVzaXplT3B0aW9uc19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBTdHJpbmc7CisKK2NsYXNzIFJlc2l6ZU9wdGlvbnMg
OiBwdWJsaWMgUmVmQ291bnRlZDxSZXNpemVPcHRpb25zPiB7CitwdWJsaWM6CisgICAgZW51bSBB
c3BlY3RSYXRpb09wdGlvbiB7CisgICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCisgICAgICAg
IElnbm9yZUFzcGVjdFJhdGlvCisgICAgfTsKKworICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24g
eworICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24sCisgICAgICAgIElnbm9yZU9yaWVudGF0aW9u
CisgICAgfTsKKworICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZSgp
OworCisgICAgdm9pZCBzZXRXaWR0aChpbnQgd2lkdGgpOworICAgIGludCB3aWR0aCgpOworCisg
ICAgdm9pZCBzZXRIZWlnaHQoaW50IGhlaWdodCk7CisgICAgaW50IGhlaWdodCgpOworCisgICAg
dm9pZCBzZXRDb21wcmVzc2lvbkxldmVsKGZsb2F0IGNvbXByZXNzaW9uTGV2ZWwpOworICAgIGZs
b2F0IGNvbXByZXNzaW9uTGV2ZWwoKTsKKworICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24o
Ym9vbCBwcmVzZXJ2ZUFzcGVjdFJhdGlvKTsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RS
YXRpb09wdGlvbigpOworCisgICAgdm9pZCBzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3Jp
ZW50YXRpb25PcHRpb24pOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9u
KCk7CisKK3ByaXZhdGU6CisgICAgUmVzaXplT3B0aW9ucygpOworCisgICAgLy8gSWYgbV93aWR0
aCBvciBtX2hlaWdodCA9PSAwLCB0aGF0IGRpbWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGlj
aXRseSBkdXJpbmcgcmVzaXppbmcuCisgICAgaW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0
OworICAgIGZsb2F0IG1fY29tcHJlc3Npb25MZXZlbDsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBt
X2FzcGVjdFJhdGlvT3B0aW9uOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25P
cHRpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIFJlc2l6ZU9wdGlvbnNfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59165</attachid>
            <date>2010-06-18 16:05:10 -0700</date>
            <delta_ts>2010-06-21 18:19:13 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>115013</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi44YjRlMWFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzIgQEAKKzIwMTAtMDYt
MTggIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciB0aGUg
ZXhwb3N1cmUgb2YgdGhlIGltYWdlIHJlc2l6ZXIgQVBJIHRvIEpTQywgd2hpY2ggaXMgZnVuY3Rp
b25hbGx5CisgICAgICAgIGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBmYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1z
b3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZDog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFm
dGVyLXVubG9hZC5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Jlc291cmNlcy9oZWxtZXQuanBnOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5v
LXNvdXJjZS5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qczogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvdGVzdC1jYWxsYmFja3MuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
bWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90
ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9taXNj
L3Jlc291cmNlcy9oZWxtZXQuanBnOiBBZGRlZC4KKworMjAxMC0wNi0xOCAgU3RlcmxpbmcgU3dp
Z2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgdGVzdHMgZm9yIEpTQyBleHBvc3VyZSBvZiB0aGUg
ZnVuY3Rpb25hbGx5IGluY29tcGxldGUgaW1hZ2UgcmVzaXplciBBUEkuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAoc2hvdWxkTm90
VGhyb3cpOgorICAgICAgICAodGVzdCk6CisgICAgICAgIChlbXB0eUZ1bmN0aW9uKToKKyAgICAg
ICAgKCk6CisgICAgICAgIChPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbi5wcm90b3R5cGUudmFsdWVP
Zik6CisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qczogQWRkZWQuCisgICAgICAgIChlbXB0
eUZ1bmN0aW9uKToKKyAgICAgICAgKGRvY3VtZW50LmJvZHkub25sb2FkKToKKyAgICAgICAgKiBm
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1j
YWxsYmFjay1hZnRlci11bmxvYWQuanM6IEFkZGVkLgorICAgICAgICAoc3VjY2Vzc0NhbGxiYWNr
KToKKyAgICAgICAgKGVycm9yQ2FsbGJhY2spOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdl
dEltYWdlLmpzOiBBZGRlZC4KKyAgICAgICAgKGltZy53ZWJraXRHZXRJbWFnZSk6CisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMv
dGVzdC1jYWxsYmFja3MuanM6IEFkZGVkLgorICAgICAgICAoc3VjY2Vzc0NhbGxiYWNrKToKKyAg
ICAgICAgKGVycm9yQ2FsbGJhY2spOgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2Fs
bGJhY2tzLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9p
bWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4uaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL3Jlc291
cmNlcy9oZWxtZXQuanBnOiBBZGRlZC4KKwogMjAxMC0wNi0xOCAgSnVzdGluIEdhcmNpYSAgPGp1
c3Rpbi5nYXJjaWFAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE9qYW4gVmFmYWku
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyMTU4YTIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwNyBAQAor
CitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRzIHRvIHRoZSBJbWFnZS53
ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNN
QVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSh1bmRl
ZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlT
TUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5kZWZp
bmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwge30pIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVt
cHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
Tk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIDQyKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmlu
aXR5KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG51bGwpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHt9KSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9i
amVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHRydWUpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVf
TUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVk
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG51bGwpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0
VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogd2lkdGggZ2V0dGVyIGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0MikgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBJbmZpbml0eSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgInN0cmlu
ZyIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dW5kZWZp
bmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxs
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp7fX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6b2JqZWN0VGhyb3dp
bmdFeGNlcHRpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1t
eVByb3BlcnR5OnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5OjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVy
dHk6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eToic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVu
ZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dHJ1
ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2hlaWdodDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp7fX0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7aGVpZ2h0OmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpJbmZpbml0
eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6InN0cmluZyJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVmaW5lZH0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnRydWV9KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOjQyfSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDoic3RyaW5nIn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5k
ZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNw
ZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOjQyfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86LUlu
ZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp7
fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50
YXRpb246ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOklu
ZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUlu
ZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246InN0
cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwt
ZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdl
dEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYjJjNTFjNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMuaHRt
bC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lF
VEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0
LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkNDdlYzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1u
by1zb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCBhbiBp
bWFnZSB3aXRoIG5vIHNvdXJjZSB3aWxsIHRocm93IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2Vw
dGlvbi4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgRXhjZXB0aW9uIHdh
cyBjb3JyZWN0bHkgdGhyb3duOiBFcnJvcjogSU5WQUxJRF9TVEFURV9FUlI6IERPTSBFeGNlcHRp
b24gMTEKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNv
dXJjZS5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNj
NjUyMzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZApA
QCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8u
Li8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxw
IGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxYzA4NWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxi
YWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitUZXN0cyB0
aGF0IHRoZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTIEVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIHdpdGgg
b3V0cHV0OiBVbmV4cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6aW5nIGltYWdlCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxs
YmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0
bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWMzZWQ3Ygot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQKQEAg
LTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBz
cmM9InNjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFn
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jM2NhYWRiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9v
dmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAor
CitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRo
IGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyA0
MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJs
ZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYzk0OWRhZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2st
d2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3Jj
PSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL292ZXJyaWRl
LW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2UvcmVzb3VyY2VzL2hlbG1ldC5qcGcgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVs
bCBhbmQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Jlc291cmNlcy9oZWxtZXQuanBnIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVN
UExBVEUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uMjcxNzBhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBM
QVRFLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRG
Ly9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5q
cGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9IllPVVJfSlNfRklMRV9IRVJFIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQt
dGVzdHMvYXJndW1lbnQtdHlwZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uZTM0MTkxYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpz
CkBAIC0wLDAgKzEsMTQ1IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhlIGFjY2VwdGFibGUgdHlw
ZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0aG9kLiIpOwor
CitmdW5jdGlvbiBzaG91bGROb3RUaHJvdyhleHByZXNzaW9uKSB7CisgIHRyeSB7CisgICAgZXZh
bChleHByZXNzaW9uKTsKKyAgICB0ZXN0UGFzc2VkKGV4cHJlc3Npb24gKyAiIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLiIpOworICB9IGNhdGNoKGUpIHsKKyAgICB0ZXN0RmFpbGVkKGV4cHJlc3Np
b24gKyAiIHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJldyBleGNlcHRpb24gIiArIGUp
OworICB9Cit9CisKK2Z1bmN0aW9uIHRlc3QoZXhwcmVzc2lvbiwgZXhwcmVzc2lvblNob3VsZFRo
cm93LCBleHBlY3RlZEV4Y2VwdGlvbikgeworICAgIGlmIChleHByZXNzaW9uU2hvdWxkVGhyb3cp
IHsKKyAgICAgICAgaWYgKGV4cGVjdGVkRXhjZXB0aW9uKQorICAgICAgICAgICAgc2hvdWxkVGhy
b3coZXhwcmVzc2lvbiwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICInICsgZXhwZWN0ZWRFeGNlcHRp
b24gKyAnIjsgfSkoKTsnKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2hvdWxkVGhyb3co
ZXhwcmVzc2lvbiwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICJFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTciOyB9KSgpOycpOworICAgIH0gZWxzZSB7CisgICAgICAgIHNo
b3VsZE5vdFRocm93KGV4cHJlc3Npb24pOworICAgIH0KK30KKwordmFyIGVtcHR5RnVuY3Rpb24g
PSBmdW5jdGlvbigpIHt9OworCitmdW5jdGlvbiBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpIHt9
OworT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLnZhbHVlT2YgPSBmdW5jdGlvbigp
IHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3ZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit9CitP
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbi5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygid2lkdGgi
LCBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3dpZHRoIGdldHRlciBleGNlcHRp
b24nKTsKK30pOwordmFyIG9iamVjdFRocm93aW5nRXhjZXB0aW9uID0gbmV3IE9iamVjdFRocm93
aW5nRXhjZXB0aW9uKCk7CisKK3ZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVz
dEltYWdlJyk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgpJywgdHJ1ZSk7CisKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UobnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
anBlZyIpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywg
dHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5kZWZpbmVk
KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKScs
IHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdF
eGNlcHRpb24pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9qcGVnIiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pJywgdHJ1ZSwgJ0Vycm9yOiBOT1RfU1VQUE9S
VEVEX0VSUjogRE9NIEV4Y2VwdGlvbiA5Jyk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIHRydWUpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgLUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBudWxsKScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30p
JywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgNDIpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpJywgdHJ1
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
ICJzdHJpbmciKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0VGhy
b3dpbmdFeGNlcHRpb24pJywgdHJ1ZSwgJ0Vycm9yOiB3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdHJ1ZSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwgNDIpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCAtSW5maW5pdHkpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKScsIGZhbHNlKTsKKwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp7fX0pJywgZmFs
c2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtkdW1teVByb3BlcnR5OnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OkluZmluaXR5fSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1
bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHt3aWR0aDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3dpZHRoOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnVu
ZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtoZWlnaHQ6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om9iamVjdFRocm93aW5n
RXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp0
cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Oi1JbmZpbml0eX0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp7fX0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9u
fSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2Nv
bXByZXNzaW9uTGV2ZWw6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0p
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5fSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp7fX0p
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhj
ZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86ZW1wdHlGdW5j
dGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNw
ZWN0UmF0aW86InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRl
ZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjp7fX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnRydWV9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50
YXRpb246SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSknLCBmYWxzZSk7CisK
K3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gZmFsc2U7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2Vk
ID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Njcmlw
dC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjI2ODUzYTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMt
bm8tc291cmNlLmpzCkBAIC0wLDAgKzEsMjAgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IGFu
IGltYWdlIHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhj
ZXB0aW9uLiIpOworCit2YXIgZW1wdHlGdW5jdGlvbiA9IGZ1bmN0aW9uKCkge307CisKK3ZhciBp
bWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7CitpbWcuc3JjID0gbnVs
bDsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgeworCQlkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJykud2Via2l0R2V0SW1hZ2UoImltYWdlL2pw
ZWciLCBlbXB0eUZ1bmN0aW9uKTsKKwkJdGVzdEZhaWxlZCgiU2hvdWxkIGhhdmUgdGhyb3duIGV4
Y2VwdGlvbi4gTm8gZXhjZXB0aW9uIHdhcyB0aHJvd24uLi4iKTsKKwkJZmluaXNoSlNUZXN0KCk7
CisJfSBjYXRjaChlKSB7CisJCXRlc3RQYXNzZWQoIkV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRo
cm93bjogIiArIGUpOworCQlmaW5pc2hKU1Rlc3QoKTsKKwl9Cit9OworCit3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5hODdjZWJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0
ZXItdW5sb2FkLmpzCkBAIC0wLDAgKzEsMTcgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IHRo
ZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuIik7CisKK3ZhciBzdWNjZXNzQ2FsbGJhY2sgPSBm
dW5jdGlvbihibG9iKSB7CisgICAgdGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxsYmFjayB3YXMgaW5j
b3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgZXJyb3JD
YWxsYmFjayA9IGZ1bmN0aW9uKGVycm9yKSB7CisgICAgdGVzdFBhc3NlZCgiRXJyb3IgY2FsbGJh
Y2sgd2FzIGNvcnJlY3RseSBjYWxsZWQgd2l0aCBvdXRwdXQ6ICIgKyBlcnJvcik7CisgICAgZmlu
aXNoSlNUZXN0KCk7Cit9OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3aWxsIGN1cnJl
bnRseSBldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKKword2lu
ZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRy
dWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2Ny
aXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjk3NmNjNjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9v
dmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcwpAQCAtMCwwICsxLDEwIEBACitkZXNjcmlwdGlv
bigiVGhpcyBlbnN1cmVzIHRoYXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRkZW4gd2l0
aCBhbm90aGVyIG1ldGhvZC4iKTsKKwordmFyIGltZyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0ZXN0SW1hZ2UnKTsKK2ltZy53ZWJraXRHZXRJbWFnZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4g
NDI7IH0KK3ZhciByZXN1bHQgPSBpbWcud2Via2l0R2V0SW1hZ2UoKTsKKworc2hvdWxkQmVOb25a
ZXJvKHJlc3VsdCk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gZmFsc2U7Cit3aW5kb3cuc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJh
Y2tzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYmM5NWQ2MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3Qt
Y2FsbGJhY2tzLmpzCkBAIC0wLDAgKzEsMTcgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IHRo
ZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuIik7CisKK3ZhciBzdWNjZXNzQ2FsbGJhY2sgPSBm
dW5jdGlvbigpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNvcnJl
Y3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNhbGxi
YWNrID0gZnVuY3Rpb24oKSB7CisgICAgdGVzdFBhc3NlZCgiRXJyb3IgY2FsbGJhY2sgd2FzIGNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhl
IGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVudGx5IGV2ZXIgYmUgY2FsbGVkIGluIHRoaXMgcGF0
Y2gsIHNvIHRlc3QgdGhhdCBpdCB3b3JrcyBmb3Igbm93Citkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndGVzdEltYWdlJykud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBzdWNjZXNzQ2FsbGJh
Y2ssIGVycm9yQ2FsbGJhY2spOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit3aW5k
b3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZmU1ZGIyMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdv
cmsgY29ycmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJv
ciBjYWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1k
aXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi42N2RmYjhhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1s
LWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQu
anBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90
ZS1vcmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmM0OGVmODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
aW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw1IEBACitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQg
b24gYW4gaW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246
IEVycm9yOiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4uaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJr
aXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uZjgzZWU5MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwt
ZGlzYWJsZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5j
dGlvbiBsb2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBl
bXB0eUNhbGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlv
bigpIHsKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uIik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBl
eGNlcHRpb246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3Rp
ZnlEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJ
bWFnZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90
ZSBvcmlnaW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6
ODAwMC9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIj4KKzxwcmUgaWQ9ImxvZyI+PC9wcmU+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
cmVzb3VyY2VzL2hlbG1ldC5qcGcgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3Vy
Y2VzL2hlbG1ldC5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2Q0ODJh
YQpCaW5hcnkgZmlsZXMgL2Rldi9udWxsIGFuZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlz
Yy9yZXNvdXJjZXMvaGVsbWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGFlYjRiNjguLjAxYzJhNWUg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dApAQCAtMjYyLDYgKzI2Miw4IEBAIFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIGh0
bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsCiAg
ICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbAogICAgIGh0bWwv
TWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAgIGh0bWwvVmFsaWRp
dHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggOTkzYTEyMS4uYzBiNDFiNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMzIgQEAKKzIwMTAtMDYtMTgg
IFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cG9zZWQgdGhlIGltYWdlIHJlc2l6
aW5nIEFQSSB0byBKU0MsIGJ1dCBpdCBpcyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0ZSBhdCB0aGlz
IHN0YWdlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA4NTQKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRlZCBmaWxlcy4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5jcHA6IERpdHRvLgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1h
a2U6IERpdHRvLgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOiBEaXR0by4KKyAgICAgICAgKiBX
ZWJDb3JlLmd5cGk6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUucHJpOiBEaXR0by4KKyAgICAg
ICAgKiBXZWJDb3JlLnBybzogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2o6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajogRGl0dG8uCisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6
CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6Omhh
bmRsZUV2ZW50KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazo6aGFuZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZSk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpjcmVhdGVSZXNpemVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0
YXJ0KTogQ2hhbmdlZCBzbyB0aGF0IGNhbGxlciBkb2VzIG5vIFJlZkNvdW50aW5nIChzZWxmLW93
bmVkKS4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdlUmVz
aXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlm
eUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNp
emVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2ViQ29yZTo6
QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICogaHRtbC9B
c3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vzc2V0aWVz
LgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9uIG9mIEpT
IGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOiBEaXR0by4KKyAg
ICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsOiBKUyBmdW5jdGlvbi4KKyAgICAgICAg
KiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJD
b3JlOjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjazo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6
CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4K
KyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVz
aXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVz
aXplclRocmVhZC5oOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKKzIwMTAtMDYtMTggIFN0ZXJsaW5n
IFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIEpTQyBiaW5kaW5ncyBhbmQgY2FsbGJhY2tz
IGZvciBpbWFnZSByZXNpemVyIEFQSS4gVGhlIEFQSSBpcyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0
ZSwgc28KKyAgICAgICAgdGhlIHN1Y2Nlc3MgY2FsbGJhY2sgaXMgbmV2ZXIgY2FsbGVkLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NTQKKworICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAg
ICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgor
ICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAg
KiBXZWJDb3JlLnBybzoKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OkpT
Q3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1
c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OmhhbmRsZUV2ZW50KToKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OmNyZWF0
ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkpTQ3VzdG9tSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6aGFu
ZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ3VzdG9tSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNI
VE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpjcmVh
dGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRl
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVSZXNp
emVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0
R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZpbmlzaGVkKToKKyAgICAgICAgKFdlYkNvcmU6
OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpB
c3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IpOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFn
ZVJlc2l6ZXIuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAq
IGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxl
bWVudDo6d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5p
ZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgor
ICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazo6SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrOjp+SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2s6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6On5JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2spOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmlkbDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydCk6CisgICAgICAgIChXZWJD
b3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZCk6CisgICAgICAgICog
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDoKKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMu
aDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjopOgorICAgICAgICAo
V2ViQ29yZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Ondp
ZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWlnaHQpOgorICAgICAgICAoV2ViQ29yZTo6
UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVy
eXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5jcHAKaW5kZXggN2FjM2U1MS4uY2U1YzhmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTE4MCw2
ICsxODAsOCBAQAogI2luY2x1ZGUgIkpTSURCUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNJREJT
dWNjZXNzRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTSW1hZ2VEYXRhLmNwcCIKKyNpbmNsdWRlICJK
U0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3Qu
Y3BwIgogI2luY2x1ZGUgIkpTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNL
ZXlib2FyZEV2ZW50LmNwcCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZSBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEw
MDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCkBAIC0yMjMsNiArMjIzLDggQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAg
SURCUmVxdWVzdCBcCiAgICAgSURCU3VjY2Vzc0V2ZW50IFwKICAgICBJbWFnZURhdGEgXAorICAg
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBcCisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayBcCiAgICAgSW5kZXhlZERhdGFiYXNlUmVxdWVzdCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRI
b3N0IFwKICAgICBJbnNwZWN0b3JCYWNrZW5kIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGU3ODU3NDkuLjcwYWEwMjAg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5hbQpAQCAtNDA5LDYgKzQwOSwxMCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNv
cmUvYmluZGluZ3MvanMvSlNDbGlwYm9hcmRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdz
L2pzL0pTQ29uc29sZUN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDb29yZGlu
YXRlc0N1c3RvbS5jcHAgXAorCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKwlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAorCVdlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pT
Q3VzdG9tUG9zaXRpb25DYWxsYmFjay5oIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9t
UG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCBcCkBAIC00NTUsNiArNDU5LDcgQEAgd2ViY29yZV9z
b3VyY2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9t
LmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwK
IAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogCVdl
YkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmggXAogCVdlYkNvcmUv
YmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgXApAQCAtMTI2Nyw2ICsx
MjcyLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3Vy
Y2VEb2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9o
dG1sL0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VS
ZXNpemVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXApAQCAt
MTI3NCw2ICsxMjgxLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvTWVk
aWFFcnJvci5oIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3Jl
L2h0bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3Bw
IFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJh
bmdlLmNwcCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5oIFwKIAlXZWJDb3JlL2h0bWwvVGV4
dE1ldHJpY3MuaCBcCkBAIC0yNjIxLDYgKzI2MzAsMTYgQEAgRkVBVFVSRV9ERUZJTkVTICs9IEVO
QUJMRV9JTUFHRV9SRVNJWkVSPTEKIAogd2ViY29yZV9jcHBmbGFncyArPSAtREVOQUJMRV9JTUFH
RV9SRVNJWkVSPTEKIAord2ViY29yZV9zb3VyY2VzICs9IFwKKyAgICBXZWJDb3JlL2h0bWwvSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIFwKKyAgICBXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmggXAorICAgIFdlYkNvcmUvaHRtbC9KU0N1c3RvbUltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suY3BwIFwKKyAgICBXZWJDb3JlL2h0bWwvSlNDdXN0b21JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwCisKK0lETF9CSU5ESU5HUyArPSBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmlkbAorCiBlbHNlCiB3ZWJjb3JlX2NwcGZsYWdzICs9IC1ERU5B
QkxFX0lNQUdFX1JFU0laRVI9MAogCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBi
L1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGYyY2RkNjcuLmNkMzEzMzYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xODcs
NiArMTg3LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsJywKICAg
ICAgICAgICAgICdodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1s
L0ltYWdlRGF0YS5pZGwnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9NZWRpYUVycm9yLmlkbCcsCiAgICAgICAgICAgICAn
aHRtbC9UZXh0TWV0cmljcy5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGltZVJhbmdlcy5pZGwn
LApAQCAtNTE0LDYgKzUxNiw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDU1NTdHls
ZURlY2xhcmF0aW9uQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDU1NT
dHlsZURlY2xhcmF0aW9uQ3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ1NT
VmFsdWVDdXN0b20uY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1
c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oJywKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0N1c3RvbVBvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHAnLApAQCAtNTcxLDYgKzU3NSw3
IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9t
LmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3Rv
bS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9t
LmNwcCcsCkBAIC0xNjU2LDYgKzE2NjEsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZXdT
b3VyY2VEb2N1bWVudC5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5jcHAnLAogICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmgnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAn
LAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgnLAogICAgICAgICAgICAg
J2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5w
cmkgYi9XZWJDb3JlL1dlYkNvcmUucHJpCmluZGV4IDI1Yzk1ZmYuLjRlNmVmZTcgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvV2ViQ29yZS5wcmkKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtNDIy
LDYgKzQyMiw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgaHRtbC9IVE1MVUxpc3RFbGVtZW50
LmlkbCBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbCBcCiAgICAgaHRtbC9JbWFnZURh
dGEuaWRsIFwKKyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKyAgICBo
dG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogICAgIGh0bWwvTWVkaWFFcnJv
ci5pZGwgXAogICAgIGh0bWwvVGV4dE1ldHJpY3MuaWRsIFwKICAgICBodG1sL1RpbWVSYW5nZXMu
aWRsIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUu
cHJvCmluZGV4IDkyYTc3NWMuLjE3M2VjZDcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5w
cm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMjgxLDYgKzI4MSw4IEBAIFNPVVJDRVMg
Kz0gXAogICAgIGJpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHAgXAog
ICAgIGJpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9K
U0Nvb3JkaW5hdGVzQ3VzdG9tLmNwcCBcCisgICAgYmluZGluZ3MvanMvSlNDdXN0b21JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKyAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0
aW9uQ2FsbGJhY2suY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uRXJyb3JD
YWxsYmFjay5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tVm9pZENhbGxiYWNrLmNwcCBc
CkBAIC0zMTQsNyArMzE2LDkgQEAgU09VUkNFUyArPSBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1M
Rm9ybUVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1l
bnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0
b20uY3BwIFwKKyAgICBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICBiaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisgICAgYmlu
ZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMv
SlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT2Jq
ZWN0RWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xs
ZWN0aW9uQ3VzdG9tLmNwcCBcCkBAIC03MDQsNiArNzA4LDcgQEAgU09VUkNFUyArPSBcCiAgICAg
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmNw
cCBcCiAgICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAorICAgIGh0bWwvUmVzaXplT3B0aW9u
cy5jcHAgXAogICAgIGh0bWwvU3RlcFJhbmdlLmNwcCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRl
LmNwcCBcCiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcCBcCkBAIC0xNDM2LDkgKzE0
NDEsMTIgQEAgSEVBREVSUyArPSBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggXAogICAg
IGh0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKICAgICBodG1sL0ltYWdlRGF0YS5oIFwK
KyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCisgICAgaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBc
CiAgICAgaHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmgg
XAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5oIFwKICAgICBodG1sL1N0ZXBSYW5nZS5oIFwKICAg
ICBodG1sL1RpbWVSYW5nZXMuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4uMWExZGQ3YiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3Jl
L1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2ICszNzY2MSwxNCBAQAog
CQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1s
XEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJ
CTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZl
UGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxl
Pg0KQEAgLTM3Njg5LDYgKzM3Njk3LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8Rmls
ZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5jcHAiDQorCQkJCT4N
CisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6
ZU9wdGlvbnMuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGh0bWxcU3RlcFJhbmdlLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0z
ODQ5Niw2ICszODUxMiwxMyBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0Zp
bGU+DQogCQkJCTxGaWxlDQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3Vz
dG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCINCisJCQkJCT4NCisJCQkJPC9GaWxl
Pg0KKwkJCQk8RmlsZQ0KKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0N1c3Rv
bUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQkJPg0KKwkJCQk8RmlsZQ0KIAkJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2su
Y3BwIg0KIAkJCQkJPg0KIAkJCQk8L0ZpbGU+DQpAQCAtNDAxMjgsNyArNDAxNTEsOSBAQAogCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCiAJCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNw
cCINCisKIAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQogCQkJCQkJTmFtZT0iRGVi
dWd8V2luMzIiDQpAQCAtNDAzODgsNiArNDA0MTMsNTkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8RmlsZQ0KKworCQkJCQlSZWxhdGl2ZVBhdGg9Ii4u
XGJpbmRpbmdzXGpzXEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAiDQorCQkJCQk+DQorCQkJ
CQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2lu
MzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxU
b29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1l
PSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIN
CisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIN
CisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmln
dXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4z
MiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRv
b2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9
IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJ
CQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJ
CQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPC9GaWxlPg0KKwkJCQk8Rmls
ZQ0KIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uY3BwIg0KIAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMzBiMjlkLi4zYjZiZTRjIDEw
MDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzUwOSw2ICsz
NTA5LDE1IEBACiAJCUIwMTQ5RTdFMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXpl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlF
N0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi87IH07CiAJCUIwMTQ5
RTdGMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0IxMUE0QjIxNTAwMTk2
QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgKi87IH07CiAJCUIwMTQ5RTgwMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuaCAqLzsgfTsKKwkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6
ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi87IH07CisJCUIw
NEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRDMTFB
QjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRFNkJGNjExQzdGMDdF
MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1M
SW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1l
bnRDdXN0b20uY3BwICovOyB9OworCQlCMEE3MTM2NzExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3Rv
bUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTM2ODExQzk2MjI1
MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTM2NDExQzk2MjI1MDAz
QzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IH07CisJCUIw
QTcxMzY5MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MEE3MTM2NTExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwICovOyB9OworCQlCMEE3MTM2QTExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21J
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxMzY2MTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUlt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyB9OworCQlCMEE3MTUxQjExQ0MyNEVFMDAz
QzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9u
cy5jcHAgKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDEx
MTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLzsgfTsKIAkJQjIwMTEx
MDgwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBK
U1NWR0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NW
R1BPRFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5o
ICovOyB9OwpAQCAtODg0NSw2ICs4ODU0LDE1IEBACiAJCUIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3
QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBc3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0
OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFn
ZVJlc2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VS
ZXNpemVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRBMTFB
QjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VF
bGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIwQTcxMzYzMTFDOTYyMjUwMDNDMzM3MyAvKiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjBBNzEzNjQxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBB
NzEzNjUxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjBBNzEzNjYxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3VzdG9tSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA2MEFCNzc0MDUw
MERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0FFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMTEy
N0E1MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BPRFR5cGVXcmFwcGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xMzY5OSw2ICsxMzcxNyw4IEBACiAJCQkJQTc3OTc5MTMwRDZC
OUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5MTQwRDZCOUQwQzAw
Mzg1MUI5IC8qIEltYWdlRGF0YS5oICovLAogCQkJCUE3Nzk3OTE1MEQ2QjlEMEMwMDM4NTFCOSAv
KiBJbWFnZURhdGEuaWRsICovLAorCQkJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdC
IC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCUIwMTQ5RTdCMTFBNEIy
MTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5RTdDMTFB
NEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2RkEyNDEx
QUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLApAQCAtMTM3MDksNiArMTM3
MjksOCBAQAogCQkJCUU0NDYxMzlDMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9yLmlkbCAq
LywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIuY3BwICov
LAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5oICovLAor
CQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLywKKwkJ
CQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovLAogCQkJCUE1
QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuY3BwICovLAogCQkJCUE1QUZCMzRF
MTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAqLywKIAkJCQlCQ0VGNDVFODBFNjg3NzY3
MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAgLTE1NTEzLDYgKzE1NTM1LDcgQEAKIAkJ
CQlCQzJFRDdBNDBDNkMwRjM2MDA5MjBCRkYgLyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCAqLywKIAkJCQlCQ0Q0MUFCQTBDMDYwREU4MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVt
ZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzJFRDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1M
SUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgKi8sCisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMw
IC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkND
NzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVD
QTMwQzA3ODFCQjAwQ0QyMEYwIC8qIEpTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAog
CQkJCTQ0OEFEMjdBMEE0ODEzNzkwMDIzRDE3OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1
c3RvbS5jcHAgKi8sCkBAIC0xNTgwNyw2ICsxNTgzMCwxMCBAQAogCQkJY2hpbGRyZW4gPSAoCiAJ
CQkJMTQ0OUUyODYxMDdENERCNDAwQjU3OTNGIC8qIEpTQ2FsbGJhY2tEYXRhLmNwcCAqLywKIAkJ
CQkxNDQ5RTI0QTEwN0Q0QTg0MDBCNTc5M0YgLyogSlNDYWxsYmFja0RhdGEuaCAqLywKKwkJCQlC
MEE3MTM2MzExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmNwcCAqLywKKwkJCQlCMEE3MTM2NDExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzEzNjUxMUM5NjIyNTAwM0MzMzcz
IC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLywKKwkJCQlCMEE3
MTM2NjExQzk2MjI1MDAzQzMzNzMgLyogSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaCAqLywKIAkJCQlGRTgwRDdBMjBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlv
bkNhbGxiYWNrLmNwcCAqLywKIAkJCQlGRTgwRDdBMzBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0
b21Qb3NpdGlvbkNhbGxiYWNrLmggKi8sCiAJCQkJRkU4MEQ3QTQwRTlDMUVEMjAwMEQ2Rjc1IC8q
IEpTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCAqLywKQEAgLTE4MTE5LDYgKzE4MTQ2
LDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNFQkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgyNTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VP
YnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1
MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovLAogCQkJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJl
YWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFn
ZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8q
IEltYWdlU291cmNlQ0cuaCBpbiBIZWFkZXJzICovLApAQCAtMTgyMTUsNiArMTgyNDQsOCBAQAog
CQkJCUJDNjg2QzdEMEUwQzMzMDEwMERFOEEwOCAvKiBKU0NTU1ZhcmlhYmxlc0RlY2xhcmF0aW9u
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzY4NkM3RjBFMEMzMzAxMDBERThBMDggLyogSlNDU1NW
YXJpYWJsZXNSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDc3OEI4MDExNUE1ODFBMDBCNUQz
NzIgLyogSlNDdXN0b21FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzEzNjgxMUM5NjIy
NTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQjBBNzEzNkExMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTgwRDdBODBFOUMxRUQy
MDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlvbkNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlGRTgwRDdBQTBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlvbkVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAogCQkJCTFBMzQxN0M5MENFQ0ZGMjUwMDQ5Q0JERSAvKiBKU0N1
c3RvbVZvaWRDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCkBAIC0xODg4NSw2ICsxODkxNiw3IEBA
CiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2QzJGMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGMjExQzZG
MEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0Rjcx
NDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIwNTQzLDYgKzIwNTc1LDggQEAKIAkJCQlCQzY4NkM3QzBFMEMz
MzAxMDBERThBMDggLyogSlNDU1NWYXJpYWJsZXNEZWNsYXJhdGlvbi5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlCQzY4NkM3RTBFMEMzMzAxMDBERThBMDggLyogSlNDU1NWYXJpYWJsZXNSdWxlLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUU0Nzc4QjdGMTE1QTU4MUEwMEI1RDM3MiAvKiBKU0N1c3Rv
bUV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxMzY3MTFDOTYyMjUwMDNDMzM3MyAv
KiBKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkJQjBBNzEzNjkxMUM5NjIyNTAwM0MzMzczIC8qIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEN0E3MEU5QzFFRDIwMDBENkY3
NSAvKiBKU0N1c3RvbVBvc2l0aW9uQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkU4
MEQ3QTkwRTlDMUVEMjAwMEQ2Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25FcnJvckNhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTUxRUM5MjY1MENFOTBERDQwMEY5MDMwOCAvKiBKU0N1c3Rv
bVNRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMDY1NCw2
ICsyMDY4OCw3IEBACiAJCQkJQkM0OTE4QzgwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFt
ZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyRUQ2NTAwQzZCQzQ4QzAwOTIwQkZG
IC8qIEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFF
MkFBOTcwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3RTk4MEExQTgzRTMwMDdGQjhDNSAv
KiBKU0hUTUxJbnB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNDNDM4NzgwRTg4
NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkxQUUyQUE5OTBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSXNJbmRleEVsZW1lbnQu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMTI1OSw2ICsyMTI5NCw3IEBACiAJCQkJQTg5Q0NDNTIw
RjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTkzMzA5RTA5MDk5RTY0OTIwMDU2RTU4MSAvKiBSZXBsYWNlU2VsZWN0aW9u
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0IxNkMyRTA5NzlDM0JEMDA0Njc3NDEg
LyogUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMz
NzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzRGNzEzRTBENUE2
RjI4MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NTE0Qzc2NTAwQ0U5MjM0RTAwN0VGM0NEIC8qIFJlc291cmNlRXJyb3JNYWMubW0gaW4gU291cmNl
cyAqLywKIAkJCQk1MTRDNzY3ODBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9t
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3Vz
dG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uY2M5YzkwYQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcApAQCAtMCwwICsxLDY5IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUK
KyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBP
V05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
CisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oIgorCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlICJGcmFt
ZS5oIgorI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKworI2luY2x1ZGUgPHJ1bnRpbWUv
SlNMb2NrLmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9S
ZWZQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCit1c2luZyBuYW1lc3BhY2UgSlNDOwor
CitKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayhKU09iamVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCisgICAgOiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKGdsb2JhbE9iamVjdC0+
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICwgbV9kYXRhKGNhbGxiYWNrLCBnbG9iYWxP
YmplY3QpCit7Cit9CisKK3ZvaWQgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpo
YW5kbGVFdmVudChjb25zdCBTdHJpbmcmIGVycm9yKQoreworICAgIGlmICghc2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBSZWZQdHI8SlNDdXN0b21JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBwcm90ZWN0KHRoaXMpOworCisgICAgSlNDOjpKU0xvY2sg
bG9jayhTaWxlbmNlQXNzZXJ0aW9uc09ubHkpOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9IG1fZGF0
YS5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpOworICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVy
IGFyZ3M7CisgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgZXJyb3IpKTsKKyAgICBtX2Rh
dGEuaW52b2tlQ2FsbGJhY2soYXJncyk7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGExMTkyMwotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSlND
dXN0b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSlNDdXN0b21JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrX2gKKworI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCIKKyNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5oIgorCisjaW5jbHVkZSA8d3RmL0Zvcndh
cmQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgSlNET01H
bG9iYWxPYmplY3Q7CisKK2NsYXNzIEpTQ3VzdG9tSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6
IHB1YmxpYyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
UGFzc1JlZlB0cjxKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0ZShKU0M6
OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAg
ICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrKGNhbGxiYWNrLCBnbG9iYWxPYmplY3QpKTsKKyAgICB9CisKKyAgICB2aXJ0dWFs
IHZvaWQgaGFuZGxlRXZlbnQoY29uc3QgU3RyaW5nJik7CisKK3ByaXZhdGU6CisgICAgSlNDdXN0
b21JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKEpTQzo6SlNPYmplY3QqIGNhbGxiYWNrLCBKU0RP
TUdsb2JhbE9iamVjdCopOworCisgICAgSlNDYWxsYmFja0RhdGEgbV9kYXRhOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gSlNDdXN0b21JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3Rv
bUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uYjY1OTVmYgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwCkBAIC0wLDAgKzEsNzAg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAq
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suaCIKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSAi
QmxvYi5oIgorI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVkZSAiSlNCbG9iLmgiCisjaW5jbHVk
ZSAiU2NyaXB0Q29udHJvbGxlci5oIgorCisjaW5jbHVkZSA8cnVudGltZS9KU0xvY2suaD4KKyNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordXNpbmcgbmFt
ZXNwYWNlIEpTQzsKKworSlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OkpTQ3Vz
dG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKEpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01H
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAgICA6IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjayhnbG9iYWxPYmplY3QtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKKyAgICAsIG1fZGF0
YShjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KQoreworfQorCit2b2lkIEpTQ3VzdG9tSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrOjpoYW5kbGVFdmVudChCbG9iKiBibG9iKQoreworICAgIGlmICgh
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBSZWZQdHI8
SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHByb3RlY3QodGhpcyk7CisKKyAg
ICBKU0M6OkpTTG9jayBsb2NrKFNpbGVuY2VBc3NlcnRpb25zT25seSk7CisgICAgRXhlY1N0YXRl
KiBleGVjID0gbV9kYXRhLmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCk7CisgICAgTWFya2Vk
QXJndW1lbnRCdWZmZXIgYXJnczsKKyAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIGRlcHJlY2F0
ZWRHbG9iYWxPYmplY3RGb3JQcm90b3R5cGUoZXhlYyksIGJsb2IpKTsKKyAgICBtX2RhdGEuaW52
b2tlQ2FsbGJhY2soYXJncyk7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJ
WkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5oIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmVhNGE3YjYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9t
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSlND
dXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorI2RlZmluZSBKU0N1c3RvbUltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5oIgorCisjaW5jbHVkZSA8d3Rm
L0ZvcndhcmQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3Mg
SlNET01HbG9iYWxPYmplY3Q7CisKK2NsYXNzIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrIDogcHVibGljIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CitwdWJsaWM6Cisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+
IGNyZWF0ZShKU0M6OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSlNDdXN0b21JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soY2FsbGJhY2ssIGdsb2JhbE9iamVjdCkpOworICAgIH0K
KworICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVFdmVudChCbG9iKik7CisKK3ByaXZhdGU6CisgICAg
SlNDdXN0b21JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soSlNDOjpKU09iamVjdCogY2FsbGJh
Y2ssIEpTRE9NR2xvYmFsT2JqZWN0Kik7CisKKyAgICBKU0NhbGxiYWNrRGF0YSBtX2RhdGE7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBKU0N1c3RvbUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElt
YWdlRWxlbWVudEN1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
MGZjMWE3YgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1h
Z2VFbGVtZW50Q3VzdG9tLmNwcApAQCAtMCwwICsxLDE2NCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisg
KiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2Yg
aXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJKU0hUTUxJbWFnZUVsZW1lbnQu
aCIKKworI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUgIkhUTUxJbWFnZUVsZW1lbnQu
aCIKKyNpbmNsdWRlICJKU0N1c3RvbUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNs
dWRlICJKU0N1c3RvbUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1ZGUgIlJl
c2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNGdW5jdGlvbi5oPgorI2luY2x1
ZGUgPHJ1bnRpbWUvSlNTdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+CisjaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK3VzaW5nIG5h
bWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U1ZhbHVlIHZhbHVlKQoreworICAgIGlmICghdmFsdWUuaW5oZXJpdHMoJkpTRnVuY3Rpb246Omlu
Zm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBUWVBFX01JU01BVENIX0VSUik7
CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTT2JqZWN0KiBvYmplY3QgPSBhc09i
amVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTQ3VzdG9tSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrOjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0
cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSB2YWx1ZSkKK3sKKyAgICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZp
bmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1Vu
ZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghdmFsdWUuaW5o
ZXJpdHMoJkpTRnVuY3Rpb246OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVj
LCBUWVBFX01JU01BVENIX0VSUik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpT
T2JqZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTQ3VzdG9tSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30K
Kworc3RhdGljIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlUmVzaXplT3B0aW9ucyhF
eGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+IHJlc2l6ZU9wdGlvbnMgPSBSZXNpemVPcHRpb25zOjpjcmVhdGUoKTsKKworICAgIC8vIEFy
Z3VtZW50IGlzIG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxs
IGlzIGFsbG93ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAgICAg
ICAgLy8gVXNlIGRlZmF1bHQgb3B0aW9ucy4KKyAgICAgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMu
cmVsZWFzZSgpOworICAgIH0KKyAgICBKU09iamVjdCogb2JqZWN0ID0gdmFsdWUudG9PYmplY3Qo
ZXhlYyk7CisKKyAgICBKU1ZhbHVlIHdpZHRoID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmll
cihleGVjLCAid2lkdGgiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4gMDsKKyAgICBpZiAoIXdpZHRoLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVz
aXplT3B0aW9ucy0+c2V0V2lkdGgod2lkdGgudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChl
eGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAg
IEpTVmFsdWUgaGVpZ2h0ID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiaGVp
Z2h0IikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKCFoZWlnaHQuaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25z
LT5zZXRIZWlnaHQoaGVpZ2h0LnRvRmxvYXQoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFk
RXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVl
IGNvbXByZXNzaW9uTGV2ZWwgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJj
b21wcmVzc2lvbkxldmVsIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIDA7CisgICAgaWYgKCFjb21wcmVzc2lvbkxldmVsLmlzVW5kZWZpbmVkKCkpIHsK
KyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0Q29tcHJlc3Npb25MZXZlbChjb21wcmVzc2lvbkxl
dmVsLnRvRmxvYXQoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIHByZXNlcnZlQXNwZWN0
UmF0aW8gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJwcmVzZXJ2ZUFzcGVj
dFJhdGlvIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
IDA7CisgICAgaWYgKCFwcmVzZXJ2ZUFzcGVjdFJhdGlvLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAg
ICAgcmVzaXplT3B0aW9ucy0+c2V0QXNwZWN0UmF0aW9PcHRpb24ocHJlc2VydmVBc3BlY3RSYXRp
by50b0Jvb2xlYW4oZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIG9yaWVudGF0aW9uID0g
b2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAib3JpZW50YXRpb24iKSk7CisgICAg
aWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIW9y
aWVudGF0aW9uLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0T3Jp
ZW50YXRpb25PcHRpb24odXN0cmluZ1RvU3RyaW5nKG9yaWVudGF0aW9uLnRvU3RyaW5nKGV4ZWMp
KSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biAwOworICAgIH0KKworICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsKK30KKwor
SlNWYWx1ZSBKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtpdEdldEltYWdlKEV4ZWNTdGF0ZSogZXhl
YykKK3sKKyAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKKworICAgIGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUgPSB1c3RyaW5nVG9TdHJpbmcoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykp
OworCisgICAgUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxi
YWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKGV4ZWMsIHN0YXRpY19jYXN0
PEpTRE9NR2xvYmFsT2JqZWN0Kj4oZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwgZXhlYy0+
YXJndW1lbnQoMSkpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgQVNTRVJUKHN1Y2Nlc3NDYWxsYmFjayk7CisKKyAgICBS
ZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IGNyZWF0ZUlt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmpl
Y3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgyKSk7Cisg
ICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKKworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zID0gY3JlYXRlUmVz
aXplT3B0aW9ucyhleGVjLCBleGVjLT5hcmd1bWVudCgzKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQocmVz
aXplT3B0aW9ucyk7CisKKyAgICBIVE1MSW1hZ2VFbGVtZW50KiBpbXAgPSBzdGF0aWNfY2FzdDxI
VE1MSW1hZ2VFbGVtZW50Kj4oaW1wbCgpKTsKKyAgICBpbXAtPndlYmtpdEdldEltYWdlKG1pbWVU
eXBlLCBzdWNjZXNzQ2FsbGJhY2sucmVsZWFzZSgpLCBlcnJvckNhbGxiYWNrLnJlbGVhc2UoKSwg
cmVzaXplT3B0aW9ucy5yZWxlYXNlKCksIGVjKTsKKyAgICBzZXRET01FeGNlcHRpb24oZXhlYywg
ZWMpOworICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJl
c2l6ZXIuY3BwCmluZGV4IDRiYjc0YzkuLmZkMmVjMWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRt
bC9Bc3luY0ltYWdlUmVzaXplci5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNp
emVyLmNwcApAQCAtMzQsMjggKzM0LDMxIEBACiAjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIu
aCIKIAogI2luY2x1ZGUgIkNhY2hlZEltYWdlLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgog
I2luY2x1ZGUgIkltYWdlUmVzaXplclRocmVhZC5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMu
aCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gQXN5bmNJ
bWFnZVJlc2l6ZXI6OmNyZWF0ZShDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUg
b3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2Fs
bGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJh
dGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlv
bk9wdGlvbikKK3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KENhY2hlZEltYWdlKiBjYWNo
ZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVz
aXplT3B0aW9ucykKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEFzeW5jSW1hZ2VSZXNpemVy
KGNhY2hlZEltYWdlLCBvdXRwdXRUeXBlLCBkZXNpcmVkQm91bmRzLCBzdWNjZXNzQ2FsbGJhY2ss
IGVycm9yQ2FsbGJhY2ssIHF1YWxpdHksIGFzcGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9w
dGlvbikpOworICAgICBuZXcgQXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5
cGUsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcmVzaXplT3B0aW9ucyk7CiB9CiAK
LUFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSogY2FjaGVk
SW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3Jp
cHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0
IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlv
bk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK0FzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0ltYWdl
UmVzaXplcihDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNz
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMpCiAgICAgOiBtX2NhY2hlZEltYWdl
KGNhY2hlZEltYWdlKQorICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5cGUpCiAgICAgLCBtX3N1
Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJy
b3JDYWxsYmFjaykKLSAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQotICAgICwgbV9kZXNp
cmVkQm91bmRzKGRlc2lyZWRCb3VuZHMpCi0gICAgLCBtX3F1YWxpdHkocXVhbGl0eSkKLSAgICAs
IG1fYXNwZWN0UmF0aW9PcHRpb24oYXNwZWN0UmF0aW9PcHRpb24pCi0gICAgLCBtX29yaWVudGF0
aW9uT3B0aW9uKG9yaWVudGF0aW9uT3B0aW9uKQorICAgICwgbV9yZXNpemVPcHRpb25zKHJlc2l6
ZU9wdGlvbnMpCiB7Ci0gICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmlzT2JqZWN0KCkpOwor
ICAgIC8vIG1fY2FsbGJhY2sgY29udHJvbHMgdGhlIGxpZmV0aW1lIG9mIEFzeW5jSW1hZ2VSZXNp
emVyLgorICAgIG1fY2FsbGJhY2tJbmZvID0gbmV3IENhbGxiYWNrSW5mbyh0aGlzKTsKKyAgICBB
U1NFUlQobV9zdWNjZXNzQ2FsbGJhY2suZ2V0KCkpOwogICAgIG1fY2FjaGVkSW1hZ2UtPmFkZENs
aWVudCh0aGlzKTsKIH0KIApAQCAtNjcsMTEgKzcwLDIxIEBAIHZvaWQgQXN5bmNJbWFnZVJlc2l6
ZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKIHsKICAg
ICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEgPSBjYWNoZWRSZXNvdXJjZS0+ZGF0YSgp
LT5jb3B5KCk7CiAgICAgY2FjaGVkUmVzb3VyY2UtPnJlbW92ZUNsaWVudCh0aGlzKTsKLSAgICBD
YWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7Ci0gICAg
aWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgY2FsbGJhY2tJbmZvLCBt
X291dHB1dFR5cGUsIG1fZGVzaXJlZEJvdW5kcywgbV9xdWFsaXR5LCBtX2FzcGVjdFJhdGlvT3B0
aW9uLCBtX29yaWVudGF0aW9uT3B0aW9uKSkKKyAgICBpZiAoIUltYWdlUmVzaXplclRocmVhZDo6
c3RhcnQoaW1hZ2VEYXRhLCBtX2NhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBJbnRTaXplKG1f
cmVzaXplT3B0aW9ucy0+d2lkdGgoKSwgbV9yZXNpemVPcHRpb25zLT5oZWlnaHQoKSksIG1fcmVz
aXplT3B0aW9ucy0+Y29tcHJlc3Npb25MZXZlbCgpLCBtX3Jlc2l6ZU9wdGlvbnMtPmFzcGVjdFJh
dGlvT3B0aW9uKCksIG1fcmVzaXplT3B0aW9ucy0+b3JpZW50YXRpb25PcHRpb24oKSkpCiAgICAg
ICAgIHJlc2l6ZUVycm9yKCk7CiB9CiAKK3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUNv
bXBsZXRlKFJlZlB0cjxCbG9iPiBibG9iKQoreworICAgIG1fc3VjY2Vzc0NhbGxiYWNrLT5oYW5k
bGVFdmVudChibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXpl
RXJyb3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJy
b3JDYWxsYmFjay0+aGFuZGxlRXZlbnQoIlVuZXhwZWN0ZWQgZXJyb3Igd2hpbGUgcmVzaXppbmcg
aW1hZ2UiKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxF
KElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuaCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oCmluZGV4IDNlZWVlYWQuLmI0
MmVhYmYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oCisrKyBi
L1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oCkBAIC00MCw3ICs0MCwxMSBAQAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDYWNoZWRJbWFnZTsKK2NsYXNzIEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2s7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CiBjbGFz
cyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CitjbGFzcyBSZXNpemVPcHRpb25zOworCiAKIC8vIEFzeW5j
SW1hZ2VSZXNpemVyIHdhaXRzIGZvciB0aGUgQ2FjaGVkSW1hZ2UgdGhhdCBpcyBwYXNzZWQgaW4g
dG8gbG9hZCBjb21wbGV0ZWx5LAogLy8gdGhlbiBzdGFydHMgYW4gSW1hZ2VSZXNpemVyVGhyZWFk
IHRvIHJlc2l6ZSB0aGUgaW1hZ2UuIE9uY2UgY3JlYXRlZCwgSW1hZ2VSZXNpemVyVGhyZWFkCkBA
IC00OCwxNiArNTIsMTYgQEAgY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkOwogLy8gb2NjdXIsIGJv
dGggb2JqZWN0cyBhcmUgZGVzdHJveWVkLiBJZiB0aGUgZG9jdW1lbnQgaXMgZGVzdHJveWVkIGR1
cmluZyByZXNpemluZywKIC8vIEFzeW5jSW1hZ2VSZXNpemVyIHdpbGwgcmVjZWl2ZSBhIG5vdGlm
aWNhdGlvbiBhbmQgc3Vic2VxdWVudGx5IGJsb2NrIHRoZSBjYWxsYmFja3MgZnJvbQogLy8gb2Nj
dXJyaW5nLgotY2xhc3MgQXN5bmNJbWFnZVJlc2l6ZXIgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VD
bGllbnQsIHB1YmxpYyBSZWZDb3VudGVkPEFzeW5jSW1hZ2VSZXNpemVyPiB7CitjbGFzcyBBc3lu
Y0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCB7CiBwdWJsaWM6CiAg
ICAgc3RydWN0IENhbGxiYWNrSW5mbyB7Ci0gICAgICAgIENhbGxiYWNrSW5mbyhQYXNzUmVmUHRy
PEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcikKKyAgICAgICAgQ2FsbGJhY2tJ
bmZvKFBhc3NPd25QdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQogICAg
ICAgICAgICAgOiBhc3luY0ltYWdlUmVzaXplcihhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAg
ICAgICwgYmxvYigwKQogICAgICAgICB7CiAgICAgICAgIH0KIAotICAgICAgICBSZWZQdHI8QXN5
bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyOworICAgICAgICBPd25QdHI8QXN5bmNJ
bWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyOwogICAgICAgICBSZWZQdHI8QmxvYj4gYmxv
YjsKICAgICB9OwogICAgIApAQCAtNjYsMzggKzcwLDIyIEBAIHB1YmxpYzoKICAgICAgICAgUE5H
CiAgICAgfTsKIAotICAgIGVudW0gQXNwZWN0UmF0aW9PcHRpb24gewotICAgICAgICBQcmVzZXJ2
ZUFzcGVjdFJhdGlvLAotICAgICAgICBJZ25vcmVBc3BlY3RSYXRpbwotICAgIH07Ci0KLSAgICBl
bnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKLSAgICAgICAgQ29ycmVjdE9yaWVudGF0aW9uLAotICAg
ICAgICBJZ25vcmVPcmllbnRhdGlvbgotICAgIH07Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxB
c3luY0ltYWdlUmVzaXplcj4gY3JlYXRlKENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6
ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVl
IGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRh
dGlvbk9wdGlvbik7CisgICAgc3RhdGljIHZvaWQgc3RhcnQoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRU
eXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwog
ICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlk
ZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFu
Z2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9i
PikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXpl
RXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCBy
ZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAog
cHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUs
IEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3Jp
cHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwg
T3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiwg
T3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+KTsKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsK
LQotICAgIENhY2hlZEltYWdlKiBtX2NhY2hlZEltYWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3Vj
Y2Vzc0NhbGxiYWNrOwotICAgIFNjcmlwdFZhbHVlIG1fZXJyb3JDYWxsYmFjazsKICAgICAKLSAg
ICAvLyBQYXJhbWV0ZXJzIHRvIHBhc3MgaW50byBJbWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2Fj
aGVkSW1hZ2UqIG1fY2FjaGVkSW1hZ2U7CisgICAgQ2FsbGJhY2tJbmZvKiBtX2NhbGxiYWNrSW5m
bzsKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKLSAgICBJbnRTaXplIG1fZGVzaXJlZEJv
dW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3Bl
Y3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9u
OworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IG1fc3VjY2Vzc0NhbGxi
YWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJh
Y2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IG1fcmVzaXplT3B0aW9uczsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcAppbmRleCA1ZDU5
MjNkLi42NTRiNzAzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5j
cHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCkBAIC0zMiw5ICszMiwx
NyBAQAogI2luY2x1ZGUgIkhUTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVu
dC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkltYWdlLmgiCisjaW5jbHVk
ZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oIgogI2luY2x1ZGUgIlJlbmRlckltYWdlLmgiCisjaW5jbHVkZSAiUmVz
aXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNjcmlwdEV2ZW50TGlzdGVuZXIuaCIKIAorI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCisjZW5k
aWYKKwogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDUx
LDQgKzQ1OSwzNCBAQCB2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRv
Y3VtZW50KCkKICAgICBIVE1MRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsK
IH0KIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCit2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6
OndlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJl
c2l6ZU9wdGlvbnMsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmICghc3JjKCkuaXNWYWxp
ZCgpKSB7CisgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICAvLyBUaGUgdGFpbnRzQ2FudmFzIG1ldGhvZCBhbHNvIGFsbG93cyBkYXRh
IFVSTHMuCisgICAgaWYgKGRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPnRhaW50c0NhbnZh
cyhzcmMoKSkpIHsKKyAgICAgICAgZWMgPSBTRUNVUklUWV9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlOwor
ICAgIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2UvanBlZyIpCisgICAgICAgIG91dHB1dFR5cGUgPSBB
c3luY0ltYWdlUmVzaXplcjo6SlBFRzsKKyAgICBlbHNlIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2Uv
cG5nIikKKyAgICAgICAgb3V0cHV0VHlwZSA9IEFzeW5jSW1hZ2VSZXNpemVyOjpQTkc7CisgICAg
ZWxzZSB7CisgICAgICAgIGVjID0gTk9UX1NVUFBPUlRFRF9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQobV9pbWFnZUxvYWRlci5pbWFn
ZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9w
dGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBI
VE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CitjbGFz
cyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsKIAogY2xh
c3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJpZW5kIGNs
YXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAogICAgIGJv
b2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRlci5oYXZl
RmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyAgICB2
b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+
LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNlbmRpZgor
CiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwg
RG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50
LmlkbAppbmRleCAwZmM3MjcxLi41ZGEzNTMwIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRs
CkBAIC00OSw2ICs0OSwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgYWx0RGlzcGxheVN0cmluZzsKICAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIFVSTCBhYnNvbHV0ZUltYWdlVVJMOwogI2VuZGlmCisKKyNpZiBkZWZpbmVkKEVOQUJMRV9J
TUFHRV9SRVNJWkVSKSAmJiBFTkFCTEVfSU1BR0VfUkVTSVpFUgorI2lmIGRlZmluZWQoTEFOR1VB
R0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVAorICAgICAgICAvLyBGdW5jdGlv
bnMKKyAgICAgICAgW0N1c3RvbV0gdm9pZCB3ZWJraXRHZXRJbWFnZShpbiBET01TdHJpbmcgbWlt
ZVR5cGUsIGluIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIFtP
cHRpb25hbF0gaW4gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBlcnJvckNhbGxiYWNrLCBbT3B0
aW9uYWxdIGluIFJlc2l6ZU9wdGlvbnMgb3B0aW9ucykKKyAgICAgICAgICAgIHJhaXNlcyhET01F
eGNlcHRpb24pOworI2VuZGlmCisjZW5kaWYKICAgICB9OwogCiB9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4xYTEwZGQ1Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaApAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEw
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAq
IE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAq
IGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAq
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFC
TEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBY3RpdmVET01PYmplY3QuaCIKKworI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2s+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK3B1YmxpYzoKKyAgICBJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIDogQWN0aXZlRE9N
T2JqZWN0KGNvbnRleHQsIHRoaXMpIHsgfQorICAgIHZpcnR1YWwgfkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlRXZlbnQoY29uc3QgU3RyaW5n
JikgPSAwOworfTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNl
bmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li43YTc5ZTVkCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
ICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50
ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2Fs
bGJhY2sKKyAgICBdIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgeworICAgICAgICBbQ3VzdG9t
XSBib29sZWFuIGhhbmRsZUV2ZW50KGluIERPTVN0cmluZyBlcnJvcik7CisgICAgfTsKK30KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBiL1dl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5mODlmNDM0Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9o
dG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisjZGVmaW5lIEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBY3Rp
dmVET01PYmplY3QuaCIKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7
CitjbGFzcyBTdHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayA6IHB1
YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIHB1YmxpYyBBY3Rp
dmVET01PYmplY3QgeworcHVibGljOgorICAgIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KSA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0
LCB0aGlzKSB7IH0KKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soKSB7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlRXZlbnQoQmxvYiopID0gMDsKK307CisKK30KKwor
I2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0YmMxNGYKLS0tIC9k
ZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJl
CisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhl
IG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
CisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAq
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworbW9kdWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFjZSBbCisgICAg
ICAgIENvbmRpdGlvbmFsPUlNQUdFX1JFU0laRVIsCisgICAgICAgIENhbGxiYWNrCisgICAgXSBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgeworICAgICAgICBbQ3VzdG9tXSBib29sZWFuIGhh
bmRsZUV2ZW50KGluIEJsb2IgYmxvYik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAKaW5kZXggMWJhZTZhMC4uY2Q5OWRjYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclRocmVhZC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJCaXRtYXBJbWFnZS5oIgogI2lu
Y2x1ZGUgIkltYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKICNpbmNsdWRlIDx1
dGlsaXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MCw3ICs1MSw3IEBAIHN0YXRpYyB2
b2lkIHJldHVybkJsb2JPckVycm9yKHZvaWQqIGNhbGxiYWNrSW5mb3JtYXRpb24pCiAgICAgZGVs
ZXRlIGNhbGxiYWNrSW5mbzsKIH0KIAotYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK2Jvb2wgSW1hZ2VS
ZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9P
cHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9u
KQogewogICAgIEltYWdlUmVzaXplclRocmVhZCogaW1hZ2VSZXNpemVyVGhyZWFkID0gbmV3IElt
YWdlUmVzaXplclRocmVhZChjYWxsYmFja0luZm8sIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMs
IHF1YWxpdHksIGFzcGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9wdGlvbik7CiAKQEAgLTYy
LDcgKzYzLDcgQEAgYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXMKICAgICByZXR1cm4gaW1hZ2VSZXNp
emVyVGhyZWFkLT5tX3RocmVhZElEOwogfQogCi1JbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVz
aXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8s
IEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJl
ZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0
aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRp
b24gb3JpZW50YXRpb25PcHRpb24pCitJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRo
cmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5j
SW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5k
cywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9u
T3B0aW9uKQogICAgIDogbV90aHJlYWRJRCgwKQogICAgICwgbV9jYWxsYmFja0luZm8oY2FsbGJh
Y2tJbmZvKQogICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5cGUpCmRpZmYgLS1naXQgYS9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmgKaW5kZXggYWU1YWRlNS4uNjEwMGI1NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclRocmVhZC5oCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJl
YWQuaApAQCAtMzQsNiArMzQsNyBAQAogI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQogCiAjaW5j
bHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMTEgKzQzLDExIEBAIGNsYXNzIFNoYXJlZEJ1
ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMg
Ym9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdl
UmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIElu
dFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFz
cGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24pOwor
ICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEs
IEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRp
b25zOjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24p
OwogICAgIH5JbWFnZVJlc2l6ZXJUaHJlYWQoKTsKIAogcHJpdmF0ZToKLSAgICBJbWFnZVJlc2l6
ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNp
emVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFz
eW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9y
aWVudGF0aW9uT3B0aW9uKTsKKyAgICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6
ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXpl
IGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlv
T3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7CiAgICAgc3RhdGljIHZv
aWQqIGltYWdlUmVzaXplclRocmVhZFN0YXJ0KHZvaWQqKTsKICAgICB2b2lkKiBpbWFnZVJlc2l6
ZXJUaHJlYWQoKTsKIApAQCAtNTksOCArNjAsOCBAQCBwcml2YXRlOgogICAgIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKICAgICBJbnRTaXplIG1fZGVzaXJlZEJv
dW5kczsKICAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVj
dFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6
Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAgUmVzaXplT3B0aW9u
czo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKKyAgICBSZXNpemVPcHRp
b25zOjpPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMu
Y3BwIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmQyMmNhMTAKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwv
UmVzaXplT3B0aW9ucy5jcHAKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
CisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
ZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCisKKyNp
bmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKy8vIElu
Y2x1c2l2ZSBsaW1pdHM7CitzdGF0aWMgY29uc3QgaW50IGRpbWVuc2lvbnNMb3dlckxpbWl0ID0g
MTsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9uc1VwcGVyTGltaXQgPSAzMjc2NzsKK3N0YXRp
YyBjb25zdCBmbG9hdCBjb21wcmVzc2lvbkxvd2VyTGltaXQgPSAwLjBmOworc3RhdGljIGNvbnN0
IGZsb2F0IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA9IDEuMGY7CisKK3N0YXRpYyBjb25zdCBmbG9h
dCBkZWZhdWx0Q29tcHJlc3Npb24gPSAwLjg1ZjsKKworUGFzc1JlZlB0cjxSZXNpemVPcHRpb25z
PiBSZXNpemVPcHRpb25zOjpjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgUmVzaXplT3B0
aW9ucygpKTsgfQorCitSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKCkKKwk6IG1fd2lkdGgo
KQorCSwgbV9oZWlnaHQoKQorCSwgbV9jb21wcmVzc2lvbkxldmVsKCkKKwksIG1fYXNwZWN0UmF0
aW9PcHRpb24oSWdub3JlQXNwZWN0UmF0aW8pCisJLCBtX29yaWVudGF0aW9uT3B0aW9uKElnbm9y
ZU9yaWVudGF0aW9uKQoreworfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKGludCB3
aWR0aCkgeyBtX3dpZHRoID0gd2lkdGggPj0gZGltZW5zaW9uc0xvd2VyTGltaXQgJiYgd2lkdGgg
PD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyB3aWR0aCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25z
Ojp3aWR0aCgpIHsgcmV0dXJuIG1fd2lkdGg7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRI
ZWlnaHQoaW50IGhlaWdodCkgeyBtX2hlaWdodCA9IGhlaWdodCA+PSBkaW1lbnNpb25zTG93ZXJM
aW1pdCAmJiBoZWlnaHQgPD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyBoZWlnaHQgOiAwOyB9Citp
bnQgUmVzaXplT3B0aW9uczo6aGVpZ2h0KCkgeyByZXR1cm4gbV9oZWlnaHQ7IH0KKwordm9pZCBS
ZXNpemVPcHRpb25zOjpzZXRDb21wcmVzc2lvbkxldmVsKGZsb2F0IGNvbXByZXNzaW9uTGV2ZWwp
IHsgbV9jb21wcmVzc2lvbkxldmVsID0gY29tcHJlc3Npb25MZXZlbCA+PSBjb21wcmVzc2lvbkxv
d2VyTGltaXQgJiYgY29tcHJlc3Npb25MZXZlbCA8PSBjb21wcmVzc2lvblVwcGVyTGltaXQgPyBj
b21wcmVzc2lvbkxldmVsIDogZGVmYXVsdENvbXByZXNzaW9uOyB9CitmbG9hdCBSZXNpemVPcHRp
b25zOjpjb21wcmVzc2lvbkxldmVsKCkgeyByZXR1cm4gbV9jb21wcmVzc2lvbkxldmVsOyB9CisK
K3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0QXNwZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2ZUFz
cGVjdFJhdGlvKSB7IG1fYXNwZWN0UmF0aW9PcHRpb24gPSBwcmVzZXJ2ZUFzcGVjdFJhdGlvID8g
UHJlc2VydmVBc3BlY3RSYXRpbyA6IElnbm9yZUFzcGVjdFJhdGlvOyB9CitSZXNpemVPcHRpb25z
OjpBc3BlY3RSYXRpb09wdGlvbiBSZXNpemVPcHRpb25zOjphc3BlY3RSYXRpb09wdGlvbigpIHsg
cmV0dXJuIG1fYXNwZWN0UmF0aW9PcHRpb247IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRP
cmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50YXRpb25PcHRpb24pIHsgbV9vcmllbnRhdGlv
bk9wdGlvbiA9IG9yaWVudGF0aW9uT3B0aW9uID09ICJhdXRvIiA/IENvcnJlY3RPcmllbnRhdGlv
biA6IElnbm9yZU9yaWVudGF0aW9uOyB9CitSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlv
biBSZXNpemVPcHRpb25zOjpvcmllbnRhdGlvbk9wdGlvbigpIHsgcmV0dXJuIG1fb3JpZW50YXRp
b25PcHRpb247IH0KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5o
IGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi41MzBjYzk1Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL1Jlc2l6
ZU9wdGlvbnMuaApAQCAtMCwwICsxLDg3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBSZXNpemVPcHRpb25zX2gKKyNkZWZp
bmUgUmVzaXplT3B0aW9uc19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBTdHJpbmc7CisKK2NsYXNzIFJlc2l6ZU9wdGlvbnMg
OiBwdWJsaWMgUmVmQ291bnRlZDxSZXNpemVPcHRpb25zPiB7CitwdWJsaWM6CisgICAgZW51bSBB
c3BlY3RSYXRpb09wdGlvbiB7CisgICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCisgICAgICAg
IElnbm9yZUFzcGVjdFJhdGlvCisgICAgfTsKKworICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24g
eworICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24sCisgICAgICAgIElnbm9yZU9yaWVudGF0aW9u
CisgICAgfTsKKworICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZSgp
OworCisgICAgdm9pZCBzZXRXaWR0aChpbnQgd2lkdGgpOworICAgIGludCB3aWR0aCgpOworCisg
ICAgdm9pZCBzZXRIZWlnaHQoaW50IGhlaWdodCk7CisgICAgaW50IGhlaWdodCgpOworCisgICAg
dm9pZCBzZXRDb21wcmVzc2lvbkxldmVsKGZsb2F0IGNvbXByZXNzaW9uTGV2ZWwpOworICAgIGZs
b2F0IGNvbXByZXNzaW9uTGV2ZWwoKTsKKworICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24o
Ym9vbCBwcmVzZXJ2ZUFzcGVjdFJhdGlvKTsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RS
YXRpb09wdGlvbigpOworCisgICAgdm9pZCBzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3Jp
ZW50YXRpb25PcHRpb24pOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9u
KCk7CisKK3ByaXZhdGU6CisgICAgUmVzaXplT3B0aW9ucygpOworCisgICAgLy8gSWYgbV93aWR0
aCBvciBtX2hlaWdodCA9PSAwLCB0aGF0IGRpbWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGlj
aXRseSBkdXJpbmcgcmVzaXppbmcuCisgICAgaW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0
OworICAgIGZsb2F0IG1fY29tcHJlc3Npb25MZXZlbDsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBt
X2FzcGVjdFJhdGlvT3B0aW9uOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25P
cHRpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIFJlc2l6ZU9wdGlvbnNfaAo=
</data>
<flag name="review"
          id="45856"
          type_id="1"
          status="-"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="45857"
          type_id="3"
          status="-"
          setter="abarth"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59321</attachid>
            <date>2010-06-21 18:19:13 -0700</date>
            <delta_ts>2010-06-22 10:01:19 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>97800</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5jMTJlZDFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlw
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2Fi
bGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1h
Z2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjE1OGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMDcgQEAKKworVGVzdHMgdGhlIGFjY2Vw
dGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0
aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UobnVsbCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01B
VENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4
Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAi
LCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IE5PVF9TVVBQT1JURURfRVJS
OiBET00gRXhjZXB0aW9uIDkuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
dHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCAic3RyaW5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9u
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBl
bXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6bnVsbH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0eUZ1bmN0aW9u
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6SW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7d2lkdGg6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
dmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZp
bmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6e319KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRy
dWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29t
cHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2Vy
dmVBc3BlY3RSYXRpbzplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246e319KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rp
b259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10
eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIy
YzUxYzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKQEAgLTAs
MCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4i
PgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9
InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi42ZDQ3ZWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3Vy
Y2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93
bjogRXJyb3I6IElOVkFMSURfU1RBVEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxl
ZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzY1MjM2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0
SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJh
Y2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi45MWMwODVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tz
IHdvcmsgY29ycmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBF
cnJvciBjYWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3Rl
ZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
Lmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljM2VkN2IKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhl
YWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdElt
YWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMv
bm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVy
cmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYzNjYWFkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGhpcyBlbnN1cmVzIHRo
YXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRkZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgNDIgaXMgbm9uLXplcm8uCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJr
aXRHZXRJbWFnZS5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmM5NDlkYWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9J
RVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1l
dC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFn
ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNl
cy9oZWxtZXQuanBnIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi43ZDQ4MmFhCkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVs
bWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3
MTcwYWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGlt
ZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZ
T1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5
cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUzNDE5MWIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsxLDE0NSBA
QAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1bWVudHMg
dG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24gc2hvdWxk
Tm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lvbik7Cisg
ICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4iKTsK
KyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91bGQgbm90
IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQorCitmdW5j
dGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0ZWRFeGNl
cHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAgIGlmIChl
eHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICco
ZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0pKCk7Jyk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVu
Y3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJvdyhleHBy
ZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24oKSB7fTsK
KworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRocm93aW5n
RXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3
IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dpbmdFeGNl
cHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24oKSB7Cisg
ICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsKK3ZhciBv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpOwor
Cit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworCit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UodW5kZWZpbmVkKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKG51bGwpJywg
dHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKScsIHRydWUpOworCit0ZXN0KCdp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uKScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVu
Y3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBl
bXB0eUZ1bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNl
cHRpb24gOScpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKScs
IHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MiknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSknLCB0
cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpJywg
dHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgbnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHt9KScsIHRydWUpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJv
d2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHRydWUpJywgdHJ1ZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQy
KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIiknLCB0cnVl
KTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHVuZGVmaW5lZCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScs
IHRydWUsICdFcnJvcjogd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVu
Y3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCBJbmZpbml0eSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCAic3RyaW5nIiknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eTp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5Oi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUs
ICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlG
dW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoi
c3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1
ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1w
dHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1
bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9y
OiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVt
cHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVs
OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRl
ZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2Up
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3By
ZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1J
bmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmci
fSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNl
cHRpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246ZW1wdHlGdW5jdGlvbn0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOkluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtvcmllbnRhdGlvbjoic3RyaW5nIn0pJywgZmFsc2UpOworCit3aW5kb3cuanNUZXN0SXNB
c3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFz
LW5vLXNvdXJjZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjg1M2E5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpAQCAt
MCwwICsxLDIwIEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBhbiBpbWFnZSB3aXRoIG5vIHNv
dXJjZSB3aWxsIHRocm93IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4iKTsKKwordmFy
IGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9OworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworaW1nLnNyYyA9IG51bGw7CisKK2RvY3VtZW50LmJv
ZHkub25sb2FkID0gZnVuY3Rpb24oKSB7CisJdHJ5IHsKKwkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
bik7CisJCXRlc3RGYWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgewor
CQl0ZXN0UGFzc2VkKCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJ
ZmluaXNoSlNUZXN0KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9u
by1jYWxsYmFjay1hZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11
bmxvYWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTg3Y2ViYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxvYikgewor
ICAgIHRlc3RGYWlsZWQoIlN1Y2Nlc3MgY2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNhbGxlZCIp
OworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBmdW5jdGlv
bihlcnJvcikgeworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkg
Y2FsbGVkIHdpdGggb3V0cHV0OiAiICsgZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsK
KworLy8gT25seSB0aGUgZXJyb3IgY2FsbGJhY2sgd2lsbCBjdXJyZW50bHkgZXZlciBiZSBjYWxs
ZWQgaW4gdGhpcyBwYXRjaCwgc28gdGVzdCB0aGF0IGl0IHdvcmtzIGZvciBub3cKK2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0SW1hZ2UnKS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIs
IHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li45NzZjYzYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMCBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7Citp
bWcud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9Cit2YXIgcmVzdWx0
ID0gaW1nLndlYmtpdEdldEltYWdlKCk7CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3
aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJj
OTVkNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oKSB7CisgICAg
dGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxsYmFjayB3YXMgaW5jb3JyZWN0bHkgY2FsbGVkIik7Cisg
ICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgZXJyb3JDYWxsYmFjayA9IGZ1bmN0aW9uKCkg
eworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIik7
CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3
aWxsIGN1cnJlbnRseSBldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQg
aXQgd29ya3MgZm9yIG5vdworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxs
YmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZl
NWRiMjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDExIEBACisKK1Rlc3RzIHRoYXQgdGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgRXJyb3IgY2FsbGJhY2sgd2FzIGNv
cnJlY3RseSBjYWxsZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJh
Y2tzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjdk
ZmI4YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApAQCAtMCww
ICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxp
bWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13
ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNDhlZjg4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldElt
YWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhh
dCBJbWFnZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJl
bW90ZSBvcmlnaW4uCisKKworUEFTUzogVGhyZXcgZXhjZXB0aW9uOiBFcnJvcjogU0VDVVJJVFlf
RVJSOiBET00gRXhjZXB0aW9uIDE4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3Rl
LW9yaWdpbi5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmY4M2VlOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
aW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCkBAIC0wLDAg
KzEsMzEgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKG1zZykKK3sK
KyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUobXNnICsgIlxuIikpOworfQorCit2YXIgZW1wdHlDYWxsYmFjayA9IGZ1
bmN0aW9uKCkgeyB9OworCit3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgdHJ5IHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RJbWFnZSIpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUNhbGxiYWNr
KTsKKyAgICAgICAgbG9nKCJGQUlMOiBEaWQgbm90IHRocm93IGV4Y2VwdGlvbiIpOworICAgIH0g
Y2F0Y2ggKGUpIHsKKyAgICAgICAgbG9nICgiUEFTUzogVGhyZXcgZXhjZXB0aW9uOiAiICsgZSk7
CisgICAgfQorCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorPC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1h
Z2UgY2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLjwvcD4KKzxp
bWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvbWlzYy9yZXNvdXJj
ZXMvaGVsbWV0LmpwZyI+Cis8cHJlIGlkPSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQu
anBnIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9k
ZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2hlbG1l
dC5qcGcgZGlmZmVyCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhZWI0YjY4Li4wMWMyYTVlIDEwMDY0NAotLS0gYS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI2Miw2
ICsyNjIsOCBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0hUTUxVTGlzdEVsZW1l
bnQuaWRsCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbAogICAgIGh0bWwvSW1hZ2VEYXRh
LmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKKyAgICBodG1sL0lt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsCiAg
ICAgaHRtbC9UZXh0TWV0cmljcy5pZGwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaWRsCmRpZmYg
LS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk5M2Ex
MjEuLjdjYjA2OGYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUgQEAKKzIwMTAtMDYtMjEgIFN0ZXJsaW5nIFN3aWdhcnQg
IDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUgaW1hZ2UgcmVzaXppbmcgQVBJIHRv
IEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGF0IHRoaXMgc3RhZ2UuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisg
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIGZpbGVzLgorICAgICAgICAqIERlcml2ZWRT
b3VyY2VzLmNwcDogRGl0dG8uCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogR05VbWFrZWZpbGUuYW06IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUuZ3lw
aTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcmk6IERpdHRvLgorICAgICAgICAqIFdlYkNv
cmUucHJvOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBEaXR0
by4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29y
ZTo6SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06IENoYW5nZWQgdG8gY29udmVydCBTdHJpbmdz
IHRvIEpTU3RyaW5ncyBjb3JyZWN0bHkgaW4gY2FsbGJhY2tzLgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6IENoYW5nZWQgYmluZGluZ3MtdGVz
dCBmb3IgYWJvdmUuCisgICAgICAgIChXZWJDb3JlOjpKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tX
aXRoQ2xhc3MyUGFyYW0pOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KTogQ2xpZW50IG9mIHRo
aXMgY2xhc3Mgbm8gbG9uZ2VyIGRvZXMgYW55IHJlZmNvdW50aW5nCisgICAgICAgIChXZWJDb3Jl
OjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZCk6IFJlZmFjdG9yZWQu
CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplQ29tcGxldGUpOiBB
ZGRlZCBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNp
emVFcnJvcik6IERpdHRvLgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm86OkNhbGxiYWNr
SW5mbyk6IE5vdyBvbmx5IHN0b3JlcyBuZWNlc3NldGllcy4KKyAgICAgICAgKiBodG1sL0hUTUxJ
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Vi
a2l0R2V0SW1hZ2UpOiBJbXBsZW1lbnRhdGlvbiBvZiBKUyBmdW5jdGlvbi4KKyAgICAgICAgKiBo
dG1sL0hUTUxJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQu
aWRsOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOiBBZGRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
azo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVz
aXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0
YXJ0KTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6
SW1hZ2VSZXNpemVyVGhyZWFkKTogIFJlZmFjdG9yZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJUaHJlYWQuaDogUmVmYWN0b3JlZC4KKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNl
dEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWlnaHQpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKiBodG1s
L1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjopOgorCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFVucmV2aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXgg
N2FjM2U1MS4uY2U1YzhmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAK
KysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQAogI2lu
Y2x1ZGUgIkpTSURCUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNJREJTdWNjZXNzRXZlbnQuY3Bw
IgogI2luY2x1ZGUgIkpTSW1hZ2VEYXRhLmNwcCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suY3BwIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmNwcCIKICNpbmNsdWRlICJKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIgogI2luY2x1ZGUg
IkpTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmNw
cCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQppbmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEwMDY0NAotLS0gYS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CkBAIC0yMjMsNiArMjIzLDggQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSURCUmVxdWVzdCBcCiAg
ICAgSURCU3VjY2Vzc0V2ZW50IFwKICAgICBJbWFnZURhdGEgXAorICAgIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjayBcCisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBcCiAgICAgSW5k
ZXhlZERhdGFiYXNlUmVxdWVzdCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0IFwKICAgICBJbnNw
ZWN0b3JCYWNrZW5kIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJD
b3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGU3ODU3NDkuLmVkYmFjN2EgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMjc1
LDYgKzI3NSw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxVTGlzdEVs
ZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogCVdlYkNv
cmUvaHRtbC9JbWFnZURhdGEuaWRsIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5pZGwgXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aWRsIFwKIAlXZWJDb3JlL2h0bWwvVGV4dE1ldHJpY3MuaWRsIFwKIAlXZWJDb3JlL2h0bWwvVmFs
aWRpdHlTdGF0ZS5pZGwgXAogCVdlYkNvcmUvaHRtbC9Wb2lkQ2FsbGJhY2suaWRsIFwKQEAgLTQ1
NSw2ICs0NTcsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvYmluZGluZ3MvanMv
SlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRN
TElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwKKwlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElt
YWdlRWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRF
bGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1l
bnRDdXN0b20uaCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3Vz
dG9tLmNwcCBcCkBAIC0xMjY3LDYgKzEyNzAsOCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdl
YkNvcmUvaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmggXAogCVdlYkNvcmUvaHRtbC9JbWFn
ZURhdGEuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmggXAorCVdlYkNvcmUvaHRtbC9J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAg
XAogCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAJV2ViQ29yZS9odG1sL0xh
YmVsc05vZGVMaXN0LmNwcCBcCkBAIC0xMjc0LDYgKzEyNzksOCBAQCB3ZWJjb3JlX3NvdXJjZXMg
Kz0gXAogCVdlYkNvcmUvaHRtbC9NZWRpYUVycm9yLmggXAogCVdlYkNvcmUvaHRtbC9QcmVsb2Fk
U2Nhbm5lci5jcHAgXAogCVdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKwlXZWJDb3Jl
L2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgg
XAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuY3BwIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJhbmdl
LmggXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0cmljcy5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggZjJjZGQ2Ny4uZjllYjIx
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkKQEAgLTE4Nyw2ICsxODcsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdodG1sL01lZGlhRXJyb3IuaWRsJywK
ICAgICAgICAgICAgICdodG1sL1RleHRNZXRyaWNzLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9U
aW1lUmFuZ2VzLmlkbCcsCkBAIC01NzEsNiArNTczLDcgQEAKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5k
aW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCcsCisgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwJywKQEAgLTE2NTYsNiArMTY1OSw4
IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmgnLAogICAgICAg
ICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEu
aCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgnLAorICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgnLAogICAgICAgICAg
ICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFn
ZVJlc2l6ZXJUaHJlYWQuaCcsCiAgICAgICAgICAgICAnaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAn
LApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBiL1dlYkNvcmUvV2ViQ29yZS5wcmkK
aW5kZXggMjVjOTVmZi4uNGU2ZWZlNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnByaQor
KysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC00MjIsNiArNDIyLDggQEAgSURMX0JJTkRJTkdT
ICs9IFwKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwKICAgICBodG1sL0hUTUxWaWRl
b0VsZW1lbnQuaWRsIFwKICAgICBodG1sL0ltYWdlRGF0YS5pZGwgXAorICAgIGh0bWwvSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCBcCiAgICAgaHRtbC9NZWRpYUVycm9yLmlkbCBcCiAgICAgaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogICAgIGh0bWwvVGltZVJhbmdlcy5pZGwgXApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggOTJhNzc1Yy4uMzU1MjMy
NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNvcmUu
cHJvCkBAIC0zMTUsNiArMzE1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgYmluZGluZ3MvanMvSlNI
VE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVT
ZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVu
dEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5j
cHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogICAg
IGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5n
cy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgXApAQCAtNzA0LDYgKzcwNSw3
IEBAIFNPVVJDRVMgKz0gXAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXAogICAgIGh0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwK
KyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIFwKICAgICBodG1sL1N0ZXBSYW5nZS5jcHAgXAog
ICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5jcHAgXAogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2Fn
ZS5jcHAgXApAQCAtMTQzNiw5ICsxNDM4LDEyIEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvSFRN
TFZpZGVvRWxlbWVudC5oIFwKICAgICBodG1sL0hUTUxWaWV3U291cmNlRG9jdW1lbnQuaCBcCiAg
ICAgaHRtbC9JbWFnZURhdGEuaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmggXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogICAgIGh0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmggXAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuaCBcCiAgICAg
aHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAgICAg
aHRtbC9TdGVwUmFuZ2UuaCBcCiAgICAgaHRtbC9UaW1lUmFuZ2VzLmggXAogICAgIGh0bWwvVmFs
aWRpdHlTdGF0ZS5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDYy
NGQ0MzMuLjAxN2UzN2IgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAt
Mzc2NjEsNiArMzc2NjEsMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJ
CVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCINCisJ
CQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJ
CQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyVGhyZWFkLmNw
cCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0zNzY4OSw2ICszNzY5NywxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6
ZU9wdGlvbnMuY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0
aXZlUGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQor
CQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFN0ZXBSYW5nZS5jcHAiDQogCQkJ
CT4NCiAJCQk8L0ZpbGU+DQpAQCAtNDAxMjgsNyArNDAxNDQsOSBAQAogCQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCiAJCQkJCVJlbGF0aXZlUGF0
aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNwcCINCisKIAkJCQkJ
Pg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQogCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQpA
QCAtNDAzODgsNiArNDA0MDYsNTkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJ
PC9GaWxlPg0KIAkJCQk8RmlsZQ0KKworCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAiDQorCQkJCQk+DQorCQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJ
CTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiDQorCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJ
CU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19JbnRl
cm5hbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQor
CQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJ
CQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0
cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVD
b25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0FsbHxX
aW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJ
PFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJ
PC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIg0K
IAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMzBiMjlkLi4yMjhjMDQwIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzUwOSw2ICszNTA5LDE1IEBACiAJ
CUIwMTQ5RTdFMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0ExMUE0QjIxNTAw
MTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi87IH07CiAJCUIwMTQ5RTdGMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdl
UmVzaXplclRocmVhZC5jcHAgKi87IH07CiAJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJ
bWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQu
aCAqLzsgfTsKKwkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwNEU2QkYxMTFD
NkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi87IH07CisJCUIwNEU2QkY1MTFDN0Yw
NzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3
QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRFNkJGNjExQzdGMDdFMDAyMTQyODMgLyog
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3Bw
ICovOyB9OworCQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTUxQTEx
Q0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi87IH07CisJCUIwQTcxNUI3MTFE
MDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjMxMUQwNDMxRTAw
M0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcx
NUI4MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI0MTFEMDQz
MUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjBB
NzE1QjkxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI1
MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87
IH07CisJCUIwQTcxNUJBMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmggKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA1
MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLzsgfTsKIAkJQjIwMTExMDgw
QUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NW
R0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BP
RFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICov
OyB9OwpAQCAtODg0NSw2ICs4ODU0LDE3IEBACiAJCUIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAv
KiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBB
c3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0OUU3
QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRBMTFBQjFF
QTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVt
ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIw
QTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTdBMTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjYxMUQw
NDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAv
KiBKU1NWR0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1NWR0FFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTEx
MDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQjIxMTI3QTUwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUE9EVHlwZVdyYXBwZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNjk5LDYgKzEzNzE5LDEwIEBACiAJCQkJ
QTc3OTc5MTMwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5
MTQwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5oICovLAogCQkJCUE3Nzk3OTE1MEQ2QjlE
MEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuaWRsICovLAorCQkJCUIwMTRBMDRBMTFBQjFFQTAwMDE5
NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1NzkxMUQw
MUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCUIw
MTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAq
LywKKwkJCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCAqLywKIAkJCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNp
emVyVGhyZWFkLmNwcCAqLywKIAkJCQlCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VS
ZXNpemVyVGhyZWFkLmggKi8sCiAJCQkJQTQ1NkZBMjQxMUFENEE4MzAwMjBCNDIwIC8qIExhYmVs
c05vZGVMaXN0LmNwcCAqLywKQEAgLTEzNzA5LDYgKzEzNzMzLDggQEAKIAkJCQlFNDQ2MTM5QzBD
RDYzMzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5pZGwgKi8sCiAJCQkJRTRENEFCRTAwRDc1NDJG
MDAwRjk2ODY5IC8qIFByZWxvYWRTY2FubmVyLmNwcCAqLywKIAkJCQlFNEQ0QUJFMTBENzU0MkYx
MDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIuaCAqLywKKwkJCQlCMEE3MTUxQTExQ0MyNEVFMDAz
QzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi8sCisJCQkJQjA0RTZCRjExMUM2RjBFOTAwMjE0
MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLywKIAkJCQlBNUFGQjM0RDExNTE1MUE3MDBCMDQ1Q0Ig
LyogU3RlcFJhbmdlLmNwcCAqLywKIAkJCQlBNUFGQjM0RTExNTE1MUE3MDBCMDQ1Q0IgLyogU3Rl
cFJhbmdlLmggKi8sCiAJCQkJQkNFRjQ1RTgwRTY4Nzc2NzAwMUMxMjg3IC8qIFRleHRNZXRyaWNz
LmggKi8sCkBAIC0xMzk0OCw2ICsxMzk3NCwxMCBAQAogCQkJCUU0NDYxNDBGMENENjgyNjkwMEZB
REE3NSAvKiBKU0hUTUxWaWRlb0VsZW1lbnQuaCAqLywKIAkJCQlBNzc5NzkyNDBENkI5RTY0MDAz
ODUxQjkgLyogSlNJbWFnZURhdGEuY3BwICovLAogCQkJCUE3Nzk3OTI1MEQ2QjlFNjQwMDM4NTFC
OSAvKiBKU0ltYWdlRGF0YS5oICovLAorCQkJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxNUI0MTFEMDQzMUUw
MDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3MTVC
NTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICov
LAorCQkJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oICovLAogCQkJCTQ5RUVDRUY4MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJy
YXkuY3BwICovLAogCQkJCTQ5RUVDRUY5MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJyYXku
aCAqLywKIAkJCQk0OUVFQ0VGNjEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQzMkFycmF5LmNwcCAq
LywKQEAgLTE1NTEzLDYgKzE1NTQzLDcgQEAKIAkJCQlCQzJFRDdBNDBDNkMwRjM2MDA5MjBCRkYg
LyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q0MUFCQTBDMDYwREU4
MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzJF
RDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgKi8s
CisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxl
bWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVDQTMwQzA3ODFCQjAwQ0QyMEYwIC8qIEpTSFRN
TE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCTQ0OEFEMjdBMEE0ODEzNzkwMDIzRDE3
OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCkBAIC0xODExOSw2ICsx
ODE1MCw4IEBACiAJCQkJMUE4MjBEOTIwQTEzRUJBNjAwQUY4NDNDIC8qIEltYWdlRG9jdW1lbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTA4OTU4MjU2MEU4NTdBN0UwMEY4MkM4MyAvKiBJbWFnZUxv
YWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM3RjQ0QTgwQjlFMzI0RTAwQTlEMDgxIC8qIElt
YWdlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4
MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRF
NkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4g
SGVhZGVycyAqLywKIAkJCQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVy
VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMjc1MzU3MTBCMDUzODE0MDAyQ0U2NEYgLyog
SW1hZ2VTb3VyY2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTRCMzQ4MDk0MEVFRjUwRDQwMEFDMUI0
MSAvKiBJbWFnZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLywKQEAgLTE4MzUxLDYgKzE4Mzg0LDgg
QEAKIAkJCQlDNTZDOTFBNzExOUQ5MTg3MDBERTRDRDkgLyogSlNJREJTdWNjZXNzRXZlbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCUJDNkM0OUY0MEQ3REJBMDUwMEZGQTU1OCAvKiBKU0ltYWdlQ29u
c3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3Nzk3OTI5MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzE1QjgxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjBBNzE1QkExMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDNUY0RjQxMTExOTMwNkMwMDBGREZBREQgLyogSlNJbmRl
eGVkRGF0YWJhc2VSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQk3QTBFNzZEQjEwQkYwNTk4
MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTQx
RjA2MENFMEY1RUVCMkIwMEEwN0VBQyAvKiBKU0luc3BlY3RvckJhY2tlbmQuaCBpbiBIZWFkZXJz
ICovLApAQCAtMTg4ODUsNiArMTg5MjAsNyBAQAogCQkJCUE4OUNDQzUzMEY0NEU5ODEwMEI1REEx
MCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMz
MDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQ0IxNkMyRjA5NzlDM0JEMDA0Njc3NDEgLyogUmVxdWVzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMu
aCBpbiBIZWFkZXJzICovLAogCQkJCTkzNEY3MTQyMEQ1QTZGNDQwMDAxOEQ2OSAvKiBSZXNvdXJj
ZUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyog
UmVzb3VyY2VFcnJvckJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3Njc5MENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMDY1NCw2ICsy
MDY5MCw3IEBACiAJCQkJQkM0OTE4QzgwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFtZUVs
ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyRUQ2NTAwQzZCQzQ4QzAwOTIwQkZGIC8q
IEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFFMkFB
OTcwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3RTk4MEExQTgzRTMwMDdGQjhDNSAvKiBK
U0hUTUxJbnB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNDNDM4NzgwRTg4NkND
NzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkxQUUyQUE5OTBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSXNJbmRleEVsZW1lbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yMDcxMiw2ICsyMDc0OSw4IEBACiAJCQkJQkM2QzQ5RjMwRDdE
QkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlBNzc5NzkyODBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTdEMDMxOEUwRTkzNTQwMzAwRTI0QUNEIC8qIEpTSW1hZ2VEYXRhQ3VzdG9tLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNUI3MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1QjkxMUQw
NDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUM1RjRGNDEwMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFz
ZVJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2REExMEJGMDU5ODAwQTAyNzZF
IC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMEU3NkQ1
MTBCRjA1MDcwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTIxMjU5LDYgKzIxMjk4LDcgQEAKIAkJCQlBODlDQ0M1MjBGNDRFOTgxMDBC
NURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTMzMDlFMDkwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzJFMDk3OUMzQkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNTFCMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNp
emVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzNEY3MTNFMEQ1QTZGMjgwMDAxOEQ2
OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MTRDNzY1MDBD
RTkyMzRFMDA3RUYzQ0QgLyogUmVzb3VyY2VFcnJvck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTUxNEM3Njc4MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5jcHAgaW4gU291cmNl
cyAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9t
LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTYyNTViCi0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20u
Y3BwCkBAIC0wLDAgKzEsMTY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQorI2luY2x1ZGUgIkpTSFRNTEltYWdlRWxlbWVudC5oIgorCisjaW5jbHVkZSAi
RE9NV2luZG93LmgiCisjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgorI2luY2x1ZGUgIkpT
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgorCisjaW5jbHVkZSA8
cnVudGltZS9KU0Z1bmN0aW9uLmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2lu
Y2x1ZGUgPHd0Zi9HZXRQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9SZWZQdHIuaD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitzdGF0aWMgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+
IGNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9N
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgaWYgKCF2
YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0
aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7
Cit9CisKK3N0YXRpYyBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIC8vIEFyZ3VtZW50IGlz
IG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93
ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJldHVybiAw
OworCisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAg
ICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsK
KyAgICByZXR1cm4gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpjcmVhdGUob2JqZWN0LCBn
bG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVh
dGVSZXNpemVPcHRpb25zKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9IFJlc2l6ZU9wdGlvbnM6OmNyZWF0
ZSgpOworCisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBpcyBh
bGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmluZWRP
ck51bGwoKSkgeworICAgICAgICAvLyBVc2UgZGVmYXVsdCBvcHRpb25zLgorICAgICAgICByZXR1
cm4gcmVzaXplT3B0aW9ucy5yZWxlYXNlKCk7CisgICAgfQorICAgIEpTT2JqZWN0KiBvYmplY3Qg
PSB2YWx1ZS50b09iamVjdChleGVjKTsKKworICAgIEpTVmFsdWUgd2lkdGggPSBvYmplY3QtPmdl
dChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJ3aWR0aCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghd2lkdGguaXNVbmRlZmluZWQo
KSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRXaWR0aCh3aWR0aC50b0Zsb2F0KGV4ZWMp
KTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBoZWlnaHQgPSBvYmplY3QtPmdldChleGVjLCBJZGVu
dGlmaWVyKGV4ZWMsICJoZWlnaHQiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWhlaWdodC5pc1VuZGVmaW5lZCgpKSB7CisgICAg
ICAgIHJlc2l6ZU9wdGlvbnMtPnNldEhlaWdodChoZWlnaHQudG9GbG9hdChleGVjKSk7CisgICAg
ICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
IH0KKworICAgIEpTVmFsdWUgY29tcHJlc3Npb25MZXZlbCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElk
ZW50aWZpZXIoZXhlYywgImNvbXByZXNzaW9uTGV2ZWwiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWNvbXByZXNzaW9uTGV2ZWwu
aXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRDb21wcmVzc2lvbkxl
dmVsKGNvbXByZXNzaW9uTGV2ZWwudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhl
YywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRl
ZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihw
cmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmll
bnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
biAwOworICAgIGlmICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNp
emVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRp
b24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMu
cmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1h
Z2UoRXhlY1N0YXRlKiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgw
KS50b1N0cmluZyhleGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2so
ZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFs
T2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0Nh
bGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNh
bGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2Fz
dDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMt
PmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9w
dGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OworICAgIEFTU0VSVChyZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGlt
cCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Vi
a2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2Fs
bGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERP
TUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBi
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkx
MS4uNjkwMWQ1NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCkBAIC0yMTc5LDcgKzIxNzksMTMgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRh
dGlvbgogCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAg
ICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFt
ZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGFyZ3Mu
YXBwZW5kKCIpOworICAgICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmlu
ZyIpIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJqc1N0cmluZyhl
eGVjLCAke3BhcmFtTmFtZX0pIik7CisgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAidG9KUyhleGVjLCAke3BhcmFtTmFtZX0p
Iik7CisgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIik7XG4iKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICJcbiAgICBib29sIHJhaXNlZEV4Y2VwdGlvbiA9IGZhbHNlO1xuIik7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAgYi9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAKaW5kZXgg
ZGY0MDNjNi4uMDQzYTZlZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENhbGxiYWNrLmNwcApAQCAtODksNyArODksNyBAQCBib29sIEpTVGVzdENh
bGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBj
b250ZXh0LCBDbAogICAgIEV4ZWNTdGF0ZSogZXhlYyA9IGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhl
YygpOwogICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CiAgICAgYXJncy5hcHBlbmQodG9K
UyhleGVjLCBjbGFzczJQYXJhbSkpOwotICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgc3RyQXJn
KSk7CisgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgc3RyQXJnKSk7CiAKICAgICBib29s
IHJhaXNlZEV4Y2VwdGlvbiA9IGZhbHNlOwogICAgIG1fZGF0YS0+aW52b2tlQ2FsbGJhY2soYXJn
cywgJnJhaXNlZEV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFn
ZVJlc2l6ZXIuY3BwIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAppbmRleCA0
YmI3NGM5Li45ZjhhNTY0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKQEAgLTM0LDI4
ICszNCwzMiBAQAogI2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCiAKICNpbmNsdWRlICJD
YWNoZWRJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNp
bmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJJbWFnZVJl
c2l6ZXJUaHJlYWQuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCiAjaW5jbHVkZSAiU2hh
cmVkQnVmZmVyLmgiCisKICNpbmNsdWRlIDx1dGlsaXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLVBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IEFzeW5jSW1hZ2VSZXNpemVyOjpjcmVh
dGUoQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNp
emUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1
ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RS
YXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCit2b2lkIEFz
eW5jSW1hZ2VSZXNpemVyOjpzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVj
dXRpb25Db250ZXh0LCBDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0
VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxs
YmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNr
LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMpCiB7Ci0gICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBBc3luY0ltYWdlUmVzaXplcihjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwg
ZGVzaXJlZEJvdW5kcywgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCBxdWFsaXR5LCBh
c3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24pKTsKKyAgICAgbmV3IEFzeW5jSW1h
Z2VSZXNpemVyKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIGNhY2hlZEltYWdlLCBvdXRwdXRUeXBl
LCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpOwogfQogCi1B
c3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIoQ2FjaGVkSW1hZ2UqIGNhY2hlZElt
YWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0
VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBx
dWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25P
cHRpb24gb3JpZW50YXRpb25PcHRpb24pCitBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJl
c2l6ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2Fj
aGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNp
emVPcHRpb25zPiByZXNpemVPcHRpb25zKQogICAgIDogbV9jYWNoZWRJbWFnZShjYWNoZWRJbWFn
ZSkKKyAgICAsIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dChzY3JpcHRFeGVjdXRpb25Db250ZXh0
KQorICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5cGUpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFj
ayhzdWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykK
LSAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQotICAgICwgbV9kZXNpcmVkQm91bmRzKGRl
c2lyZWRCb3VuZHMpCi0gICAgLCBtX3F1YWxpdHkocXVhbGl0eSkKLSAgICAsIG1fYXNwZWN0UmF0
aW9PcHRpb24oYXNwZWN0UmF0aW9PcHRpb24pCi0gICAgLCBtX29yaWVudGF0aW9uT3B0aW9uKG9y
aWVudGF0aW9uT3B0aW9uKQorICAgICwgbV9yZXNpemVPcHRpb25zKHJlc2l6ZU9wdGlvbnMpCiB7
Ci0gICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmlzT2JqZWN0KCkpOworICAgIC8vIG1fY2Fs
bGJhY2sgY29udHJvbHMgdGhlIGxpZmV0aW1lIG9mIEFzeW5jSW1hZ2VSZXNpemVyLgorICAgIG1f
Y2FsbGJhY2tJbmZvID0gbmV3IENhbGxiYWNrSW5mbyh0aGlzKTsKKyAgICBBU1NFUlQobV9zdWNj
ZXNzQ2FsbGJhY2suZ2V0KCkpOwogICAgIG1fY2FjaGVkSW1hZ2UtPmFkZENsaWVudCh0aGlzKTsK
IH0KIApAQCAtNjcsMTEgKzcxLDIxIEBAIHZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZp
bmlzaGVkKENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKIHsKICAgICBSZWZQdHI8U2hh
cmVkQnVmZmVyPiBpbWFnZURhdGEgPSBjYWNoZWRSZXNvdXJjZS0+ZGF0YSgpLT5jb3B5KCk7CiAg
ICAgY2FjaGVkUmVzb3VyY2UtPnJlbW92ZUNsaWVudCh0aGlzKTsKLSAgICBDYWxsYmFja0luZm8q
IGNhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7Ci0gICAgaWYgKCFJbWFnZVJl
c2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgY2FsbGJhY2tJbmZvLCBtX291dHB1dFR5cGUs
IG1fZGVzaXJlZEJvdW5kcywgbV9xdWFsaXR5LCBtX2FzcGVjdFJhdGlvT3B0aW9uLCBtX29yaWVu
dGF0aW9uT3B0aW9uKSkKKyAgICBpZiAoIUltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoaW1hZ2VE
YXRhLCBtX2NhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBJbnRTaXplKG1fcmVzaXplT3B0aW9u
cy0+d2lkdGgoKSwgbV9yZXNpemVPcHRpb25zLT5oZWlnaHQoKSksIG1fcmVzaXplT3B0aW9ucy0+
Y29tcHJlc3Npb25MZXZlbCgpLCBtX3Jlc2l6ZU9wdGlvbnMtPmFzcGVjdFJhdGlvT3B0aW9uKCks
IG1fcmVzaXplT3B0aW9ucy0+b3JpZW50YXRpb25PcHRpb24oKSkpCiAgICAgICAgIHJlc2l6ZUVy
cm9yKCk7CiB9CiAKK3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUNvbXBsZXRlKFJlZlB0
cjxCbG9iPiBibG9iKQoreworICAgIG1fc3VjY2Vzc0NhbGxiYWNrLT5oYW5kbGVFdmVudChtX3Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIGJsb2IuZ2V0KCkpOworfQorCit2b2lkIEFzeW5jSW1hZ2VS
ZXNpemVyOjpyZXNpemVFcnJvcigpCit7CisgICAgaWYgKG1fZXJyb3JDYWxsYmFjay5nZXQoKSkK
KyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQsICJVbmV4cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6aW5nIGltYWdlIik7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmggYi9XZWJDb3JlL2h0
bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaAppbmRleCAzZWVlZWFkLi5jNDIyODQyIDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaAorKysgYi9XZWJDb3JlL2h0bWwvQXN5
bmNJbWFnZVJlc2l6ZXIuaApAQCAtNDAsNyArNDAsMTEgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgQ2FjaGVkSW1hZ2U7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOwor
Y2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOwogY2xhc3MgSW1hZ2VSZXNpemVyVGhy
ZWFkOworY2xhc3MgUmVzaXplT3B0aW9uczsKKwogCiAvLyBBc3luY0ltYWdlUmVzaXplciB3YWl0
cyBmb3IgdGhlIENhY2hlZEltYWdlIHRoYXQgaXMgcGFzc2VkIGluIHRvIGxvYWQgY29tcGxldGVs
eSwKIC8vIHRoZW4gc3RhcnRzIGFuIEltYWdlUmVzaXplclRocmVhZCB0byByZXNpemUgdGhlIGlt
YWdlLiBPbmNlIGNyZWF0ZWQsIEltYWdlUmVzaXplclRocmVhZApAQCAtNDgsNTYgKzUyLDQyIEBA
IGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKIC8vIG9jY3VyLCBib3RoIG9iamVjdHMgYXJlIGRl
c3Ryb3llZC4gSWYgdGhlIGRvY3VtZW50IGlzIGRlc3Ryb3llZCBkdXJpbmcgcmVzaXppbmcsCiAv
LyBBc3luY0ltYWdlUmVzaXplciB3aWxsIHJlY2VpdmUgYSBub3RpZmljYXRpb24gYW5kIHN1YnNl
cXVlbnRseSBibG9jayB0aGUgY2FsbGJhY2tzIGZyb20KIC8vIG9jY3VycmluZy4KLWNsYXNzIEFz
eW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50LCBwdWJsaWMgUmVm
Q291bnRlZDxBc3luY0ltYWdlUmVzaXplcj4geworY2xhc3MgQXN5bmNJbWFnZVJlc2l6ZXIgOiBw
dWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQgewogcHVibGljOgogICAgIHN0cnVjdCBDYWxsYmFj
a0luZm8gewotICAgICAgICBDYWxsYmFja0luZm8oUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXpl
cj4gYXN5bmNJbWFnZVJlc2l6ZXIpCisgICAgICAgIENhbGxiYWNrSW5mbyhQYXNzT3duUHRyPEFz
eW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAgICAgIDogYXN5bmNJ
bWFnZVJlc2l6ZXIoYXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICAsIGJsb2IoMCkKICAg
ICAgICAgewogICAgICAgICB9CiAKLSAgICAgICAgUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBh
c3luY0ltYWdlUmVzaXplcjsKKyAgICAgICAgT3duUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBhc3lu
Y0ltYWdlUmVzaXplcjsKICAgICAgICAgUmVmUHRyPEJsb2I+IGJsb2I7CiAgICAgfTsKLSAgICAK
KwogICAgIGVudW0gT3V0cHV0VHlwZSB7CiAgICAgICAgIEpQRUcsCiAgICAgICAgIFBORwogICAg
IH07CiAKLSAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKLSAgICAgICAgUHJlc2VydmVBc3Bl
Y3RSYXRpbywKLSAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KLSAgICB9OwotCi0gICAgZW51bSBP
cmllbnRhdGlvbk9wdGlvbiB7Ci0gICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKLSAgICAgICAg
SWdub3JlT3JpZW50YXRpb24KLSAgICB9OwotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8QXN5bmNJ
bWFnZVJlc2l6ZXI+IGNyZWF0ZShDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVz
aXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJv
ckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25P
cHRpb24pOworICAgIHN0YXRpYyB2b2lkIHN0YXJ0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBD
YWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0
cjxSZXNpemVPcHRpb25zPik7CiAgICAgfkFzeW5jSW1hZ2VSZXNpemVyKCk7CiAKLSAgICAvLyBG
SVhNRTogSW5zZXJ0IG92ZXJyaWRlIGZ1bmN0aW9uIGZvciBub3RpZmljYXRpb24gb2YgZG9jdW1l
bnQgZGVzdHJ1Y3Rpb24gKGNoYW5nZSBtX2NhbGxiYWNrc09rKS4KLQotICAgIHZvaWQgcmVzaXpl
Q29tcGxldGUoUmVmUHRyPEJsb2I+KSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAq
LyB9Ci0gICAgdm9pZCByZXNpemVFcnJvcigpIHsgLyogRklYTUU6IE5vdCB5ZXQgaW1wbGVtZW50
ZWQuICovIH0KKyAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPik7CisgICAgdm9p
ZCByZXNpemVFcnJvcigpOwogCiBwcml2YXRlOgotICAgIEFzeW5jSW1hZ2VSZXNpemVyKENhY2hl
ZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBz
dWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHks
IEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbik7CisgICAgQXN5bmNJbWFnZVJl
c2l6ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+KTsKICAgICB2
aXJ0dWFsIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsKIAogICAgIENhY2hl
ZEltYWdlKiBtX2NhY2hlZEltYWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3VjY2Vzc0NhbGxiYWNr
OwotICAgIFNjcmlwdFZhbHVlIG1fZXJyb3JDYWxsYmFjazsKLSAgICAKLSAgICAvLyBQYXJhbWV0
ZXJzIHRvIHBhc3MgaW50byBJbWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2FsbGJhY2tJbmZvKiBt
X2NhbGxiYWNrSW5mbzsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1
dGlvbkNvbnRleHQ7CisKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKLSAgICBJbnRTaXpl
IG1fZGVzaXJlZEJvdW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXNwZWN0UmF0aW9P
cHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVu
dGF0aW9uT3B0aW9uOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IG1f
c3VjY2Vzc0NhbGxiYWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBt
X2Vycm9yQ2FsbGJhY2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IG1fcmVzaXplT3B0aW9u
czsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNw
cAppbmRleCA1ZDU5MjNkLi4yZmY1MWY2IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTElt
YWdlRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCkBA
IC0zMiw5ICszMiwxNyBAQAogI2luY2x1ZGUgIkhUTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhU
TUxGb3JtRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkltYWdl
LmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIklt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgogI2luY2x1ZGUgIlJlbmRlckltYWdlLmgiCisj
aW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNjcmlwdEV2ZW50TGlzdGVuZXIu
aCIKIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNp
emVyLmgiCisjZW5kaWYKKwogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewpAQCAtNDUxLDQgKzQ1OSwzNCBAQCB2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OndpbGxNb3Zl
VG9OZXdPd25lckRvY3VtZW50KCkKICAgICBIVE1MRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVy
RG9jdW1lbnQoKTsKIH0KIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCit2b2lkIEhUTUxJ
bWFnZUVsZW1lbnQ6OndlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6
ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmICgh
c3JjKCkuaXNWYWxpZCgpKSB7CisgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBUaGUgdGFpbnRzQ2FudmFzIG1ldGhvZCBhbHNv
IGFsbG93cyBkYXRhIFVSTHMuCisgICAgaWYgKGRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkt
PnRhaW50c0NhbnZhcyhzcmMoKSkpIHsKKyAgICAgICAgZWMgPSBTRUNVUklUWV9FUlI7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBv
dXRwdXRUeXBlOworICAgIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2UvanBlZyIpCisgICAgICAgIG91
dHB1dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6SlBFRzsKKyAgICBlbHNlIGlmIChtaW1lVHlw
ZSA9PSAiaW1hZ2UvcG5nIikKKyAgICAgICAgb3V0cHV0VHlwZSA9IEFzeW5jSW1hZ2VSZXNpemVy
OjpQTkc7CisgICAgZWxzZSB7CisgICAgICAgIGVjID0gTk9UX1NVUFBPUlRFRF9FUlI7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQoc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpLCBtX2ltYWdlTG9hZGVyLmltYWdlKCksIG91dHB1dFR5cGUsIHN1
Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcmVzaXplT3B0aW9ucyk7Cit9CisKKyNlbmRp
ZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwogfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1s
L0hUTUxJbWFnZUVsZW1lbnQuaCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKaW5k
ZXggNjJkMzE1Yy4uNDExYmJiMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuaAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCkBAIC0zMSw2ICsz
MSw5IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKK2Ns
YXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2s7CitjbGFzcyBSZXNpemVPcHRpb25zOwogCiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50
IDogcHVibGljIEhUTUxFbGVtZW50IHsKICAgICBmcmllbmQgY2xhc3MgSFRNTEZvcm1FbGVtZW50
OwpAQCAtODksNiArOTIsMTIgQEAgcHVibGljOgogCiAgICAgYm9vbCBoYXZlRmlyZWRMb2FkRXZl
bnQoKSBjb25zdCB7IHJldHVybiBtX2ltYWdlTG9hZGVyLmhhdmVGaXJlZExvYWRFdmVudCgpOyB9
CiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworICAgIHZvaWQgd2Via2l0R2V0SW1hZ2Uo
U3RyaW5nIG1pbWVUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4s
IFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXpl
T3B0aW9ucz4sIEV4Y2VwdGlvbkNvZGUmKTsKKworI2VuZGlmCisKIHByb3RlY3RlZDoKICAgICBI
VE1MSW1hZ2VFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIEhUTUxGb3Jt
RWxlbWVudCogPSAwKTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1l
bnQuaWRsIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCmluZGV4IDBmYzcyNzEu
LjVkYTM1MzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAor
KysgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKQEAgLTQ5LDYgKzQ5LDE0IEBA
IG1vZHVsZSBodG1sIHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBhbHRE
aXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRlSW1h
Z2VVUkw7CiAjZW5kaWYKKworI2lmIGRlZmluZWQoRU5BQkxFX0lNQUdFX1JFU0laRVIpICYmIEVO
QUJMRV9JTUFHRV9SRVNJWkVSCisjaWYgZGVmaW5lZChMQU5HVUFHRV9KQVZBU0NSSVBUKSAmJiBM
QU5HVUFHRV9KQVZBU0NSSVBUCisgICAgICAgIC8vIEZ1bmN0aW9ucworICAgICAgICBbQ3VzdG9t
XSB2b2lkIHdlYmtpdEdldEltYWdlKGluIERPTVN0cmluZyBtaW1lVHlwZSwgaW4gSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW09wdGlvbmFsXSBpbiBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2ssIFtPcHRpb25hbF0gaW4gUmVzaXplT3B0
aW9ucyBvcHRpb25zKQorICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CisjZW5kaWYK
KyNlbmRpZgogICAgIH07CiAKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2ZmZmODYKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oCkBAIC0w
LDAgKzEsNTMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1l
dDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaAorI2RlZmluZSBJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQor
CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OworY2xhc3MgU3RyaW5nOworCitjbGFzcyBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjaz4geworcHVibGljOgorICAgIHZpcnR1YWwgfkltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIGNvbnN0IFN0cmluZyYpID0gMDsKK307CisKK30KKworI2VuZGlmIC8vIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19o
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwg
Yi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmZjY2JmOAotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbApAQCAtMCwwICsxLDM4IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAg
ICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAq
IGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4g
bm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRP
UlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05F
UiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisg
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9k
dWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPUlNQUdF
X1JFU0laRVIsCisgICAgICAgIENhbGxiYWNrCisgICAgXSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrIHsKKyAgICAgICAgYm9vbGVhbiBoYW5kbGVFdmVudChpbiBET01TdHJpbmcgZXJyb3IpOwor
ICAgIH07Cit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjQ0MDBmMwotLS0gL2Rldi9udWxsCisr
KyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaApAQCAtMCwwICsx
LDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6Cisg
KgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAq
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29v
Z2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
CisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorI2RlZmluZSBJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2Ns
YXNzIEJsb2I7CitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OworY2xhc3MgU3RyaW5nOwor
CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZl
bnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEJsb2IqKSA9IDA7Cit9OworCit9CisKKyNlbmRp
ZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5pZGwgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMGZkODdmCi0tLSAvZGV2L251
bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKQEAg
LTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICog
bWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1l
IG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICog
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAq
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBD
b25kaXRpb25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHsKKyAgICAgICAgYm9vbGVhbiBoYW5kbGVFdmVudChpbiBC
bG9iIGJsb2IpOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyVGhyZWFkLmNwcCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwCmluZGV4
IDFiYWU2YTAuLmNkOTlkY2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJU
aHJlYWQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwCkBAIC0z
Niw2ICszNiw3IEBACiAjaW5jbHVkZSAiQml0bWFwSW1hZ2UuaCIKICNpbmNsdWRlICJJbWFnZS5o
IgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0eT4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsNyArNTEsNyBAQCBzdGF0aWMgdm9pZCByZXR1cm5CbG9i
T3JFcnJvcih2b2lkKiBjYWxsYmFja0luZm9ybWF0aW9uKQogICAgIGRlbGV0ZSBjYWxsYmFja0lu
Zm87CiB9CiAKLWJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxs
YmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNp
emUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVj
dFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50
YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCitib29sIEltYWdlUmVzaXplclRocmVhZDo6
c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6
ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0
VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIFJl
c2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBSZXNpemVP
cHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKIHsKICAgICBJbWFn
ZVJlc2l6ZXJUaHJlYWQqIGltYWdlUmVzaXplclRocmVhZCA9IG5ldyBJbWFnZVJlc2l6ZXJUaHJl
YWQoY2FsbGJhY2tJbmZvLCBvdXRwdXRUeXBlLCBkZXNpcmVkQm91bmRzLCBxdWFsaXR5LCBhc3Bl
Y3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24pOwogCkBAIC02Miw3ICs2Myw3IEBAIGJv
b2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1h
Z2VEYXRhLCBBc3luY0ltYWdlUmVzCiAgICAgcmV0dXJuIGltYWdlUmVzaXplclRocmVhZC0+bV90
aHJlYWRJRDsKIH0KIAotSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5
bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVz
aXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0
IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRp
b09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9u
T3B0aW9uKQorSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFn
ZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6
T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxp
dHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBS
ZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKICAgICA6
IG1fdGhyZWFkSUQoMCkKICAgICAsIG1fY2FsbGJhY2tJbmZvKGNhbGxiYWNrSW5mbykKICAgICAs
IG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclRocmVhZC5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCmluZGV4
IGFlNWFkZTUuLjYxMDBiNTUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJU
aHJlYWQuaAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKQEAgLTM0LDYg
KzM0LDcgQEAKICNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKIAogI2luY2x1ZGUgIkFzeW5jSW1h
Z2VSZXNpemVyLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKQEAgLTQyLDExICs0MywxMSBAQCBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKIGNsYXNz
IEltYWdlUmVzaXplclRocmVhZCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIGJvb2wgc3RhcnQoUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxi
YWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRC
b3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlv
biwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMgYm9v
bCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVz
aXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNp
emUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0
aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICB+SW1hZ2VS
ZXNpemVyVGhyZWFkKCk7CiAKIHByaXZhdGU6Ci0gICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5j
SW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlw
ZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXpl
cjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlv
bik7CisgICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0lu
Zm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRz
LCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXpl
T3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24pOwogICAgIHN0YXRpYyB2b2lkKiBpbWFnZVJlc2l6
ZXJUaHJlYWRTdGFydCh2b2lkKik7CiAgICAgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAK
QEAgLTU5LDggKzYwLDggQEAgcHJpdmF0ZToKICAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0
VHlwZSBtX291dHB1dFR5cGU7CiAgICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7CiAgICAgZmxv
YXQgbV9xdWFsaXR5OwotICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBt
X2FzcGVjdFJhdGlvT3B0aW9uOwotICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9w
dGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworICAgIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlv
T3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgUmVzaXplT3B0aW9uczo6T3JpZW50YXRp
b25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcCBiL1dlYkNvcmUv
aHRtbC9SZXNpemVPcHRpb25zLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5iMDdiY2I5Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMu
Y3BwCkBAIC0wLDAgKzEsNzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
ICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdF
X1JFU0laRVIpCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgorCisjaW5jbHVkZSAiUGxhdGZv
cm1TdHJpbmcuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCisvLyBJbmNsdXNpdmUgbGltaXRz
Oworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25zTG93ZXJMaW1pdCA9IDE7CitzdGF0aWMgY29u
c3QgaW50IGRpbWVuc2lvbnNVcHBlckxpbWl0ID0gMzI3Njc7CitzdGF0aWMgY29uc3QgZmxvYXQg
Y29tcHJlc3Npb25Mb3dlckxpbWl0ID0gMC4wZjsKK3N0YXRpYyBjb25zdCBmbG9hdCBjb21wcmVz
c2lvblVwcGVyTGltaXQgPSAxLjBmOworCitzdGF0aWMgY29uc3QgZmxvYXQgZGVmYXVsdENvbXBy
ZXNzaW9uID0gMC44NWY7CisKK1Bhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gUmVzaXplT3B0aW9u
czo6Y3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFJlc2l6ZU9wdGlvbnMoKSk7IH0KKwor
UmVzaXplT3B0aW9uczo6UmVzaXplT3B0aW9ucygpCisgICAgOiBtX3dpZHRoKCkKKyAgICAsIG1f
aGVpZ2h0KCkKKyAgICAsIG1fY29tcHJlc3Npb25MZXZlbCgpCisgICAgLCBtX2FzcGVjdFJhdGlv
T3B0aW9uKElnbm9yZUFzcGVjdFJhdGlvKQorICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihJZ25v
cmVPcmllbnRhdGlvbikKK3sKK30KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRXaWR0aChpbnQg
d2lkdGgpIHsgbV93aWR0aCA9IHdpZHRoID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYmIHdpZHRo
IDw9IGRpbWVuc2lvbnNVcHBlckxpbWl0ID8gd2lkdGggOiAwOyB9CitpbnQgUmVzaXplT3B0aW9u
czo6d2lkdGgoKSB7IHJldHVybiBtX3dpZHRoOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0
SGVpZ2h0KGludCBoZWlnaHQpIHsgbV9oZWlnaHQgPSBoZWlnaHQgPj0gZGltZW5zaW9uc0xvd2Vy
TGltaXQgJiYgaGVpZ2h0IDw9IGRpbWVuc2lvbnNVcHBlckxpbWl0ID8gaGVpZ2h0IDogMDsgfQor
aW50IFJlc2l6ZU9wdGlvbnM6OmhlaWdodCgpIHsgcmV0dXJuIG1faGVpZ2h0OyB9CisKK3ZvaWQg
UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbChmbG9hdCBjb21wcmVzc2lvbkxldmVs
KSB7IG1fY29tcHJlc3Npb25MZXZlbCA9IGNvbXByZXNzaW9uTGV2ZWwgPj0gY29tcHJlc3Npb25M
b3dlckxpbWl0ICYmIGNvbXByZXNzaW9uTGV2ZWwgPD0gY29tcHJlc3Npb25VcHBlckxpbWl0ID8g
Y29tcHJlc3Npb25MZXZlbCA6IGRlZmF1bHRDb21wcmVzc2lvbjsgfQorZmxvYXQgUmVzaXplT3B0
aW9uczo6Y29tcHJlc3Npb25MZXZlbCgpIHsgcmV0dXJuIG1fY29tcHJlc3Npb25MZXZlbDsgfQor
Cit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVB
c3BlY3RSYXRpbykgeyBtX2FzcGVjdFJhdGlvT3B0aW9uID0gcHJlc2VydmVBc3BlY3RSYXRpbyA/
IFByZXNlcnZlQXNwZWN0UmF0aW8gOiBJZ25vcmVBc3BlY3RSYXRpbzsgfQorUmVzaXplT3B0aW9u
czo6QXNwZWN0UmF0aW9PcHRpb24gUmVzaXplT3B0aW9uczo6YXNwZWN0UmF0aW9PcHRpb24oKSB7
IHJldHVybiBtX2FzcGVjdFJhdGlvT3B0aW9uOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0
T3JpZW50YXRpb25PcHRpb24oU3RyaW5nIG9yaWVudGF0aW9uT3B0aW9uKSB7IG1fb3JpZW50YXRp
b25PcHRpb24gPSBvcmllbnRhdGlvbk9wdGlvbiA9PSAiYXV0byIgPyBDb3JyZWN0T3JpZW50YXRp
b24gOiBJZ25vcmVPcmllbnRhdGlvbjsgfQorUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRp
b24gUmVzaXplT3B0aW9uczo6b3JpZW50YXRpb25PcHRpb24oKSB7IHJldHVybiBtX29yaWVudGF0
aW9uT3B0aW9uOyB9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMu
aCBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uNTMwY2M5NQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNp
emVPcHRpb25zLmgKQEAgLTAsMCArMSw4NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBO
ZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgUmVzaXplT3B0aW9uc19oCisjZGVm
aW5lIFJlc2l6ZU9wdGlvbnNfaAorCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU3RyaW5nOworCitjbGFzcyBSZXNpemVPcHRpb25z
IDogcHVibGljIFJlZkNvdW50ZWQ8UmVzaXplT3B0aW9ucz4geworcHVibGljOgorICAgIGVudW0g
QXNwZWN0UmF0aW9PcHRpb24geworICAgICAgICBQcmVzZXJ2ZUFzcGVjdFJhdGlvLAorICAgICAg
ICBJZ25vcmVBc3BlY3RSYXRpbworICAgIH07CisKKyAgICBlbnVtIE9yaWVudGF0aW9uT3B0aW9u
IHsKKyAgICAgICAgQ29ycmVjdE9yaWVudGF0aW9uLAorICAgICAgICBJZ25vcmVPcmllbnRhdGlv
bgorICAgIH07CisKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGUo
KTsKKworICAgIHZvaWQgc2V0V2lkdGgoaW50IHdpZHRoKTsKKyAgICBpbnQgd2lkdGgoKTsKKwor
ICAgIHZvaWQgc2V0SGVpZ2h0KGludCBoZWlnaHQpOworICAgIGludCBoZWlnaHQoKTsKKworICAg
IHZvaWQgc2V0Q29tcHJlc3Npb25MZXZlbChmbG9hdCBjb21wcmVzc2lvbkxldmVsKTsKKyAgICBm
bG9hdCBjb21wcmVzc2lvbkxldmVsKCk7CisKKyAgICB2b2lkIHNldEFzcGVjdFJhdGlvT3B0aW9u
KGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbyk7CisgICAgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24oKTsKKworICAgIHZvaWQgc2V0T3JpZW50YXRpb25PcHRpb24oU3RyaW5nIG9y
aWVudGF0aW9uT3B0aW9uKTsKKyAgICBPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlv
bigpOworCitwcml2YXRlOgorICAgIFJlc2l6ZU9wdGlvbnMoKTsKKworICAgIC8vIElmIG1fd2lk
dGggb3IgbV9oZWlnaHQgPT0gMCwgdGhhdCBkaW1lbnNpb24gd2lsbCBub3QgY2hhbmdlIGV4cGxp
Y2l0bHkgZHVyaW5nIHJlc2l6aW5nLgorICAgIGludCBtX3dpZHRoOworICAgIGludCBtX2hlaWdo
dDsKKyAgICBmbG9hdCBtX2NvbXByZXNzaW9uTGV2ZWw7CisgICAgQXNwZWN0UmF0aW9PcHRpb24g
bV9hc3BlY3RSYXRpb09wdGlvbjsKKyAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9u
T3B0aW9uOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBSZXNpemVPcHRpb25zX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59383</attachid>
            <date>2010-06-22 10:01:19 -0700</date>
            <delta_ts>2010-06-22 10:38:05 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>97714</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5jMTJlZDFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlw
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2Fi
bGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1h
Z2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjE1OGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMDcgQEAKKworVGVzdHMgdGhlIGFjY2Vw
dGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0
aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UobnVsbCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01B
VENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4
Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAi
LCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IE5PVF9TVVBQT1JURURfRVJS
OiBET00gRXhjZXB0aW9uIDkuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
dHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCAic3RyaW5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9u
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBl
bXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6bnVsbH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0eUZ1bmN0aW9u
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6SW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7d2lkdGg6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
dmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZp
bmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6e319KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRy
dWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29t
cHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2Vy
dmVBc3BlY3RSYXRpbzplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246e319KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rp
b259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10
eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIy
YzUxYzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKQEAgLTAs
MCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4i
PgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9
InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi42ZDQ3ZWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3Vy
Y2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93
bjogRXJyb3I6IElOVkFMSURfU1RBVEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxl
ZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzY1MjM2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0
SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJh
Y2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi45MWMwODVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tz
IHdvcmsgY29ycmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBF
cnJvciBjYWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3Rl
ZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
Lmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljM2VkN2IKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhl
YWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdElt
YWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMv
bm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVy
cmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYzNjYWFkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGhpcyBlbnN1cmVzIHRo
YXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRkZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgNDIgaXMgbm9uLXplcm8uCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJr
aXRHZXRJbWFnZS5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmM5NDlkYWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9J
RVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1l
dC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFn
ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNl
cy9oZWxtZXQuanBnIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi43ZDQ4MmFhCkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVs
bWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3
MTcwYWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGlt
ZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZ
T1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5
cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUzNDE5MWIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsxLDE0NSBA
QAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1bWVudHMg
dG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24gc2hvdWxk
Tm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lvbik7Cisg
ICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4iKTsK
KyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91bGQgbm90
IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQorCitmdW5j
dGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0ZWRFeGNl
cHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAgIGlmIChl
eHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICco
ZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0pKCk7Jyk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVu
Y3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJvdyhleHBy
ZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24oKSB7fTsK
KworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRocm93aW5n
RXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3
IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dpbmdFeGNl
cHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24oKSB7Cisg
ICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsKK3ZhciBv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpOwor
Cit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworCit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UodW5kZWZpbmVkKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKG51bGwpJywg
dHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKScsIHRydWUpOworCit0ZXN0KCdp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uKScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVu
Y3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBl
bXB0eUZ1bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNl
cHRpb24gOScpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKScs
IHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MiknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSknLCB0
cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpJywg
dHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgbnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHt9KScsIHRydWUpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJv
d2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHRydWUpJywgdHJ1ZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQy
KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIiknLCB0cnVl
KTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHVuZGVmaW5lZCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScs
IHRydWUsICdFcnJvcjogd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVu
Y3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCBJbmZpbml0eSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCAic3RyaW5nIiknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eTp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5Oi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUs
ICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlG
dW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoi
c3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1
ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1w
dHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1
bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9y
OiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVt
cHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVs
OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRl
ZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2Up
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3By
ZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1J
bmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmci
fSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNl
cHRpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246ZW1wdHlGdW5jdGlvbn0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOkluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtvcmllbnRhdGlvbjoic3RyaW5nIn0pJywgZmFsc2UpOworCit3aW5kb3cuanNUZXN0SXNB
c3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFz
LW5vLXNvdXJjZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjg1M2E5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpAQCAt
MCwwICsxLDIwIEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBhbiBpbWFnZSB3aXRoIG5vIHNv
dXJjZSB3aWxsIHRocm93IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4iKTsKKwordmFy
IGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9OworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworaW1nLnNyYyA9IG51bGw7CisKK2RvY3VtZW50LmJv
ZHkub25sb2FkID0gZnVuY3Rpb24oKSB7CisJdHJ5IHsKKwkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
bik7CisJCXRlc3RGYWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgewor
CQl0ZXN0UGFzc2VkKCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJ
ZmluaXNoSlNUZXN0KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9u
by1jYWxsYmFjay1hZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11
bmxvYWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTg3Y2ViYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxvYikgewor
ICAgIHRlc3RGYWlsZWQoIlN1Y2Nlc3MgY2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNhbGxlZCIp
OworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBmdW5jdGlv
bihlcnJvcikgeworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkg
Y2FsbGVkIHdpdGggb3V0cHV0OiAiICsgZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsK
KworLy8gT25seSB0aGUgZXJyb3IgY2FsbGJhY2sgd2lsbCBjdXJyZW50bHkgZXZlciBiZSBjYWxs
ZWQgaW4gdGhpcyBwYXRjaCwgc28gdGVzdCB0aGF0IGl0IHdvcmtzIGZvciBub3cKK2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0SW1hZ2UnKS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIs
IHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li45NzZjYzYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMCBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7Citp
bWcud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9Cit2YXIgcmVzdWx0
ID0gaW1nLndlYmtpdEdldEltYWdlKCk7CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3
aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJj
OTVkNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oKSB7CisgICAg
dGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxsYmFjayB3YXMgaW5jb3JyZWN0bHkgY2FsbGVkIik7Cisg
ICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgZXJyb3JDYWxsYmFjayA9IGZ1bmN0aW9uKCkg
eworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIik7
CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3
aWxsIGN1cnJlbnRseSBldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQg
aXQgd29ya3MgZm9yIG5vdworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxs
YmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZl
NWRiMjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDExIEBACisKK1Rlc3RzIHRoYXQgdGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgRXJyb3IgY2FsbGJhY2sgd2FzIGNv
cnJlY3RseSBjYWxsZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJh
Y2tzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjdk
ZmI4YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApAQCAtMCww
ICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxp
bWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13
ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNDhlZjg4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldElt
YWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhh
dCBJbWFnZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJl
bW90ZSBvcmlnaW4uCisKKworUEFTUzogVGhyZXcgZXhjZXB0aW9uOiBFcnJvcjogU0VDVVJJVFlf
RVJSOiBET00gRXhjZXB0aW9uIDE4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3Rl
LW9yaWdpbi5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmY4M2VlOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
aW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCkBAIC0wLDAg
KzEsMzEgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKG1zZykKK3sK
KyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUobXNnICsgIlxuIikpOworfQorCit2YXIgZW1wdHlDYWxsYmFjayA9IGZ1
bmN0aW9uKCkgeyB9OworCit3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgdHJ5IHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RJbWFnZSIpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUNhbGxiYWNr
KTsKKyAgICAgICAgbG9nKCJGQUlMOiBEaWQgbm90IHRocm93IGV4Y2VwdGlvbiIpOworICAgIH0g
Y2F0Y2ggKGUpIHsKKyAgICAgICAgbG9nICgiUEFTUzogVGhyZXcgZXhjZXB0aW9uOiAiICsgZSk7
CisgICAgfQorCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorPC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1h
Z2UgY2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLjwvcD4KKzxp
bWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvbWlzYy9yZXNvdXJj
ZXMvaGVsbWV0LmpwZyI+Cis8cHJlIGlkPSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQu
anBnIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9k
ZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2hlbG1l
dC5qcGcgZGlmZmVyCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhZWI0YjY4Li4wMWMyYTVlIDEwMDY0NAotLS0gYS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI2Miw2
ICsyNjIsOCBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0hUTUxVTGlzdEVsZW1l
bnQuaWRsCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbAogICAgIGh0bWwvSW1hZ2VEYXRh
LmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKKyAgICBodG1sL0lt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsCiAg
ICAgaHRtbC9UZXh0TWV0cmljcy5pZGwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaWRsCmRpZmYg
LS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk5M2Ex
MjEuLjdjYjA2OGYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUgQEAKKzIwMTAtMDYtMjEgIFN0ZXJsaW5nIFN3aWdhcnQg
IDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUgaW1hZ2UgcmVzaXppbmcgQVBJIHRv
IEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGF0IHRoaXMgc3RhZ2UuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisg
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIGZpbGVzLgorICAgICAgICAqIERlcml2ZWRT
b3VyY2VzLmNwcDogRGl0dG8uCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogR05VbWFrZWZpbGUuYW06IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUuZ3lw
aTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcmk6IERpdHRvLgorICAgICAgICAqIFdlYkNv
cmUucHJvOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBEaXR0
by4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29y
ZTo6SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06IENoYW5nZWQgdG8gY29udmVydCBTdHJpbmdz
IHRvIEpTU3RyaW5ncyBjb3JyZWN0bHkgaW4gY2FsbGJhY2tzLgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6IENoYW5nZWQgYmluZGluZ3MtdGVz
dCBmb3IgYWJvdmUuCisgICAgICAgIChXZWJDb3JlOjpKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tX
aXRoQ2xhc3MyUGFyYW0pOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KTogQ2xpZW50IG9mIHRo
aXMgY2xhc3Mgbm8gbG9uZ2VyIGRvZXMgYW55IHJlZmNvdW50aW5nCisgICAgICAgIChXZWJDb3Jl
OjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZCk6IFJlZmFjdG9yZWQu
CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplQ29tcGxldGUpOiBB
ZGRlZCBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNp
emVFcnJvcik6IERpdHRvLgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm86OkNhbGxiYWNr
SW5mbyk6IE5vdyBvbmx5IHN0b3JlcyBuZWNlc3NldGllcy4KKyAgICAgICAgKiBodG1sL0hUTUxJ
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Vi
a2l0R2V0SW1hZ2UpOiBJbXBsZW1lbnRhdGlvbiBvZiBKUyBmdW5jdGlvbi4KKyAgICAgICAgKiBo
dG1sL0hUTUxJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQu
aWRsOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOiBBZGRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
azo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVz
aXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0
YXJ0KTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6
SW1hZ2VSZXNpemVyVGhyZWFkKTogIFJlZmFjdG9yZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJUaHJlYWQuaDogUmVmYWN0b3JlZC4KKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNl
dEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWlnaHQpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKiBodG1s
L1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjopOgorCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFVucmV2aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXgg
N2FjM2U1MS4uY2U1YzhmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAK
KysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQAogI2lu
Y2x1ZGUgIkpTSURCUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNJREJTdWNjZXNzRXZlbnQuY3Bw
IgogI2luY2x1ZGUgIkpTSW1hZ2VEYXRhLmNwcCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suY3BwIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmNwcCIKICNpbmNsdWRlICJKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIgogI2luY2x1ZGUg
IkpTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmNw
cCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQppbmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEwMDY0NAotLS0gYS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CkBAIC0yMjMsNiArMjIzLDggQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSURCUmVxdWVzdCBcCiAg
ICAgSURCU3VjY2Vzc0V2ZW50IFwKICAgICBJbWFnZURhdGEgXAorICAgIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjayBcCisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBcCiAgICAgSW5k
ZXhlZERhdGFiYXNlUmVxdWVzdCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0IFwKICAgICBJbnNw
ZWN0b3JCYWNrZW5kIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJD
b3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGU3ODU3NDkuLmVkYmFjN2EgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMjc1
LDYgKzI3NSw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxVTGlzdEVs
ZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogCVdlYkNv
cmUvaHRtbC9JbWFnZURhdGEuaWRsIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5pZGwgXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aWRsIFwKIAlXZWJDb3JlL2h0bWwvVGV4dE1ldHJpY3MuaWRsIFwKIAlXZWJDb3JlL2h0bWwvVmFs
aWRpdHlTdGF0ZS5pZGwgXAogCVdlYkNvcmUvaHRtbC9Wb2lkQ2FsbGJhY2suaWRsIFwKQEAgLTQ1
NSw2ICs0NTcsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvYmluZGluZ3MvanMv
SlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRN
TElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwKKwlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElt
YWdlRWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRF
bGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1l
bnRDdXN0b20uaCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3Vz
dG9tLmNwcCBcCkBAIC0xMjY3LDYgKzEyNzAsOCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdl
YkNvcmUvaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmggXAogCVdlYkNvcmUvaHRtbC9JbWFn
ZURhdGEuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmggXAorCVdlYkNvcmUvaHRtbC9J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAg
XAogCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAJV2ViQ29yZS9odG1sL0xh
YmVsc05vZGVMaXN0LmNwcCBcCkBAIC0xMjc0LDYgKzEyNzksOCBAQCB3ZWJjb3JlX3NvdXJjZXMg
Kz0gXAogCVdlYkNvcmUvaHRtbC9NZWRpYUVycm9yLmggXAogCVdlYkNvcmUvaHRtbC9QcmVsb2Fk
U2Nhbm5lci5jcHAgXAogCVdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKwlXZWJDb3Jl
L2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgg
XAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuY3BwIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJhbmdl
LmggXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0cmljcy5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggZjJjZGQ2Ny4uZjllYjIx
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkKQEAgLTE4Nyw2ICsxODcsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdodG1sL01lZGlhRXJyb3IuaWRsJywK
ICAgICAgICAgICAgICdodG1sL1RleHRNZXRyaWNzLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9U
aW1lUmFuZ2VzLmlkbCcsCkBAIC01NzEsNiArNTczLDcgQEAKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5k
aW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCcsCisgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwJywKQEAgLTE2NTYsNiArMTY1OSw4
IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmgnLAogICAgICAg
ICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEu
aCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgnLAorICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgnLAogICAgICAgICAg
ICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFn
ZVJlc2l6ZXJUaHJlYWQuaCcsCiAgICAgICAgICAgICAnaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAn
LApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBiL1dlYkNvcmUvV2ViQ29yZS5wcmkK
aW5kZXggMjVjOTVmZi4uNGU2ZWZlNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnByaQor
KysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC00MjIsNiArNDIyLDggQEAgSURMX0JJTkRJTkdT
ICs9IFwKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwKICAgICBodG1sL0hUTUxWaWRl
b0VsZW1lbnQuaWRsIFwKICAgICBodG1sL0ltYWdlRGF0YS5pZGwgXAorICAgIGh0bWwvSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCBcCiAgICAgaHRtbC9NZWRpYUVycm9yLmlkbCBcCiAgICAgaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogICAgIGh0bWwvVGltZVJhbmdlcy5pZGwgXApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggOTJhNzc1Yy4uMzU1MjMy
NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNvcmUu
cHJvCkBAIC0zMTUsNiArMzE1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgYmluZGluZ3MvanMvSlNI
VE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVT
ZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVu
dEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5j
cHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogICAg
IGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5n
cy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgXApAQCAtNzA0LDYgKzcwNSw3
IEBAIFNPVVJDRVMgKz0gXAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXAogICAgIGh0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwK
KyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIFwKICAgICBodG1sL1N0ZXBSYW5nZS5jcHAgXAog
ICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5jcHAgXAogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2Fn
ZS5jcHAgXApAQCAtMTQzNiw5ICsxNDM4LDEyIEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvSFRN
TFZpZGVvRWxlbWVudC5oIFwKICAgICBodG1sL0hUTUxWaWV3U291cmNlRG9jdW1lbnQuaCBcCiAg
ICAgaHRtbC9JbWFnZURhdGEuaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmggXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogICAgIGh0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmggXAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuaCBcCiAgICAg
aHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAgICAg
aHRtbC9TdGVwUmFuZ2UuaCBcCiAgICAgaHRtbC9UaW1lUmFuZ2VzLmggXAogICAgIGh0bWwvVmFs
aWRpdHlTdGF0ZS5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDYy
NGQ0MzMuLjAxN2UzN2IgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAt
Mzc2NjEsNiArMzc2NjEsMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJ
CVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCINCisJ
CQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJ
CQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyVGhyZWFkLmNw
cCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0zNzY4OSw2ICszNzY5NywxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6
ZU9wdGlvbnMuY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0
aXZlUGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQor
CQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFN0ZXBSYW5nZS5jcHAiDQogCQkJ
CT4NCiAJCQk8L0ZpbGU+DQpAQCAtNDAxMjgsNyArNDAxNDQsOSBAQAogCQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCiAJCQkJCVJlbGF0aXZlUGF0
aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNwcCINCisKIAkJCQkJ
Pg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQogCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQpA
QCAtNDAzODgsNiArNDA0MDYsNTkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJ
PC9GaWxlPg0KIAkJCQk8RmlsZQ0KKworCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAiDQorCQkJCQk+DQorCQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJ
CTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiDQorCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJ
CU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19JbnRl
cm5hbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQor
CQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJ
CQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0
cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVD
b25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0FsbHxX
aW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJ
PFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJ
PC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIg0K
IAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMzBiMjlkLi4yMjhjMDQwIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzUwOSw2ICszNTA5LDE1IEBACiAJ
CUIwMTQ5RTdFMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0ExMUE0QjIxNTAw
MTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi87IH07CiAJCUIwMTQ5RTdGMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdl
UmVzaXplclRocmVhZC5jcHAgKi87IH07CiAJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJ
bWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQu
aCAqLzsgfTsKKwkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwNEU2QkYxMTFD
NkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi87IH07CisJCUIwNEU2QkY1MTFDN0Yw
NzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3
QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRFNkJGNjExQzdGMDdFMDAyMTQyODMgLyog
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3Bw
ICovOyB9OworCQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTUxQTEx
Q0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi87IH07CisJCUIwQTcxNUI3MTFE
MDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjMxMUQwNDMxRTAw
M0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcx
NUI4MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI0MTFEMDQz
MUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjBB
NzE1QjkxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI1
MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87
IH07CisJCUIwQTcxNUJBMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmggKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA1
MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLzsgfTsKIAkJQjIwMTExMDgw
QUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NW
R0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BP
RFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICov
OyB9OwpAQCAtODg0NSw2ICs4ODU0LDE3IEBACiAJCUIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAv
KiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBB
c3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0OUU3
QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRBMTFBQjFF
QTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVt
ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIw
QTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTdBMTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjYxMUQw
NDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAv
KiBKU1NWR0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1NWR0FFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTEx
MDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQjIxMTI3QTUwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUE9EVHlwZVdyYXBwZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNjk5LDYgKzEzNzE5LDEwIEBACiAJCQkJ
QTc3OTc5MTMwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5
MTQwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5oICovLAogCQkJCUE3Nzk3OTE1MEQ2QjlE
MEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuaWRsICovLAorCQkJCUIwMTRBMDRBMTFBQjFFQTAwMDE5
NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1NzkxMUQw
MUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCUIw
MTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAq
LywKKwkJCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCAqLywKIAkJCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNp
emVyVGhyZWFkLmNwcCAqLywKIAkJCQlCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VS
ZXNpemVyVGhyZWFkLmggKi8sCiAJCQkJQTQ1NkZBMjQxMUFENEE4MzAwMjBCNDIwIC8qIExhYmVs
c05vZGVMaXN0LmNwcCAqLywKQEAgLTEzNzA5LDYgKzEzNzMzLDggQEAKIAkJCQlFNDQ2MTM5QzBD
RDYzMzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5pZGwgKi8sCiAJCQkJRTRENEFCRTAwRDc1NDJG
MDAwRjk2ODY5IC8qIFByZWxvYWRTY2FubmVyLmNwcCAqLywKIAkJCQlFNEQ0QUJFMTBENzU0MkYx
MDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIuaCAqLywKKwkJCQlCMEE3MTUxQTExQ0MyNEVFMDAz
QzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi8sCisJCQkJQjA0RTZCRjExMUM2RjBFOTAwMjE0
MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLywKIAkJCQlBNUFGQjM0RDExNTE1MUE3MDBCMDQ1Q0Ig
LyogU3RlcFJhbmdlLmNwcCAqLywKIAkJCQlBNUFGQjM0RTExNTE1MUE3MDBCMDQ1Q0IgLyogU3Rl
cFJhbmdlLmggKi8sCiAJCQkJQkNFRjQ1RTgwRTY4Nzc2NzAwMUMxMjg3IC8qIFRleHRNZXRyaWNz
LmggKi8sCkBAIC0xMzk0OCw2ICsxMzk3NCwxMCBAQAogCQkJCUU0NDYxNDBGMENENjgyNjkwMEZB
REE3NSAvKiBKU0hUTUxWaWRlb0VsZW1lbnQuaCAqLywKIAkJCQlBNzc5NzkyNDBENkI5RTY0MDAz
ODUxQjkgLyogSlNJbWFnZURhdGEuY3BwICovLAogCQkJCUE3Nzk3OTI1MEQ2QjlFNjQwMDM4NTFC
OSAvKiBKU0ltYWdlRGF0YS5oICovLAorCQkJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxNUI0MTFEMDQzMUUw
MDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3MTVC
NTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICov
LAorCQkJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oICovLAogCQkJCTQ5RUVDRUY4MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJy
YXkuY3BwICovLAogCQkJCTQ5RUVDRUY5MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJyYXku
aCAqLywKIAkJCQk0OUVFQ0VGNjEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQzMkFycmF5LmNwcCAq
LywKQEAgLTE1NTEzLDYgKzE1NTQzLDcgQEAKIAkJCQlCQzJFRDdBNDBDNkMwRjM2MDA5MjBCRkYg
LyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q0MUFCQTBDMDYwREU4
MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzJF
RDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgKi8s
CisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxl
bWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVDQTMwQzA3ODFCQjAwQ0QyMEYwIC8qIEpTSFRN
TE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCTQ0OEFEMjdBMEE0ODEzNzkwMDIzRDE3
OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCkBAIC0xODExOSw2ICsx
ODE1MCw4IEBACiAJCQkJMUE4MjBEOTIwQTEzRUJBNjAwQUY4NDNDIC8qIEltYWdlRG9jdW1lbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTA4OTU4MjU2MEU4NTdBN0UwMEY4MkM4MyAvKiBJbWFnZUxv
YWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM3RjQ0QTgwQjlFMzI0RTAwQTlEMDgxIC8qIElt
YWdlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4
MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRF
NkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4g
SGVhZGVycyAqLywKIAkJCQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVy
VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMjc1MzU3MTBCMDUzODE0MDAyQ0U2NEYgLyog
SW1hZ2VTb3VyY2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTRCMzQ4MDk0MEVFRjUwRDQwMEFDMUI0
MSAvKiBJbWFnZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLywKQEAgLTE4MzUxLDYgKzE4Mzg0LDgg
QEAKIAkJCQlDNTZDOTFBNzExOUQ5MTg3MDBERTRDRDkgLyogSlNJREJTdWNjZXNzRXZlbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCUJDNkM0OUY0MEQ3REJBMDUwMEZGQTU1OCAvKiBKU0ltYWdlQ29u
c3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3Nzk3OTI5MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzE1QjgxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjBBNzE1QkExMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDNUY0RjQxMTExOTMwNkMwMDBGREZBREQgLyogSlNJbmRl
eGVkRGF0YWJhc2VSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQk3QTBFNzZEQjEwQkYwNTk4
MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTQx
RjA2MENFMEY1RUVCMkIwMEEwN0VBQyAvKiBKU0luc3BlY3RvckJhY2tlbmQuaCBpbiBIZWFkZXJz
ICovLApAQCAtMTg4ODUsNiArMTg5MjAsNyBAQAogCQkJCUE4OUNDQzUzMEY0NEU5ODEwMEI1REEx
MCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMz
MDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQ0IxNkMyRjA5NzlDM0JEMDA0Njc3NDEgLyogUmVxdWVzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMu
aCBpbiBIZWFkZXJzICovLAogCQkJCTkzNEY3MTQyMEQ1QTZGNDQwMDAxOEQ2OSAvKiBSZXNvdXJj
ZUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyog
UmVzb3VyY2VFcnJvckJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3Njc5MENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMDY1NCw2ICsy
MDY5MCw3IEBACiAJCQkJQkM0OTE4QzgwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFtZUVs
ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyRUQ2NTAwQzZCQzQ4QzAwOTIwQkZGIC8q
IEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFFMkFB
OTcwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3RTk4MEExQTgzRTMwMDdGQjhDNSAvKiBK
U0hUTUxJbnB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNDNDM4NzgwRTg4NkND
NzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkxQUUyQUE5OTBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSXNJbmRleEVsZW1lbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yMDcxMiw2ICsyMDc0OSw4IEBACiAJCQkJQkM2QzQ5RjMwRDdE
QkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlBNzc5NzkyODBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTdEMDMxOEUwRTkzNTQwMzAwRTI0QUNEIC8qIEpTSW1hZ2VEYXRhQ3VzdG9tLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNUI3MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1QjkxMUQw
NDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUM1RjRGNDEwMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFz
ZVJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2REExMEJGMDU5ODAwQTAyNzZF
IC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMEU3NkQ1
MTBCRjA1MDcwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTIxMjU5LDYgKzIxMjk4LDcgQEAKIAkJCQlBODlDQ0M1MjBGNDRFOTgxMDBC
NURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTMzMDlFMDkwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzJFMDk3OUMzQkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNTFCMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNp
emVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzNEY3MTNFMEQ1QTZGMjgwMDAxOEQ2
OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MTRDNzY1MDBD
RTkyMzRFMDA3RUYzQ0QgLyogUmVzb3VyY2VFcnJvck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTUxNEM3Njc4MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5jcHAgaW4gU291cmNl
cyAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9t
LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTYyNTViCi0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20u
Y3BwCkBAIC0wLDAgKzEsMTY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQorI2luY2x1ZGUgIkpTSFRNTEltYWdlRWxlbWVudC5oIgorCisjaW5jbHVkZSAi
RE9NV2luZG93LmgiCisjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgorI2luY2x1ZGUgIkpT
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgorCisjaW5jbHVkZSA8
cnVudGltZS9KU0Z1bmN0aW9uLmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2lu
Y2x1ZGUgPHd0Zi9HZXRQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9SZWZQdHIuaD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitzdGF0aWMgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+
IGNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9N
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgaWYgKCF2
YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0
aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7
Cit9CisKK3N0YXRpYyBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIC8vIEFyZ3VtZW50IGlz
IG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93
ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJldHVybiAw
OworCisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAg
ICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsK
KyAgICByZXR1cm4gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpjcmVhdGUob2JqZWN0LCBn
bG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVh
dGVSZXNpemVPcHRpb25zKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9IFJlc2l6ZU9wdGlvbnM6OmNyZWF0
ZSgpOworCisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBpcyBh
bGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmluZWRP
ck51bGwoKSkgeworICAgICAgICAvLyBVc2UgZGVmYXVsdCBvcHRpb25zLgorICAgICAgICByZXR1
cm4gcmVzaXplT3B0aW9ucy5yZWxlYXNlKCk7CisgICAgfQorICAgIEpTT2JqZWN0KiBvYmplY3Qg
PSB2YWx1ZS50b09iamVjdChleGVjKTsKKworICAgIEpTVmFsdWUgd2lkdGggPSBvYmplY3QtPmdl
dChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJ3aWR0aCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghd2lkdGguaXNVbmRlZmluZWQo
KSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRXaWR0aCh3aWR0aC50b0Zsb2F0KGV4ZWMp
KTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBoZWlnaHQgPSBvYmplY3QtPmdldChleGVjLCBJZGVu
dGlmaWVyKGV4ZWMsICJoZWlnaHQiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWhlaWdodC5pc1VuZGVmaW5lZCgpKSB7CisgICAg
ICAgIHJlc2l6ZU9wdGlvbnMtPnNldEhlaWdodChoZWlnaHQudG9GbG9hdChleGVjKSk7CisgICAg
ICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
IH0KKworICAgIEpTVmFsdWUgY29tcHJlc3Npb25MZXZlbCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElk
ZW50aWZpZXIoZXhlYywgImNvbXByZXNzaW9uTGV2ZWwiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWNvbXByZXNzaW9uTGV2ZWwu
aXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRDb21wcmVzc2lvbkxl
dmVsKGNvbXByZXNzaW9uTGV2ZWwudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhl
YywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRl
ZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihw
cmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmll
bnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
biAwOworICAgIGlmICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNp
emVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRp
b24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMu
cmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1h
Z2UoRXhlY1N0YXRlKiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgw
KS50b1N0cmluZyhleGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2so
ZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFs
T2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0Nh
bGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNh
bGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2Fz
dDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMt
PmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9w
dGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OworICAgIEFTU0VSVChyZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGlt
cCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Vi
a2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2Fs
bGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERP
TUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBi
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkx
MS4uNDUyMWRmMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCkBAIC0yMTc5LDcgKzIxNzksMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRh
dGlvbgogCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAg
ICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFt
ZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmlu
ZyIpIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5h
cHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
YXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
XG4gICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAz
YzYuLjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENhbGxiYWNrLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFj
azo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4
dCwgQ2wKICAgICBFeGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsK
ICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhl
YywgY2xhc3MyUGFyYW0pKTsKLSAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOwor
ICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlz
ZWRFeGNlcHRpb24gPSBmYWxzZTsKICAgICBtX2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZy
YWlzZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNp
emVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRj
OS4uOWY4YTU2NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNw
cAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQs
MzIgQEAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVk
SW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVk
ZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
VGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1
ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Q
YXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENh
Y2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRl
c2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJy
b3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9P
cHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0lt
YWdlUmVzaXplcjo6c3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUs
IFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFz
c1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9w
dFJlZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2ly
ZWRCb3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0
UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVz
aXplcihzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3Vj
Y2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJ
bWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwg
T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVl
IHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0
eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9u
IG9yaWVudGF0aW9uT3B0aW9uKQorQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVy
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZElt
YWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0
aW9ucz4gcmVzaXplT3B0aW9ucykKICAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisg
ICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAg
ICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3Vj
Y2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAg
LCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKLSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVk
Qm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0
aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRh
dGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXplT3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAg
IEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5pc09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNr
IGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxi
YWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0Nh
bGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAK
QEAgLTY3LDExICs3MSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hl
ZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNh
Y2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxs
YmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVy
VGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rl
c2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlv
bk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwg
bV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndp
ZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXBy
ZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jl
c2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigp
OwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8Qmxv
Yj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LCBibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXpl
cjo6cmVzaXplRXJyb3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAg
ICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0
LCAiVW5leHBlY3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0Fz
eW5jSW1hZ2VSZXNpemVyLmgKaW5kZXggM2VlZWVhZC4uYzQyMjg0MiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1h
Z2VSZXNpemVyLmgKQEAgLTQwLDcgKzQwLDExIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNs
YXNzIENhY2hlZEltYWdlOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNz
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsK
K2NsYXNzIFJlc2l6ZU9wdGlvbnM7CisKIAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9y
IHRoZSBDYWNoZWRJbWFnZSB0aGF0IGlzIHBhc3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAv
LyB0aGVuIHN0YXJ0cyBhbiBJbWFnZVJlc2l6ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4g
T25jZSBjcmVhdGVkLCBJbWFnZVJlc2l6ZXJUaHJlYWQKQEAgLTQ4LDU2ICs1Miw0MiBAQCBjbGFz
cyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CiAvLyBvY2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95
ZWQuIElmIHRoZSBkb2N1bWVudCBpcyBkZXN0cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5
bmNJbWFnZVJlc2l6ZXIgd2lsbCByZWNlaXZlIGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50
bHkgYmxvY2sgdGhlIGNhbGxiYWNrcyBmcm9tCiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0lt
YWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50
ZWQ8QXN5bmNJbWFnZVJlc2l6ZXI+IHsKK2NsYXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGlj
IENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZv
IHsKLSAgICAgICAgQ2FsbGJhY2tJbmZvKFBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFz
eW5jSW1hZ2VSZXNpemVyKQorICAgICAgICBDYWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0lt
YWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VS
ZXNpemVyKGFzeW5jSW1hZ2VSZXNpemVyKQogICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAg
IHsKICAgICAgICAgfQogCi0gICAgICAgIFJlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJ
bWFnZVJlc2l6ZXI7CisgICAgICAgIE93blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFn
ZVJlc2l6ZXI7CiAgICAgICAgIFJlZlB0cjxCbG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAg
ICBlbnVtIE91dHB1dFR5cGUgewogICAgICAgICBKUEVHLAogICAgICAgICBQTkcKICAgICB9Owog
Ci0gICAgZW51bSBBc3BlY3RSYXRpb09wdGlvbiB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0
aW8sCi0gICAgICAgIElnbm9yZUFzcGVjdFJhdGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50
YXRpb25PcHRpb24gewotICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9y
ZU9yaWVudGF0aW9uCi0gICAgfTsKLQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VS
ZXNpemVyPiBjcmVhdGUoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRC
b3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxs
YmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9u
KTsKKyAgICBzdGF0aWMgdm9pZCBzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVk
SW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
az4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVz
aXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6
IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRl
c3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBs
ZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQot
ICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAq
LyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVz
aXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFn
ZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vz
c0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3Bl
Y3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVy
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVh
bCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFn
ZSogbV9jYWNoZWRJbWFnZTsKLSAgICBTY3JpcHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAg
ICBTY3JpcHRWYWx1ZSBtX2Vycm9yQ2FsbGJhY2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0
byBwYXNzIGludG8gSW1hZ2VSZXNpemVyVGhyZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxs
YmFja0luZm87CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0OworCiAgICAgT3V0cHV0VHlwZSBtX291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rl
c2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9xdWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9u
IG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgT3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlv
bk9wdGlvbjsKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nl
c3NDYWxsYmFjazsKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJv
ckNhbGxiYWNrOworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5k
ZXggNWQ1OTIzZC4uMmZmNTFmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIs
OSArMzIsMTcgQEAKICNpbmNsdWRlICJIVE1MRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9y
bUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgor
I2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1
ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNpbmNsdWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5o
IgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
QEAgLTQ1MSw0ICs0NTksMzQgQEAgdm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3
T3duZXJEb2N1bWVudCgpCiAgICAgSFRNTEVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3Vt
ZW50KCk7CiB9CiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VF
bGVtZW50Ojp3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRp
b25zPiByZXNpemVPcHRpb25zLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygp
LmlzVmFsaWQoKSkgeworICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgLy8gVGhlIHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxv
d3MgZGF0YSBVUkxzLgorICAgIGlmIChkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWlu
dHNDYW52YXMoc3JjKCkpKSB7CisgICAgICAgIGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0
VHlwZTsKKyAgICBpZiAobWltZVR5cGUgPT0gImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRU
eXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OkpQRUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0g
ImltYWdlL3BuZyIpCisgICAgICAgIG91dHB1dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5H
OworICAgIGVsc2UgeworICAgICAgICBlYyA9IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKSwgbV9pbWFnZUxvYWRlci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNz
Q2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8g
RU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1M
SW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYy
ZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50
LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBA
QAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsKIAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1
YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJpZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAg
LTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkg
Y29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRlci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisj
aWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmlu
ZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTElt
YWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1l
bnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50Lmlk
bCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNj
NWU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIv
V2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1
bGUgaHRtbCB7CiAgICAgICAgIC8vIE9iamVjdGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBhbHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFk
b25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRlSW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5l
ZChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJiYgRU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAg
Ly8gRnVuY3Rpb25zCisgICAgICAgIFtDdXN0b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9N
U3RyaW5nIG1pbWVUeXBlLCBpbiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0Nh
bGxiYWNrLCBbT3B0aW9uYWxdIGluIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxs
YmFjaywgW09wdGlvbmFsXSBpbiBSZXNpemVPcHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICBy
YWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRpZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9o
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi42NmZmZjg2Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4K
KyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsK
K2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1Ymxp
YyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2
aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29s
IGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7
Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8v
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2Ni
ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisg
KiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2Ug
WworICAgICAgICBDb25kaXRpb25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjawor
ICAgIF0gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoaW4gRE9NU3RyaW5nIGVycm9yKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjY0NDAwZjMKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
CisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKwor
I2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7
CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9
CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBC
bG9iKikgPSAwOworfTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uMjBmZDg3ZgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9u
LgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7
CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAg
ICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAg
ICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gQmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRleCAxYmFlNmEwLi5jZDk5ZGNjIDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1h
cEltYWdlLmgiCiAjaW5jbHVkZSAiSW1hZ2UuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIK
KwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUx
LDcgQEAgc3RhdGljIHZvaWQgcmV0dXJuQmxvYk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1h
dGlvbikKICAgICBkZWxldGUgY2FsbGJhY2tJbmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRo
cmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFn
ZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6
T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxp
dHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlv
biwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9u
KQorYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVy
PiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5m
bywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNp
cmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlv
biBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3Jp
ZW50YXRpb25PcHRpb24pCiB7CiAgICAgSW1hZ2VSZXNpemVyVGhyZWFkKiBpbWFnZVJlc2l6ZXJU
aHJlYWQgPSBuZXcgSW1hZ2VSZXNpemVyVGhyZWFkKGNhbGxiYWNrSW5mbywgb3V0cHV0VHlwZSwg
ZGVzaXJlZEJvdW5kcywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0
aW9uKTsKIApAQCAtNjIsNyArNjMsNyBAQCBib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQo
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlcwogICAgIHJl
dHVybiBpbWFnZVJlc2l6ZXJUaHJlYWQtPm1fdGhyZWFkSUQ7CiB9CiAKLUltYWdlUmVzaXplclRo
cmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8q
IGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwg
SW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpP
cmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK0ltYWdlUmVzaXplclRocmVhZDo6
SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxi
YWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6
ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRp
b09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRp
b24gb3JpZW50YXRpb25PcHRpb24pCiAgICAgOiBtX3RocmVhZElEKDApCiAgICAgLCBtX2NhbGxi
YWNrSW5mbyhjYWxsYmFja0luZm8pCiAgICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBiL1dlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJUaHJlYWQuaAppbmRleCBhZTVhZGU1Li42MTAwYjU1IDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKKysrIGIvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclRocmVhZC5oCkBAIC0zNCw2ICszNCw3IEBACiAjaWYgRU5BQkxFKElNQUdFX1JF
U0laRVIpCiAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2luY2x1ZGUgIlJlc2l6
ZU9wdGlvbnMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MiwxMSArNDMsMTEgQEAg
Y2xhc3MgU2hhcmVkQnVmZmVyOwogCiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQgewogcHVibGlj
OgotICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURh
dGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6
T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0lt
YWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRh
dGlvbk9wdGlvbik7CisgICAgc3RhdGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1h
Z2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxp
dHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmll
bnRhdGlvbk9wdGlvbik7CiAgICAgfkltYWdlUmVzaXplclRocmVhZCgpOwogCiBwcml2YXRlOgot
ICAgIEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwg
QXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0lt
YWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24pOworICAgIEltYWdlUmVzaXplclRocmVhZChB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9u
czo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsK
ICAgICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFkU3RhcnQodm9pZCopOwogICAgIHZv
aWQqIGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OSw4ICs2MCw4IEBAIHByaXZhdGU6CiAg
ICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwogICAgIEludFNp
emUgbV9kZXNpcmVkQm91bmRzOwogICAgIGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBBc3lu
Y0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAg
ICBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOwor
ICAgIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwv
UmVzaXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjA3YmNiOQotLS0gL2Rldi9udWxsCisrKyBi
L1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAtMCwwICsxLDc1IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3Ry
aWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIlJlc2l6ZU9w
dGlvbnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9u
c0xvd2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25zVXBwZXJMaW1pdCA9
IDMyNzY3Oworc3RhdGljIGNvbnN0IGZsb2F0IGNvbXByZXNzaW9uTG93ZXJMaW1pdCA9IDAuMGY7
CitzdGF0aWMgY29uc3QgZmxvYXQgY29tcHJlc3Npb25VcHBlckxpbWl0ID0gMS4wZjsKKworc3Rh
dGljIGNvbnN0IGZsb2F0IGRlZmF1bHRDb21wcmVzc2lvbiA9IDAuODVmOworCitQYXNzUmVmUHRy
PFJlc2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVm
KG5ldyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9wdGlvbnMo
KQorICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgpCisgICAgLCBtX2NvbXByZXNzaW9u
TGV2ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJZ25vcmVBc3BlY3RSYXRpbykKKyAg
ICAsIG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50YXRpb24pCit7Cit9CisKK3ZvaWQg
UmVzaXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7IG1fd2lkdGggPSB3aWR0aCA+PSBk
aW1lbnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IHdp
ZHRoIDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRoKCkgeyByZXR1cm4gbV93aWR0aDsg
fQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChpbnQgaGVpZ2h0KSB7IG1faGVpZ2h0
ID0gaGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYmIGhlaWdodCA8PSBkaW1lbnNpb25z
VXBwZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25zOjpoZWlnaHQoKSB7
IHJldHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldENvbXByZXNzaW9u
TGV2ZWwoZmxvYXQgY29tcHJlc3Npb25MZXZlbCkgeyBtX2NvbXByZXNzaW9uTGV2ZWwgPSBjb21w
cmVzc2lvbkxldmVsID49IGNvbXByZXNzaW9uTG93ZXJMaW1pdCAmJiBjb21wcmVzc2lvbkxldmVs
IDw9IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA/IGNvbXByZXNzaW9uTGV2ZWwgOiBkZWZhdWx0Q29t
cHJlc3Npb247IH0KK2Zsb2F0IFJlc2l6ZU9wdGlvbnM6OmNvbXByZXNzaW9uTGV2ZWwoKSB7IHJl
dHVybiBtX2NvbXByZXNzaW9uTGV2ZWw7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRBc3Bl
Y3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8pIHsgbV9hc3BlY3RSYXRpb09w
dGlvbiA9IHByZXNlcnZlQXNwZWN0UmF0aW8gPyBQcmVzZXJ2ZUFzcGVjdFJhdGlvIDogSWdub3Jl
QXNwZWN0UmF0aW87IH0KK1Jlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIFJlc2l6ZU9w
dGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKCkgeyByZXR1cm4gbV9hc3BlY3RSYXRpb09wdGlvbjsg
fQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmll
bnRhdGlvbk9wdGlvbikgeyBtX29yaWVudGF0aW9uT3B0aW9uID0gb3JpZW50YXRpb25PcHRpb24g
PT0gImF1dG8iID8gQ29ycmVjdE9yaWVudGF0aW9uIDogSWdub3JlT3JpZW50YXRpb247IH0KK1Jl
c2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIFJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9u
T3B0aW9uKCkgeyByZXR1cm4gbV9vcmllbnRhdGlvbk9wdGlvbjsgfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmggYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9u
cy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzMGNjOTUKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCkBAIC0wLDAgKzEsODcgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
ICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
KyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aWZuZGVmIFJlc2l6ZU9wdGlvbnNfaAorI2RlZmluZSBSZXNpemVPcHRpb25zX2gKKworI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFN0
cmluZzsKKworY2xhc3MgUmVzaXplT3B0aW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFJlc2l6ZU9w
dGlvbnM+IHsKK3B1YmxpYzoKKyAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKKyAgICAgICAg
UHJlc2VydmVBc3BlY3RSYXRpbywKKyAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KKyAgICB9Owor
CisgICAgZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7CisgICAgICAgIENvcnJlY3RPcmllbnRhdGlv
biwKKyAgICAgICAgSWdub3JlT3JpZW50YXRpb24KKyAgICB9OworCisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlKCk7CisKKyAgICB2b2lkIHNldFdpZHRoKGludCB3
aWR0aCk7CisgICAgaW50IHdpZHRoKCk7CisKKyAgICB2b2lkIHNldEhlaWdodChpbnQgaGVpZ2h0
KTsKKyAgICBpbnQgaGVpZ2h0KCk7CisKKyAgICB2b2lkIHNldENvbXByZXNzaW9uTGV2ZWwoZmxv
YXQgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZmxvYXQgY29tcHJlc3Npb25MZXZlbCgpOworCisg
ICAgdm9pZCBzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8pOwor
ICAgIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uKCk7CisKKyAgICB2b2lkIHNl
dE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbik7CisgICAgT3JpZW50
YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24oKTsKKworcHJpdmF0ZToKKyAgICBSZXNpemVP
cHRpb25zKCk7CisKKyAgICAvLyBJZiBtX3dpZHRoIG9yIG1faGVpZ2h0ID09IDAsIHRoYXQgZGlt
ZW5zaW9uIHdpbGwgbm90IGNoYW5nZSBleHBsaWNpdGx5IGR1cmluZyByZXNpemluZy4KKyAgICBp
bnQgbV93aWR0aDsKKyAgICBpbnQgbV9oZWlnaHQ7CisgICAgZmxvYXQgbV9jb21wcmVzc2lvbkxl
dmVsOworICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgT3Jp
ZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8g
UmVzaXplT3B0aW9uc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59387</attachid>
            <date>2010-06-22 10:38:05 -0700</date>
            <delta_ts>2010-06-22 14:12:00 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>97849</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5jMTJlZDFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlw
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2Fi
bGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1h
Z2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjE1OGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMDcgQEAKKworVGVzdHMgdGhlIGFjY2Vw
dGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0
aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UobnVsbCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01B
VENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4
Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAi
LCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IE5PVF9TVVBQT1JURURfRVJS
OiBET00gRXhjZXB0aW9uIDkuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
dHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCAic3RyaW5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9u
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBl
bXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6bnVsbH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0eUZ1bmN0aW9u
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6SW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7d2lkdGg6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
dmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZp
bmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6e319KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRy
dWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29t
cHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2Vy
dmVBc3BlY3RSYXRpbzplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246e319KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rp
b259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10
eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIy
YzUxYzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKQEAgLTAs
MCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4i
PgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9
InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi42ZDQ3ZWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3Vy
Y2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93
bjogRXJyb3I6IElOVkFMSURfU1RBVEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxl
ZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzY1MjM2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0
SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJh
Y2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi4wOTNjODE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKK21haW4gZnJhbWUgLSBoYXMgMSBvbnVubG9h
ZCBoYW5kbGVyKHMpCisKK0Vuc3VyZXMgdGhhdCB0aGUgY2FsbGJhY2tzIHdpbGwgbm90IGV4ZWN1
dGUgYWZ0ZXIgb251bmxvYWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNT
IE5vIGNhbGxiYWNrcyBjYWxsZWQgYWZ0ZXIgdW5sb2FkCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11
bmxvYWQuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWMzZWQ3YgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0
ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRp
b24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10
ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5jM2NhYWRiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13
ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitUaGlzIGVuc3Vy
ZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRoIGFub3RoZXIgbWV0
aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyA0MiBpcyBub24temVy
by4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdl
dEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9r
LXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYzk0OWRhZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1h
Z2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMv
aGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29s
ZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdl
dEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvcmVz
b3VyY2VzL2hlbG1ldC5qcGcgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3Jlc291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNl
cy9oZWxtZXQuanBnIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2Ny
aXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uMjcxNzBhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKQEAg
LTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBz
cmM9IllPVVJfSlNfRklMRV9IRVJFIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1l
bnQtdHlwZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM0MTkxYgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCkBAIC0wLDAgKzEs
MTQ1IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhlIGFjY2VwdGFibGUgdHlwZXMgZm9yIGFyZ3Vt
ZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0aG9kLiIpOworCitmdW5jdGlvbiBz
aG91bGROb3RUaHJvdyhleHByZXNzaW9uKSB7CisgIHRyeSB7CisgICAgZXZhbChleHByZXNzaW9u
KTsKKyAgICB0ZXN0UGFzc2VkKGV4cHJlc3Npb24gKyAiIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LiIpOworICB9IGNhdGNoKGUpIHsKKyAgICB0ZXN0RmFpbGVkKGV4cHJlc3Npb24gKyAiIHNob3Vs
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJldyBleGNlcHRpb24gIiArIGUpOworICB9Cit9CisK
K2Z1bmN0aW9uIHRlc3QoZXhwcmVzc2lvbiwgZXhwcmVzc2lvblNob3VsZFRocm93LCBleHBlY3Rl
ZEV4Y2VwdGlvbikgeworICAgIGlmIChleHByZXNzaW9uU2hvdWxkVGhyb3cpIHsKKyAgICAgICAg
aWYgKGV4cGVjdGVkRXhjZXB0aW9uKQorICAgICAgICAgICAgc2hvdWxkVGhyb3coZXhwcmVzc2lv
biwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICInICsgZXhwZWN0ZWRFeGNlcHRpb24gKyAnIjsgfSko
KTsnKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2hvdWxkVGhyb3coZXhwcmVzc2lvbiwg
JyhmdW5jdGlvbigpIHsgcmV0dXJuICJFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTciOyB9KSgpOycpOworICAgIH0gZWxzZSB7CisgICAgICAgIHNob3VsZE5vdFRocm93
KGV4cHJlc3Npb24pOworICAgIH0KK30KKwordmFyIGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigp
IHt9OworCitmdW5jdGlvbiBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpIHt9OworT2JqZWN0VGhy
b3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLnZhbHVlT2YgPSBmdW5jdGlvbigpIHsKKyAgICB0aHJv
dyBuZXcgRXJyb3IoJ3ZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit9CitPYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbi5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygid2lkdGgiLCBmdW5jdGlvbigp
IHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3dpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK30pOwor
dmFyIG9iamVjdFRocm93aW5nRXhjZXB0aW9uID0gbmV3IE9iamVjdFRocm93aW5nRXhjZXB0aW9u
KCk7CisKK3ZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7CisK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgpJywgdHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UobnVs
bCknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIpJywgdHJ1
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7CisKK3Rl
c3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5kZWZpbmVkKScsIHRydWUpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKScsIHRydWUpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pJywg
dHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1w
dHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2Jt
cCIsIGVtcHR5RnVuY3Rpb24pJywgdHJ1ZSwgJ0Vycm9yOiBOT1RfU1VQUE9SVEVEX0VSUjogRE9N
IEV4Y2VwdGlvbiA5Jyk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHRy
dWUpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScs
IHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBJbmZpbml0eSkn
LCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgLUluZmluaXR5
KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5n
IiknLCB0cnVlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0
ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVj
dFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0
cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgNDIpJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIEluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKScs
IHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBudWxsKScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0VGhyb3dpbmdFeGNlcHRp
b24pJywgdHJ1ZSwgJ0Vycm9yOiB3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1w
dHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdHJ1ZSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIp
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCAtSW5maW5pdHkp
JywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp7fX0pJywgZmFsc2UpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1t
eVByb3BlcnR5OnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2R1bW15UHJvcGVydHk6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7
fX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywg
dHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6SW5maW5pdHl9KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dp
ZHRoOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnVuZGVmaW5lZH0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6
e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkn
LCB0cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdo
dDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp0cnVlfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2hlaWdodDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5p
dHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Oi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtoZWlnaHQ6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxl
dmVsOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp7fX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAn
RXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2
ZWw6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnRy
dWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2Nv
bXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9u
TGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlv
OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm51bGx9
KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp7fX0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86ZW1wdHlGdW5jdGlvbn0pJywgZmFs
c2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFz
cGVjdFJhdGlvOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0
aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0
cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjp7fX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0aW9u
fSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnRydWV9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5p
dHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5fSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3dpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gZmFsc2U7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFn
ZS1oYXMtbm8tc291cmNlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2
ODUzYTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpz
CkBAIC0wLDAgKzEsMjAgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IGFuIGltYWdlIHdpdGgg
bm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9uLiIpOwor
Cit2YXIgZW1wdHlGdW5jdGlvbiA9IGZ1bmN0aW9uKCkge307CisKK3ZhciBpbWcgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7CitpbWcuc3JjID0gbnVsbDsKKworZG9jdW1l
bnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgeworCQlkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndGVzdEltYWdlJykud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1
bmN0aW9uKTsKKwkJdGVzdEZhaWxlZCgiU2hvdWxkIGhhdmUgdGhyb3duIGV4Y2VwdGlvbi4gTm8g
ZXhjZXB0aW9uIHdhcyB0aHJvd24uLi4iKTsKKwkJZmluaXNoSlNUZXN0KCk7CisJfSBjYXRjaChl
KSB7CisJCXRlc3RQYXNzZWQoIkV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93bjogIiArIGUp
OworCQlmaW5pc2hKU1Rlc3QoKTsKKwl9Cit9OworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFm
dGVyLXVubG9hZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTA5MzM3
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpz
CkBAIC0wLDAgKzEsMjIgQEAKK2Rlc2NyaXB0aW9uKCJFbnN1cmVzIHRoYXQgdGhlIGNhbGxiYWNr
cyB3aWxsIG5vdCBleGVjdXRlIGFmdGVyIG9udW5sb2FkLiIpOworCitkb2N1bWVudC5ib2R5Lm9u
bG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIHdpbmRvdy5zZXRUaW1lb3V0KCd0ZXN0UGFzc2VkKCJO
byBjYWxsYmFja3MgY2FsbGVkIGFmdGVyIHVubG9hZCIpOyBmaW5pc2hKU1Rlc3QoKTsnLCAxMDAp
OworfQorCitkb2N1bWVudC5ib2R5Lm9udW5sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKAorICAgICAgICAi
aW1hZ2UvcG5nIiwKKyAgICAgICAgZnVuY3Rpb24oYmxvYikgeworICAgICAgICAgICAgdGVzdEZh
aWxlZCgiVW5leHBlY3RlZCB3ZWJraXRHZXRJbWFnZSBzdWNjZXNzIGNhbGxiYWNrLiIpOworICAg
ICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0sCisgICAgICAgIGZ1bmN0aW9uKGVy
cm9yKSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdl
IGVycm9yIGNhbGxiYWNrOiAiICsgZXJyb3IpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7
CisgICAgICAgIH0KKyAgICApOworfQorCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit3
aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292
ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTc2Y2M2Mwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpz
CkBAIC0wLDAgKzEsMTAgQEAKK2Rlc2NyaXB0aW9uKCJUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRH
ZXRJbWFnZSBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLiIpOworCit2YXIg
aW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworaW1nLndlYmtpdEdl
dEltYWdlID0gZnVuY3Rpb24oKSB7IHJldHVybiA0MjsgfQordmFyIHJlc3VsdCA9IGltZy53ZWJr
aXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8ocmVzdWx0KTsKKword2luZG93LmpzVGVz
dElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxi
YWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYzY1YTc5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMKQEAgLTAsMCArMSwxNyBA
QAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4i
KTsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9IGZ1bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFp
bGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNvcnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNhbGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsK
KyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRo
IG91dHB1dDogIiArIGVycm9yKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkg
dGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVudGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlz
IHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3MgZm9yIG5vdworZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0Nh
bGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmZlNWRiMjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQgdGhlIGNhbGxiYWNr
cyB3b3JrIGNvcnJlY3RseS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mg
RXJyb3IgY2FsbGJhY2sgd2FzIGNvcnJlY3RseSBjYWxsZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0
bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uNjdkZmI4YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3Mu
aHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0v
L0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVs
bWV0LmpwZyIgLz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1y
ZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5jNDhlZjg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNSBAQAorVGVzdHMgdGhhdCBJbWFnZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2Fs
bGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmlnaW4uCisKKworUEFTUzogVGhyZXcgZXhjZXB0
aW9uOiBFcnJvcjogU0VDVVJJVFlfRVJSOiBET00gRXhjZXB0aW9uIDE4CisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUt
b3JpZ2luLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4M2VlOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5o
dG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMzEgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0Pgor
ZnVuY3Rpb24gbG9nKG1zZykKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nIiku
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobXNnICsgIlxuIikpOworfQorCit2
YXIgZW1wdHlDYWxsYmFjayA9IGZ1bmN0aW9uKCkgeyB9OworCit3aW5kb3cub25sb2FkID0gZnVu
Y3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgdHJ5IHsKKyAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RJbWFnZSIpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUNhbGxiYWNrKTsKKyAgICAgICAgbG9nKCJGQUlMOiBEaWQgbm90IHRocm93
IGV4Y2VwdGlvbiIpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgbG9nICgiUEFTUzogVGhy
ZXcgZXhjZXB0aW9uOiAiICsgZSk7CisgICAgfQorCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
bm90aWZ5RG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3RzIHRo
YXQgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgY2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpbWFnZSBvZiBy
ZW1vdGUgb3JpZ2luLjwvcD4KKzxpbWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZyI+Cis8cHJlIGlkPSJsb2ciPjwvcHJl
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jl
c291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdk
NDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21pc2MvcmVzb3VyY2VzL2hlbG1ldC5qcGcgZGlmZmVyCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0IGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhZWI0YjY4Li4wMWMy
YTVlIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKQEAgLTI2Miw2ICsyNjIsOCBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAg
ICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmlk
bAogICAgIGh0bWwvSW1hZ2VEYXRhLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5pZGwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKICAgICBo
dG1sL01lZGlhRXJyb3IuaWRsCiAgICAgaHRtbC9UZXh0TWV0cmljcy5pZGwKICAgICBodG1sL1Zh
bGlkaXR5U3RhdGUuaWRsCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCmluZGV4IDk5M2ExMjEuLjdjYjA2OGYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hh
bmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIGZpbGVz
LgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDogRGl0dG8uCisgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMubWFrZTogRGl0dG8uCisgICAgICAgICogR05VbWFrZWZpbGUuYW06IERpdHRvLgor
ICAgICAgICAqIFdlYkNvcmUuZ3lwaTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcmk6IERp
dHRvLgorICAgICAgICAqIFdlYkNvcmUucHJvOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvajogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOiBEaXR0by4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxJbWFn
ZUVsZW1lbnRDdXN0b20uY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVJlc2l6ZU9wdGlv
bnMpOgorICAgICAgICAoV2ViQ29yZTo6SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFn
ZSk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06IENoYW5n
ZWQgdG8gY29udmVydCBTdHJpbmdzIHRvIEpTU3RyaW5ncyBjb3JyZWN0bHkgaW4gY2FsbGJhY2tz
LgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6
IENoYW5nZWQgYmluZGluZ3MtdGVzdCBmb3IgYWJvdmUuCisgICAgICAgIChXZWJDb3JlOjpKU1Rl
c3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0pOgorICAgICAgICAqIGh0bWwvQXN5
bmNJbWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
OnN0YXJ0KTogQ2xpZW50IG9mIHRoaXMgY2xhc3Mgbm8gbG9uZ2VyIGRvZXMgYW55IHJlZmNvdW50
aW5nCisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6
ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlG
aW5pc2hlZCk6IFJlZmFjdG9yZWQuCisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXpl
cjo6cmVzaXplQ29tcGxldGUpOiBBZGRlZCBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6OkFz
eW5jSW1hZ2VSZXNpemVyOjpyZXNpemVFcnJvcik6IERpdHRvLgorICAgICAgICAqIGh0bWwvQXN5
bmNJbWFnZVJlc2l6ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpD
YWxsYmFja0luZm86OkNhbGxiYWNrSW5mbyk6IE5vdyBvbmx5IHN0b3JlcyBuZWNlc3NldGllcy4K
KyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOiBJbXBsZW1lbnRhdGlvbiBvZiBKUyBm
dW5jdGlvbi4KKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBo
dG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2s6On5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6Cisg
ICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAg
ICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKTogIFJlZmFjdG9yZWQuCisg
ICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDogUmVmYWN0b3JlZC4KKyAgICAgICAg
KiBodG1sL1Jlc2l6ZU9wdGlvbnMuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpSZXNp
emVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVP
cHRpb25zOjpoZWlnaHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29t
cHJlc3Npb25MZXZlbCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVz
c2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJh
dGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlv
T3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9u
T3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0
aW9uKToKKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChX
ZWJDb3JlOjpSZXNpemVPcHRpb25zOjopOgorCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5
ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQ6IFF0IGJ1aWxkIGZp
eC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5jcHAKaW5kZXggN2FjM2U1MS4uY2U1YzhmMyAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAg
LTE4MCw2ICsxODAsOCBAQAogI2luY2x1ZGUgIkpTSURCUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAi
SlNJREJTdWNjZXNzRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpTSW1hZ2VEYXRhLmNwcCIKKyNpbmNs
dWRlICJKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIgorI2luY2x1ZGUgIkpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJKU0luZGV4ZWREYXRhYmFzZVJl
cXVlc3QuY3BwIgogI2luY2x1ZGUgIkpTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAiCiAjaW5jbHVk
ZSAiSlNLZXlib2FyZEV2ZW50LmNwcCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZSBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA3ZWM5MTVmLi4zMTZk
ZTU3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yMjMsNiArMjIzLDggQEAgRE9NX0NMQVNTRVMgPSBc
CiAgICAgSURCUmVxdWVzdCBcCiAgICAgSURCU3VjY2Vzc0V2ZW50IFwKICAgICBJbWFnZURhdGEg
XAorICAgIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBcCisgICAgSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjayBcCiAgICAgSW5kZXhlZERhdGFiYXNlUmVxdWVzdCBcCiAgICAgSW5qZWN0ZWRT
Y3JpcHRIb3N0IFwKICAgICBJbnNwZWN0b3JCYWNrZW5kIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
R05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGU3ODU3NDkuLmVk
YmFjN2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9H
TlVtYWtlZmlsZS5hbQpAQCAtMjc1LDYgKzI3NSw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2Vi
Q29yZS9odG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZGVv
RWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9JbWFnZURhdGEuaWRsIFwKKwlXZWJDb3JlL2h0
bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKIAlXZWJDb3JlL2h0bWwvVGV4dE1ldHJpY3MuaWRs
IFwKIAlXZWJDb3JlL2h0bWwvVmFsaWRpdHlTdGF0ZS5pZGwgXAogCVdlYkNvcmUvaHRtbC9Wb2lk
Q2FsbGJhY2suaWRsIFwKQEAgLTQ1NSw2ICs0NTcsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAog
CVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJD
b3JlL2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwKKwlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uaCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNwcCBcCkBAIC0xMjY3LDYgKzEyNzAsOCBAQCB3ZWJj
b3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50Lmgg
XAogCVdlYkNvcmUvaHRtbC9JbWFnZURhdGEuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRh
LmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggXAorCVdlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBcCiAJV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclRocmVhZC5jcHAgXAogCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQu
aCBcCiAJV2ViQ29yZS9odG1sL0xhYmVsc05vZGVMaXN0LmNwcCBcCkBAIC0xMjc0LDYgKzEyNzks
OCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvaHRtbC9NZWRpYUVycm9yLmggXAog
CVdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAogCVdlYkNvcmUvaHRtbC9QcmVsb2Fk
U2Nhbm5lci5oIFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgXAorCVdlYkNvcmUv
aHRtbC9SZXNpemVPcHRpb25zLmggXAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuY3BwIFwKIAlX
ZWJDb3JlL2h0bWwvU3RlcFJhbmdlLmggXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0cmljcy5oIFwK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkK
aW5kZXggZjJjZGQ2Ny4uZjllYjIxMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkK
KysrIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTE4Nyw2ICsxODcsOCBAQAogICAgICAgICAg
ICAgJ2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZp
ZGVvRWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmlkbCcsCisgICAg
ICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsJywKKyAgICAgICAg
ICAgICdodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdo
dG1sL01lZGlhRXJyb3IuaWRsJywKICAgICAgICAgICAgICdodG1sL1RleHRNZXRyaWNzLmlkbCcs
CiAgICAgICAgICAgICAnaHRtbC9UaW1lUmFuZ2VzLmlkbCcsCkBAIC01NzEsNiArNTczLDcgQEAK
ICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywK
ICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3Bw
JywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCcsCisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNw
cCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNw
cCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmgn
LAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3Bw
JywKQEAgLTE2NTYsNiArMTY1OSw4IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MVmlld1NvdXJj
ZURvY3VtZW50LmgnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmNwcCcsCiAgICAgICAg
ICAgICAnaHRtbC9JbWFnZURhdGEuaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmgnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmgnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCcsCiAg
ICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCcsCiAgICAgICAgICAgICAnaHRt
bC9MYWJlbHNOb2RlTGlzdC5jcHAnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBi
L1dlYkNvcmUvV2ViQ29yZS5wcmkKaW5kZXggMjVjOTVmZi4uNGU2ZWZlNyAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC00MjIsNiAr
NDIyLDggQEAgSURMX0JJTkRJTkdTICs9IFwKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRs
IFwKICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsIFwKICAgICBodG1sL0ltYWdlRGF0YS5p
ZGwgXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAorICAgIGh0bWwv
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBcCiAgICAgaHRtbC9NZWRpYUVycm9yLmlk
bCBcCiAgICAgaHRtbC9UZXh0TWV0cmljcy5pZGwgXAogICAgIGh0bWwvVGltZVJhbmdlcy5pZGwg
XApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8K
aW5kZXggOTJhNzc1Yy4uMzU1MjMyNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybwor
KysgYi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0zMTUsNiArMzE1LDcgQEAgU09VUkNFUyArPSBc
CiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmlu
ZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3Mv
anMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTSFRN
TEltYWdlRWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxl
bWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0
b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5j
cHAgXApAQCAtNzA0LDYgKzcwNSw3IEBAIFNPVVJDRVMgKz0gXAogICAgIGh0bWwvSW1hZ2VSZXNp
emVyVGhyZWFkLmNwcCBcCiAgICAgaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXAogICAgIGh0bWwv
UHJlbG9hZFNjYW5uZXIuY3BwIFwKKyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIFwKICAgICBo
dG1sL1N0ZXBSYW5nZS5jcHAgXAogICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5jcHAgXAogICAgIGlu
c3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAgXApAQCAtMTQzNiw5ICsxNDM4LDEyIEBAIEhFQURF
UlMgKz0gXAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5oIFwKICAgICBodG1sL0hUTUxWaWV3
U291cmNlRG9jdW1lbnQuaCBcCiAgICAgaHRtbC9JbWFnZURhdGEuaCBcCisgICAgaHRtbC9JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmggXAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggXAogICAgIGh0bWwvTGFi
ZWxzTm9kZUxpc3QuaCBcCiAgICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKyAgICBodG1sL1Jl
c2l6ZU9wdGlvbnMuaCBcCiAgICAgaHRtbC9TdGVwUmFuZ2UuaCBcCiAgICAgaHRtbC9UaW1lUmFu
Z2VzLmggXAogICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dl
YkNvcmUudmNwcm9qCmluZGV4IDYyNGQ0MzMuLjAxN2UzN2IgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJv
ai9XZWJDb3JlLnZjcHJvagpAQCAtMzc2NjEsNiArMzc2NjEsMTQgQEAKIAkJCQk+DQogCQkJPC9G
aWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCINCisJ
CQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0zNzY4OSw2
ICszNzY5NywxNCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRp
dmVQYXRoPSIuLlxodG1sXFJlc2l6ZU9wdGlvbnMuY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0K
KwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmgiDQor
CQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1s
XFN0ZXBSYW5nZS5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpAQCAtNDAxMjgsNyArNDAxNDQs
OSBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxl
DQorCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MRW1iZWRFbGVtZW50
Q3VzdG9tLmNwcCINCisKIAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQogCQkJCQkJ
TmFtZT0iRGVidWd8V2luMzIiDQpAQCAtNDAzODgsNiArNDA0MDYsNTkgQEAKIAkJCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8RmlsZQ0KKworCQkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAiDQorCQkJ
CQk+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIN
CisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wN
CisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJl
bGVhc2V8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0K
KwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4N
CisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJ
CQkJCQlOYW1lPSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBp
bGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxG
aWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJ
CUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJ
CQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZV9D
YWlyb3xXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQor
CQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJ
CQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1
ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9v
bCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPC9GaWxlPg0K
KwkJCQk8RmlsZQ0KIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbnB1
dEVsZW1lbnRDdXN0b20uY3BwIg0KIAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMzBiMjlkLi4y
MjhjMDQwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAt
MzUwOSw2ICszNTA5LDE1IEBACiAJCUIwMTQ5RTdFMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0lt
YWdlUmVzaXplci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjAxNDlFN0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi87IH07
CiAJCUIwMTQ5RTdGMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0IxMUE0
QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgKi87IH07CiAJCUIwMTQ5RTgw
MTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAv
KiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLzsgfTsKKwkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0Mjgz
IC8qIFJlc2l6ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi87
IH07CisJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIw
MTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRFNkJG
NjExQzdGMDdFMDAyMTQyODMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEExMUFCMUVBMDAw
MTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAg
LyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJ
bWFnZUVsZW1lbnRDdXN0b20uY3BwICovOyB9OworCQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMzNzMg
LyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAg
Ki87IH07CisJCUIwQTcxNUI3MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5jcHAgKi87IH07CisJCUIwQTcxNUI4MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEIwQTcxNUI0MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCAqLzsgfTsKKwkJQjBBNzE1QjkxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcxNUJBMTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2
OCAvKiBKU1NWR0FFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNw
cCAqLzsgfTsKIAkJQjIwMTExMDgwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFC
Nzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2
NzcwMDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNT
VkdQT0RUeXBlV3JhcHBlci5oICovOyB9OwpAQCAtODg0NSw2ICs4ODU0LDE3IEBACiAJCUIwMTQ5
RTdBMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBc3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhy
ZWFkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXpl
clRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIy
MTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSW1hZ2VSZXNpemVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVB
MDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6
ZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVB
QzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRp
b25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6ZU9wdGlv
bnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTU3OTExRDAxQjIxMDAz
QzMzNzMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIwQTcxNTdBMTFEMDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUIzMTFEMDQz
MUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzcz
IC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDEx
MTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQjIwMTExMDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIxMTI3QTUwQjMxODY3NzAwMDlCRTUzIC8qIEpT
U1ZHUE9EVHlwZVdyYXBwZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
U1ZHUE9EVHlwZVdyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNjk5
LDYgKzEzNzE5LDEwIEBACiAJCQkJQTc3OTc5MTMwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0
YS5jcHAgKi8sCiAJCQkJQTc3OTc5MTQwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5oICov
LAogCQkJCUE3Nzk3OTE1MEQ2QjlEMEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuaWRsICovLAorCQkJ
CUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgg
Ki8sCisJCQkJQjBBNzE1NzkxMUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaWRsICovLAorCQkJCUIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyog
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCAqLywKIAkJCQlCMDE0OUU3QjExQTRCMjE1
MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLywKIAkJCQlCMDE0OUU3QzExQTRC
MjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi8sCiAJCQkJQTQ1NkZBMjQxMUFE
NEE4MzAwMjBCNDIwIC8qIExhYmVsc05vZGVMaXN0LmNwcCAqLywKQEAgLTEzNzA5LDYgKzEzNzMz
LDggQEAKIAkJCQlFNDQ2MTM5QzBDRDYzMzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5pZGwgKi8s
CiAJCQkJRTRENEFCRTAwRDc1NDJGMDAwRjk2ODY5IC8qIFByZWxvYWRTY2FubmVyLmNwcCAqLywK
IAkJCQlFNEQ0QUJFMTBENzU0MkYxMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIuaCAqLywKKwkJ
CQlCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi8sCisJCQkJ
QjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLywKIAkJCQlBNUFG
QjM0RDExNTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmNwcCAqLywKIAkJCQlBNUFGQjM0RTEx
NTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmggKi8sCiAJCQkJQkNFRjQ1RTgwRTY4Nzc2NzAw
MUMxMjg3IC8qIFRleHRNZXRyaWNzLmggKi8sCkBAIC0xMzk0OCw2ICsxMzk3NCwxMCBAQAogCQkJ
CUU0NDYxNDBGMENENjgyNjkwMEZBREE3NSAvKiBKU0hUTUxWaWRlb0VsZW1lbnQuaCAqLywKIAkJ
CQlBNzc5NzkyNDBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuY3BwICovLAogCQkJCUE3
Nzk3OTI1MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5oICovLAorCQkJCUIwQTcxNUIz
MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovLAor
CQkJCUIwQTcxNUI0MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCAqLywKKwkJCQlCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAogCQkJCTQ5RUVDRUY4MTA1MDcwQzQw
MDA5OUZBQiAvKiBKU0ludDE2QXJyYXkuY3BwICovLAogCQkJCTQ5RUVDRUY5MTA1MDcwQzQwMDA5
OUZBQiAvKiBKU0ludDE2QXJyYXkuaCAqLywKIAkJCQk0OUVFQ0VGNjEwNTA3MEM0MDAwOTlGQUIg
LyogSlNJbnQzMkFycmF5LmNwcCAqLywKQEAgLTE1NTEzLDYgKzE1NTQzLDcgQEAKIAkJCQlCQzJF
RDdBNDBDNkMwRjM2MDA5MjBCRkYgLyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywK
IAkJCQlCQ0Q0MUFCQTBDMDYwREU4MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3Vz
dG9tLmNwcCAqLywKIAkJCQlCQzJFRDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1l
RWxlbWVudEN1c3RvbS5jcHAgKi8sCisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkNDNzAwNTMz
REQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVDQTMwQzA3
ODFCQjAwQ0QyMEYwIC8qIEpTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCTQ0
OEFEMjdBMEE0ODEzNzkwMDIzRDE3OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5j
cHAgKi8sCkBAIC0xODExOSw2ICsxODE1MCw4IEBACiAJCQkJMUE4MjBEOTIwQTEzRUJBNjAwQUY4
NDNDIC8qIEltYWdlRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTA4OTU4MjU2MEU4NTdB
N0UwMEY4MkM4MyAvKiBJbWFnZUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM3RjQ0QTgw
QjlFMzI0RTAwQTlEMDgxIC8qIEltYWdlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIw
NEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCMDRFNkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMDE0OUU4MDExQTRCMjE1MDAx
OTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMjc1MzU3
MTBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2VTb3VyY2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTRC
MzQ4MDk0MEVFRjUwRDQwMEFDMUI0MSAvKiBJbWFnZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLywK
QEAgLTE4MzUxLDYgKzE4Mzg0LDggQEAKIAkJCQlDNTZDOTFBNzExOUQ5MTg3MDBERTRDRDkgLyog
SlNJREJTdWNjZXNzRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNkM0OUY0MEQ3REJBMDUw
MEZGQTU1OCAvKiBKU0ltYWdlQ29uc3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3Nzk3
OTI5MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjBBNzE1QjgxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzE1QkExMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlDNUY0RjQxMTExOTMw
NkMwMDBGREZBREQgLyogSlNJbmRleGVkRGF0YWJhc2VSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywK
IAkJCQk3QTBFNzZEQjEwQkYwNTk4MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuaCBp
biBIZWFkZXJzICovLAogCQkJCTQxRjA2MENFMEY1RUVCMkIwMEEwN0VBQyAvKiBKU0luc3BlY3Rv
ckJhY2tlbmQuaCBpbiBIZWFkZXJzICovLApAQCAtMTg4ODUsNiArMTg5MjAsNyBAQAogCQkJCUE4
OUNDQzUzMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxl
Y3Rpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0IxNkMyRjA5NzlDM0JEMDA0Njc3
NDEgLyogUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0
MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNEY3MTQyMEQ1QTZG
NDQwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzRGNzEz
QzBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2UuaCBpbiBIZWFkZXJzICovLAog
CQkJCTUxNEM3Njc5MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5oIGluIEhlYWRl
cnMgKi8sCkBAIC0yMDY1NCw2ICsyMDY5MCw3IEBACiAJCQkJQkM0OTE4QzgwQkZFQTA1MDAwOUQ2
MzE2IC8qIEpTSFRNTElGcmFtZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyRUQ2
NTAwQzZCQzQ4QzAwOTIwQkZGIC8qIEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMUFFMkFBOTcwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxl
bWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyog
SlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3RTk4
MEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxJbnB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQkNDNDM4NzgwRTg4NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3Rv
bS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5OTBBMUNERDJEMDBCNDJCMjUgLyogSlNI
VE1MSXNJbmRleEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMDcxMiw2ICsyMDc0OSw4
IEBACiAJCQkJQkM2QzQ5RjMwRDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzc5NzkyODBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFn
ZURhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTdEMDMxOEUwRTkzNTQwMzAwRTI0QUNEIC8q
IEpTSW1hZ2VEYXRhQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNUI3MTFEMDQz
MUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMg
Ki8sCisJCQkJQjBBNzE1QjkxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUM1RjRGNDEwMTE5MzA2QzAwMEZERkFE
RCAvKiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0Ew
RTc2REExMEJGMDU5ODAwQTAyNzZFIC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTdBMEU3NkQ1MTBCRjA1MDcwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0
SG9zdEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIxMjU5LDYgKzIxMjk4LDcgQEAKIAkJ
CQlBODlDQ0M1MjBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTMzMDlFMDkwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxh
Y2VTZWxlY3Rpb25Db21tYW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzJFMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNTFCMTFD
QzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkz
NEY3MTNFMEQ1QTZGMjgwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk1MTRDNzY1MDBDRTkyMzRFMDA3RUYzQ0QgLyogUmVzb3VyY2VFcnJvck1hYy5t
bSBpbiBTb3VyY2VzICovLAogCQkJCTUxNEM3Njc4MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJj
ZUhhbmRsZS5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNI
VE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi4xOTYyNTViCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCkBAIC0wLDAgKzEsMTY0IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlv
bi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1l
cyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJ
UyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAq
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
CisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZp
Zy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIkpTSFRNTEltYWdlRWxl
bWVudC5oIgorCisjaW5jbHVkZSAiRE9NV2luZG93LmgiCisjaW5jbHVkZSAiSFRNTEltYWdlRWxl
bWVudC5oIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1
ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0
aW9ucy5oIgorCisjaW5jbHVkZSA8cnVudGltZS9KU0Z1bmN0aW9uLmg+CisjaW5jbHVkZSA8cnVu
dGltZS9KU1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9HZXRQdHIuaD4KKyNpbmNsdWRlIDx3dGYv
UGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKwordXNpbmcgbmFtZXNwYWNl
IEpTQzsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgUGFzc1JlZlB0cjxJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IGNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhF
eGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
dmFsdWUpCit7CisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsK
KyAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAg
ICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZh
bHVlKTsKKyAgICByZXR1cm4gSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShv
YmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQYXNzUmVmUHRyPEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2s+IGNyZWF0ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2soRXhlY1N0YXRl
KiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQor
eworICAgIC8vIEFyZ3VtZW50IGlzIG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dl
ZCksIGFuZCBudWxsIGlzIGFsbG93ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxs
KCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygmSlNGdW5j
dGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVfTUlTTUFU
Q0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3QqIG9iamVj
dCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrOjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0
cjxSZXNpemVPcHRpb25zPiBjcmVhdGVSZXNpemVPcHRpb25zKEV4ZWNTdGF0ZSogZXhlYywgSlNW
YWx1ZSB2YWx1ZSkKK3sKKyAgICBSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9
IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpOworCisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwg
KGhlbmNlIHVuZGVmaW5lZCBpcyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBp
ZiAodmFsdWUuaXNVbmRlZmluZWRPck51bGwoKSkgeworICAgICAgICAvLyBVc2UgZGVmYXVsdCBv
cHRpb25zLgorICAgICAgICByZXR1cm4gcmVzaXplT3B0aW9ucy5yZWxlYXNlKCk7CisgICAgfQor
ICAgIEpTT2JqZWN0KiBvYmplY3QgPSB2YWx1ZS50b09iamVjdChleGVjKTsKKworICAgIEpTVmFs
dWUgd2lkdGggPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJ3aWR0aCIpKTsK
KyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlm
ICghd2lkdGguaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRXaWR0
aCh3aWR0aC50b0Zsb2F0KGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBoZWlnaHQgPSBv
YmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJoZWlnaHQiKSk7CisgICAgaWYgKGV4
ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWhlaWdodC5p
c1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldEhlaWdodChoZWlnaHQu
dG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgY29tcHJlc3Npb25MZXZlbCA9
IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgImNvbXByZXNzaW9uTGV2ZWwiKSk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBp
ZiAoIWNvbXByZXNzaW9uTGV2ZWwuaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRp
b25zLT5zZXRDb21wcmVzc2lvbkxldmVsKGNvbXByZXNzaW9uTGV2ZWwudG9GbG9hdChleGVjKSk7
CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAw
OworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0
KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7CisgICAgaWYg
KGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIXByZXNl
cnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5z
ZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVhbihleGVjKSk7
CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAw
OworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdldChleGVjLCBJ
ZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghb3JpZW50YXRpb24uaXNVbmRlZmlu
ZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9wdGlvbih1c3Ry
aW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAgICAgaWYgKGV4
ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAg
cmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpTSFRNTEltYWdl
RWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRlKiBleGVjKQoreworICAgIEV4Y2VwdGlv
bkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0
cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7CisKKyAgICBSZWZQdHI8SW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3Qq
PihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAg
aWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsK
KyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxH
bG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgUmVmUHRyPFJl
c2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4
ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAg
IHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChyZXNpemVPcHRpb25zKTsKKworICAg
IEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVsZW1lbnQqPihp
bXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFj
ay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRpb25zLnJlbGVh
c2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAgcmV0dXJuIGpz
VW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRmMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTc5LDcgKzIxNzksMTEgQEAgc3ViIEdlbmVy
YXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJh
bSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5h
bWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQo
dG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIGlmICgkcGFy
YW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7
XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0p
KTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTtc
biIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2Fs
bGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrLmNwcAorKysgYi9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5LDcgKzg5LDcg
QEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0oU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAgICBFeGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxP
YmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAg
IGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3MyUGFyYW0pKTsKLSAgICBhcmdzLmFwcGVuZCh0
b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4ZWMsIHN0ckFy
ZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTsKICAgICBtX2RhdGEtPmlu
dm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVz
aXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5o
IgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCiAj
aW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5o
IgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0eT4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBBc3luY0lt
YWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBv
dXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxs
YmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0
aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9u
T3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBP
dXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
az4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25z
KQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1h
Z2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxs
YmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKSk7Cisg
ICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBjYWNoZWRJ
bWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVP
cHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hl
ZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2ly
ZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JD
YWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRp
b24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorQXN5bmNJbWFnZVJlc2l6
ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRU
eXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxi
YWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucykKICAgICA6IG1fY2FjaGVk
SW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQogICAgICwg
bV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNr
KGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKLSAgICAsIG1f
ZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1YWxpdHkpCi0g
ICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAgICwgbV9vcmll
bnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXplT3B0aW9ucyhy
ZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5pc09iamVjdCgp
KTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBBc3luY0ltYWdl
UmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7Cisg
ICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hlZEltYWdlLT5h
ZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDExICs3MSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VS
ZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7
CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVzb3VyY2UtPmRh
dGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0g
ICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwot
ICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNhbGxiYWNrSW5m
bywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRp
b09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJl
YWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6
ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBt
X3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRpb25zLT5hc3Bl
Y3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0aW9uKCkpKQog
ICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNp
emVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+
aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCBibG9iLmdldCgpKTsKK30KKwor
dm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IoKQoreworICAgIGlmIChtX2Vycm9y
Q2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBlY3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBp
bWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXpl
ci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKaW5kZXggM2VlZWVhZC4uYzQy
Mjg0MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKKysrIGIv
V2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKQEAgLTQwLDcgKzQwLDExIEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdlOworY2xhc3MgSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNz
IEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6ZU9wdGlvbnM7CisKIAogLy8gQXN5bmNJ
bWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJbWFnZSB0aGF0IGlzIHBhc3NlZCBpbiB0
byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0cyBhbiBJbWFnZVJlc2l6ZXJUaHJlYWQg
dG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVkLCBJbWFnZVJlc2l6ZXJUaHJlYWQKQEAg
LTQ4LDU2ICs1Miw0MiBAQCBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CiAvLyBvY2N1ciwgYm90
aCBvYmplY3RzIGFyZSBkZXN0cm95ZWQuIElmIHRoZSBkb2N1bWVudCBpcyBkZXN0cm95ZWQgZHVy
aW5nIHJlc2l6aW5nLAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2lsbCByZWNlaXZlIGEgbm90aWZp
Y2F0aW9uIGFuZCBzdWJzZXF1ZW50bHkgYmxvY2sgdGhlIGNhbGxiYWNrcyBmcm9tCiAvLyBvY2N1
cnJpbmcuCi1jbGFzcyBBc3luY0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNs
aWVudCwgcHVibGljIFJlZkNvdW50ZWQ8QXN5bmNJbWFnZVJlc2l6ZXI+IHsKK2NsYXNzIEFzeW5j
SW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1YmxpYzoKICAg
ICBzdHJ1Y3QgQ2FsbGJhY2tJbmZvIHsKLSAgICAgICAgQ2FsbGJhY2tJbmZvKFBhc3NSZWZQdHI8
QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQorICAgICAgICBDYWxsYmFja0lu
Zm8oUGFzc093blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAg
ICAgICAgICA6IGFzeW5jSW1hZ2VSZXNpemVyKGFzeW5jSW1hZ2VSZXNpemVyKQogICAgICAgICAg
ICAgLCBibG9iKDApCiAgICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFJlZlB0cjxBc3lu
Y0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CisgICAgICAgIE93blB0cjxBc3luY0lt
YWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CiAgICAgICAgIFJlZlB0cjxCbG9iPiBibG9i
OwogICAgIH07Ci0gICAgCisKICAgICBlbnVtIE91dHB1dFR5cGUgewogICAgICAgICBKUEVHLAog
ICAgICAgICBQTkcKICAgICB9OwogCi0gICAgZW51bSBBc3BlY3RSYXRpb09wdGlvbiB7Ci0gICAg
ICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCi0gICAgICAgIElnbm9yZUFzcGVjdFJhdGlvCi0gICAg
fTsKLQotICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24gewotICAgICAgICBDb3JyZWN0T3JpZW50
YXRpb24sCi0gICAgICAgIElnbm9yZU9yaWVudGF0aW9uCi0gICAgfTsKLQotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBjcmVhdGUoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRU
eXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywg
U2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRp
b24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMgdm9pZCBzdGFydChTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0ltYWdlUmVzaXpl
cigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBmb3Igbm90aWZp
Y2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFja3NPaykuCi0K
LSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhNRTogTm90IHll
dCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8qIEZJWE1FOiBO
b3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0ZShSZWZQdHI8
QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAgICBBc3luY0lt
YWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5k
cywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNr
LCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24pOwor
ICAgIEFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBDYWNoZWRJbWFn
ZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVP
cHRpb25zPik7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNl
Kik7CiAKICAgICBDYWNoZWRJbWFnZSogbV9jYWNoZWRJbWFnZTsKLSAgICBTY3JpcHRWYWx1ZSBt
X3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBTY3JpcHRWYWx1ZSBtX2Vycm9yQ2FsbGJhY2s7Ci0gICAg
Ci0gICAgLy8gUGFyYW1ldGVycyB0byBwYXNzIGludG8gSW1hZ2VSZXNpemVyVGhyZWFkLgorICAg
IENhbGxiYWNrSW5mbyogbV9jYWxsYmFja0luZm87CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworCiAgICAgT3V0cHV0VHlwZSBtX291dHB1dFR5
cGU7Ci0gICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9xdWFsaXR5Owot
ICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgT3JpZW50YXRp
b25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSZXNpemVPcHRpb25z
PiBtX3Jlc2l6ZU9wdGlvbnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5jcHAKaW5kZXggNWQ1OTIzZC4uMmZmNTFmNiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MSW1h
Z2VFbGVtZW50LmNwcApAQCAtMzIsOSArMzIsMTcgQEAKICNpbmNsdWRlICJIVE1MRG9jdW1lbnQu
aCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIK
KyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJS
ZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNpbmNsdWRlICJTY3Jp
cHRFdmVudExpc3RlbmVyLmgiCiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRl
ICJBc3luY0ltYWdlUmVzaXplci5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1MSw0ICs0NTksMzQgQEAgdm9pZCBIVE1MSW1hZ2VF
bGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpCiAgICAgSFRNTEVsZW1lbnQ6Ondp
bGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7CiB9CiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpF
UikKKwordm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWltZVR5
cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJh
Y2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywg
UGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zLCBFeGNlcHRpb25Db2RlJiBl
YykKK3sKKyAgICBpZiAoIXNyYygpLmlzVmFsaWQoKSkgeworICAgICAgICBlYyA9IElOVkFMSURf
U1RBVEVfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gVGhlIHRhaW50c0Nh
bnZhcyBtZXRob2QgYWxzbyBhbGxvd3MgZGF0YSBVUkxzLgorICAgIGlmIChkb2N1bWVudCgpLT5z
ZWN1cml0eU9yaWdpbigpLT50YWludHNDYW52YXMoc3JjKCkpKSB7CisgICAgICAgIGVjID0gU0VD
VVJJVFlfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJbWFnZVJlc2l6
ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZTsKKyAgICBpZiAobWltZVR5cGUgPT0gImltYWdlL2pw
ZWciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OkpQRUc7CisgICAg
ZWxzZSBpZiAobWltZVR5cGUgPT0gImltYWdlL3BuZyIpCisgICAgICAgIG91dHB1dFR5cGUgPSBB
c3luY0ltYWdlUmVzaXplcjo6UE5HOworICAgIGVsc2UgeworICAgICAgICBlYyA9IE5PVF9TVVBQ
T1JURURfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJbWFnZVJlc2l6
ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgbV9pbWFnZUxvYWRlci5pbWFnZSgp
LCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlv
bnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwvSFRNTElt
YWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
aHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1l
bnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBIVE1M
Rm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CitjbGFzcyBJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsKIAogY2xhc3Mg
SFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJpZW5kIGNsYXNz
IEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAogICAgIGJvb2wg
aGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRlci5oYXZlRmly
ZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyAgICB2b2lk
IHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQ
YXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNlbmRpZgorCiBw
cm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50Lmlk
bAppbmRleCAwZmM3MjcxLi5hZTNjNWU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTElt
YWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCkBA
IC00OCw2ICs0OCwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIC8vIE9iamVjdGl2ZS1DIGV4
dGVuc2lvbjoKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBhbHREaXNwbGF5
U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRlSW1hZ2VVUkw7
CisjZWxzZQorCisjaWYgZGVmaW5lZChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJiYgRU5BQkxFX0lN
QUdFX1JFU0laRVIKKyAgICAgICAgLy8gRnVuY3Rpb25zCisgICAgICAgIFtDdXN0b21dIHZvaWQg
d2Via2l0R2V0SW1hZ2UoaW4gRE9NU3RyaW5nIG1pbWVUeXBlLCBpbiBJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbT3B0aW9uYWxdIGluIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2sgZXJyb3JDYWxsYmFjaywgW09wdGlvbmFsXSBpbiBSZXNpemVPcHRpb25zIG9w
dGlvbnMpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRpZgorCiAjZW5k
aWYKICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmZmZjg2Ci0tLSAvZGV2L251bGwKKysr
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAtMCwwICsxLDUz
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisg
KiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKCkg
eyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
LCBjb25zdCBTdHJpbmcmKSA9IDA7Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0Vf
UkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIGIvV2ViQ29y
ZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmZmY2NiZjgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBzdG9y
YWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1JTUFHRV9SRVNJWkVS
LAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayB7Cisg
ICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRE9NU3RyaW5nIGVycm9yKTsKKyAgICB9Owor
fQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5o
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NDAwZjMKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCArMSw1NCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9i
OworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3Mg
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8SW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKikgPSAwOworfTsKKworfQorCisjZW5kaWYgLy8gRU5B
QkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
X2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBmZDg3ZgotLS0gL2Rldi9udWxsCisrKyBi
L1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEs
MzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAq
CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICog
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29n
bGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQK
KyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9u
YWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gQmxvYiBibG9i
KTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVh
ZC5jcHAgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRleCAxYmFlNmEw
Li5jZDk5ZGNjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNw
cAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAtMzYsNiArMzYs
NyBAQAogI2luY2x1ZGUgIkJpdG1hcEltYWdlLmgiCiAjaW5jbHVkZSAiSW1hZ2UuaCIKICNpbmNs
dWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTUwLDcgKzUxLDcgQEAgc3RhdGljIHZvaWQgcmV0dXJuQmxvYk9yRXJyb3Io
dm9pZCogY2FsbGJhY2tJbmZvcm1hdGlvbikKICAgICBkZWxldGUgY2FsbGJhY2tJbmZvOwogfQog
Ci1ib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+
IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZv
LCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2ly
ZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09w
dGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0
aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRp
b25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6
T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCiB7CiAgICAgSW1hZ2VSZXNpemVy
VGhyZWFkKiBpbWFnZVJlc2l6ZXJUaHJlYWQgPSBuZXcgSW1hZ2VSZXNpemVyVGhyZWFkKGNhbGxi
YWNrSW5mbywgb3V0cHV0VHlwZSwgZGVzaXJlZEJvdW5kcywgcXVhbGl0eSwgYXNwZWN0UmF0aW9P
cHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKTsKIApAQCAtNjIsNyArNjMsNyBAQCBib29sIEltYWdl
UmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwg
QXN5bmNJbWFnZVJlcwogICAgIHJldHVybiBpbWFnZVJlc2l6ZXJUaHJlYWQtPm1fdGhyZWFkSUQ7
CiB9CiAKLUltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VS
ZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91
dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5
LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24s
IEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikK
K0ltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVy
OjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5
cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNp
emVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0
aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCiAgICAgOiBtX3RocmVh
ZElEKDApCiAgICAgLCBtX2NhbGxiYWNrSW5mbyhjYWxsYmFja0luZm8pCiAgICAgLCBtX291dHB1
dFR5cGUob3V0cHV0VHlwZSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJU
aHJlYWQuaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaAppbmRleCBhZTVhZGU1
Li42MTAwYjU1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgK
KysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCkBAIC0zNCw2ICszNCw3IEBA
CiAjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCiAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXpl
ci5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CkBAIC00MiwxMSArNDMsMTEgQEAgY2xhc3MgU2hhcmVkQnVmZmVyOwogCiBjbGFzcyBJbWFnZVJl
c2l6ZXJUaHJlYWQgewogcHVibGljOgotICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8q
LCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBm
bG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5j
SW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbik7CisgICAgc3RhdGljIGJvb2wgc3RhcnQo
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNh
bGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2ly
ZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9u
LCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7CiAgICAgfkltYWdlUmVzaXplclRo
cmVhZCgpOwogCiBwcml2YXRlOgotICAgIEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVz
aXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNp
emUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVj
dFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24pOworICAg
IEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5
bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQg
cXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6
Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFk
U3RhcnQodm9pZCopOwogICAgIHZvaWQqIGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OSw4
ICs2MCw4IEBAIHByaXZhdGU6CiAgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgbV9v
dXRwdXRUeXBlOwogICAgIEludFNpemUgbV9kZXNpcmVkQm91bmRzOwogICAgIGZsb2F0IG1fcXVh
bGl0eTsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RS
YXRpb09wdGlvbjsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gbV9v
cmllbnRhdGlvbk9wdGlvbjsKKyAgICBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBt
X2FzcGVjdFJhdGlvT3B0aW9uOworICAgIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9u
IG1fb3JpZW50YXRpb25PcHRpb247CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVz
aXplT3B0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjA3YmNi
OQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAt
MCwwICsxLDc1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBt
ZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVS
KQorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5n
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRp
YyBjb25zdCBpbnQgZGltZW5zaW9uc0xvd2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBk
aW1lbnNpb25zVXBwZXJMaW1pdCA9IDMyNzY3Oworc3RhdGljIGNvbnN0IGZsb2F0IGNvbXByZXNz
aW9uTG93ZXJMaW1pdCA9IDAuMGY7CitzdGF0aWMgY29uc3QgZmxvYXQgY29tcHJlc3Npb25VcHBl
ckxpbWl0ID0gMS4wZjsKKworc3RhdGljIGNvbnN0IGZsb2F0IGRlZmF1bHRDb21wcmVzc2lvbiA9
IDAuODVmOworCitQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0
ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9w
dGlvbnM6OlJlc2l6ZU9wdGlvbnMoKQorICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgp
CisgICAgLCBtX2NvbXByZXNzaW9uTGV2ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJ
Z25vcmVBc3BlY3RSYXRpbykKKyAgICAsIG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50
YXRpb24pCit7Cit9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7
IG1fd2lkdGggPSB3aWR0aCA+PSBkaW1lbnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1l
bnNpb25zVXBwZXJMaW1pdCA/IHdpZHRoIDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRo
KCkgeyByZXR1cm4gbV93aWR0aDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChp
bnQgaGVpZ2h0KSB7IG1faGVpZ2h0ID0gaGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYm
IGhlaWdodCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNp
emVPcHRpb25zOjpoZWlnaHQoKSB7IHJldHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9w
dGlvbnM6OnNldENvbXByZXNzaW9uTGV2ZWwoZmxvYXQgY29tcHJlc3Npb25MZXZlbCkgeyBtX2Nv
bXByZXNzaW9uTGV2ZWwgPSBjb21wcmVzc2lvbkxldmVsID49IGNvbXByZXNzaW9uTG93ZXJMaW1p
dCAmJiBjb21wcmVzc2lvbkxldmVsIDw9IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA/IGNvbXByZXNz
aW9uTGV2ZWwgOiBkZWZhdWx0Q29tcHJlc3Npb247IH0KK2Zsb2F0IFJlc2l6ZU9wdGlvbnM6OmNv
bXByZXNzaW9uTGV2ZWwoKSB7IHJldHVybiBtX2NvbXByZXNzaW9uTGV2ZWw7IH0KKwordm9pZCBS
ZXNpemVPcHRpb25zOjpzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0
aW8pIHsgbV9hc3BlY3RSYXRpb09wdGlvbiA9IHByZXNlcnZlQXNwZWN0UmF0aW8gPyBQcmVzZXJ2
ZUFzcGVjdFJhdGlvIDogSWdub3JlQXNwZWN0UmF0aW87IH0KK1Jlc2l6ZU9wdGlvbnM6OkFzcGVj
dFJhdGlvT3B0aW9uIFJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKCkgeyByZXR1cm4g
bV9hc3BlY3RSYXRpb09wdGlvbjsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0
aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbikgeyBtX29yaWVudGF0aW9uT3B0aW9u
ID0gb3JpZW50YXRpb25PcHRpb24gPT0gImF1dG8iID8gQ29ycmVjdE9yaWVudGF0aW9uIDogSWdu
b3JlT3JpZW50YXRpb247IH0KK1Jlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIFJlc2l6
ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKCkgeyByZXR1cm4gbV9vcmllbnRhdGlvbk9wdGlv
bjsgfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0Vf
UkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmggYi9XZWJD
b3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjUzMGNjOTUKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9u
cy5oCkBAIC0wLDAgKzEsODcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
ICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFJlc2l6ZU9wdGlvbnNfaAorI2RlZmluZSBSZXNp
emVPcHRpb25zX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3Rm
L1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgUmVzaXplT3B0aW9ucyA6IHB1Ymxp
YyBSZWZDb3VudGVkPFJlc2l6ZU9wdGlvbnM+IHsKK3B1YmxpYzoKKyAgICBlbnVtIEFzcGVjdFJh
dGlvT3B0aW9uIHsKKyAgICAgICAgUHJlc2VydmVBc3BlY3RSYXRpbywKKyAgICAgICAgSWdub3Jl
QXNwZWN0UmF0aW8KKyAgICB9OworCisgICAgZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7CisgICAg
ICAgIENvcnJlY3RPcmllbnRhdGlvbiwKKyAgICAgICAgSWdub3JlT3JpZW50YXRpb24KKyAgICB9
OworCisgICAgc3RhdGljIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlKCk7CisKKyAg
ICB2b2lkIHNldFdpZHRoKGludCB3aWR0aCk7CisgICAgaW50IHdpZHRoKCk7CisKKyAgICB2b2lk
IHNldEhlaWdodChpbnQgaGVpZ2h0KTsKKyAgICBpbnQgaGVpZ2h0KCk7CisKKyAgICB2b2lkIHNl
dENvbXByZXNzaW9uTGV2ZWwoZmxvYXQgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZmxvYXQgY29t
cHJlc3Npb25MZXZlbCgpOworCisgICAgdm9pZCBzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHBy
ZXNlcnZlQXNwZWN0UmF0aW8pOworICAgIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0
aW9uKCk7CisKKyAgICB2b2lkIHNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlv
bk9wdGlvbik7CisgICAgT3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24oKTsKKwor
cHJpdmF0ZToKKyAgICBSZXNpemVPcHRpb25zKCk7CisKKyAgICAvLyBJZiBtX3dpZHRoIG9yIG1f
aGVpZ2h0ID09IDAsIHRoYXQgZGltZW5zaW9uIHdpbGwgbm90IGNoYW5nZSBleHBsaWNpdGx5IGR1
cmluZyByZXNpemluZy4KKyAgICBpbnQgbV93aWR0aDsKKyAgICBpbnQgbV9oZWlnaHQ7CisgICAg
ZmxvYXQgbV9jb21wcmVzc2lvbkxldmVsOworICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0
UmF0aW9PcHRpb247CisgICAgT3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsK
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9S
RVNJWkVSKQorCisjZW5kaWYgLy8gUmVzaXplT3B0aW9uc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59415</attachid>
            <date>2010-06-22 14:12:00 -0700</date>
            <delta_ts>2010-06-22 18:12:58 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>97186</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5jMTJlZDFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlw
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2Fi
bGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1h
Z2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZDdlYTg1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMDYgQEAKK1Rlc3RzIHRoZSBhY2NlcHRh
YmxlIHR5cGVzIGZvciBhcmd1bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhv
ZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRp
b24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKG51bGwpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6
IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCB1bmRlZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvYm1wIiwgZW1wdHlGdW5jdGlvbikgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBOT1RfU1VQUE9SVEVEX0VSUjogRE9NIEV4Y2VwdGlvbiA5LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERP
TSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZp
bml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG51bGwpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgb2JqZWN0
VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCA0Mikg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5m
aW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRD
SF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7fSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBlbXB0eUZ1bmN0
aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB0cnVlKSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCA0MikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgSW5maW5pdHkp
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIC1JbmZpbml0eSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5Om51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQ
cm9wZXJ0eTp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5OnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5OkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dW5k
ZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDplbXB0eUZ1bmN0
aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOiJz
dHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDplbXB0eUZ1bmN0aW9u
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp0cnVlfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6
InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25M
ZXZlbDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2
ZWw6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0
aHJldyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnRydWV9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5fSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmlu
ZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpu
dWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86
e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtw
cmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3Vt
ZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzU5NmI1NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJn
dW1lbnQtdHlwZXMuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHls
ZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
aW1hZ2UtaGFzLW5vLXNvdXJjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmNjhmNWMKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAg
QEAKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ugd2lsbCB0aHJvdyBhbiBJTlZB
TElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93bjogRXJyb3I6IElOVkFMSURfU1RB
VEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlz
YWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5kNjhmMWUzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291
cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8t
c291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8t
Y2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODFkMTNh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTEgQEAKK21haW4gZnJhbWUgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCitF
bnN1cmVzIHRoYXQgdGhlIGNhbGxiYWNrcyB3aWxsIG5vdCBleGVjdXRlIGFmdGVyIG9udW5sb2Fk
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBObyBjYWxsYmFja3MgY2Fs
bGVkIGFmdGVyIHVubG9hZAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJs
ZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjMxMGFhM2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFm
dGVyLXVubG9hZC5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1v
ay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uNWU4MmM2OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1h
Z2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMgZW5zdXJlcyB0aGF0IHdlYmtp
dEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2QuCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIDQyIGlzIG5vbi16ZXJvLgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJp
ZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1h
Z2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OTZm
OWM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2Fi
bGVkCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFRE
IEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2Uu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMv
aGVsbWV0LmpwZyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2UvcmVzb3VyY2VzL2hlbG1ldC5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uN2Q0ODJhYQpCaW5hcnkgZmlsZXMgL2Rldi9udWxsIGFuZCBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvcmVzb3VyY2VzL2hlbG1l
dC5qcGcgZGlmZmVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvVEVNUExBVEUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lM2Rl
M2M2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbApAQCAtMCwwICsx
LDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8
aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNy
Yz0iWU9VUl9KU19GSUxFX0hFUkUiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVu
dC10eXBlcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YmQ0YzRhCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMKQEAgLTAsMCArMSwx
NDYgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1l
bnRzIHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuIik7CisKK2Z1bmN0aW9uIHNo
b3VsZE5vdFRocm93KGV4cHJlc3Npb24pIHsKKyAgdHJ5IHsKKyAgICBldmFsKGV4cHJlc3Npb24p
OworICAgIHRlc3RQYXNzZWQoZXhwcmVzc2lvbiArICIgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
Iik7CisgIH0gY2F0Y2goZSkgeworICAgIHRlc3RGYWlsZWQoZXhwcmVzc2lvbiArICIgc2hvdWxk
IG5vdCB0aHJvdyBleGNlcHRpb24uIFRocmV3IGV4Y2VwdGlvbiAiICsgZSk7CisgIH0KK30KKwor
ZnVuY3Rpb24gdGVzdChleHByZXNzaW9uLCBleHByZXNzaW9uU2hvdWxkVGhyb3csIGV4cGVjdGVk
RXhjZXB0aW9uKSB7CisgICAgaWYgKGV4cHJlc3Npb25TaG91bGRUaHJvdykgeworICAgICAgICBp
ZiAoZXhwZWN0ZWRFeGNlcHRpb24pCisgICAgICAgICAgICBzaG91bGRUaHJvdyhleHByZXNzaW9u
LCAnKGZ1bmN0aW9uKCkgeyByZXR1cm4gIicgKyBleHBlY3RlZEV4Y2VwdGlvbiArICciOyB9KSgp
OycpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBzaG91bGRUaHJvdyhleHByZXNzaW9uLCAn
KGZ1bmN0aW9uKCkgeyByZXR1cm4gIkVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNyI7IH0pKCk7Jyk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc2hvdWxkTm90VGhyb3co
ZXhwcmVzc2lvbik7CisgICAgfQorfQorCit2YXIgZW1wdHlGdW5jdGlvbiA9IGZ1bmN0aW9uKCkg
e307CisKK2Z1bmN0aW9uIE9iamVjdFRocm93aW5nRXhjZXB0aW9uKCkge307CitPYmplY3RUaHJv
d2luZ0V4Y2VwdGlvbi5wcm90b3R5cGUudmFsdWVPZiA9IGZ1bmN0aW9uKCkgeworICAgIHRocm93
IG5ldyBFcnJvcigndmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK30KK09iamVjdFRocm93aW5n
RXhjZXB0aW9uLnByb3RvdHlwZS5fX2RlZmluZUdldHRlcl9fKCJ3aWR0aCIsIGZ1bmN0aW9uKCkg
eworICAgIHRocm93IG5ldyBFcnJvcignd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbicpOworfSk7Cit2
YXIgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24gPSBuZXcgT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24o
KTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gInJlc291cmNlcy9oZWxtZXQuanBn
IjsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgpJywgdHJ1ZSk7CisKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UodW5kZWZpbmVkKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZShudWxs
KScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIpJywgdHJ1ZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKScsIHRydWUpOworCit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKScsIHRydWUpOwordGVzdCgnaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pJywgZmFsc2UpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVuY3Rpb24pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvYm1wIiwgZW1wdHlGdW5jdGlvbikn
LCB0cnVlLCAnRXJyb3I6IE5PVF9TVVBQT1JURURfRVJSOiBET00gRXhjZXB0aW9uIDknKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHRydWUpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MiknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KScsIHRydWUpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgLUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpJywgdHJ1ZSk7CisKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBudWxs
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHt9KScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1bmN0aW9u
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHRydWUpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCA0MiknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KScsIHRydWUpOwordGVzdCgnaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KScsIHRydWUp
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgInN0
cmluZyIpJywgdHJ1ZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkn
LCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0VGhyb3dpbmdFeGNlcHRp
b24pJywgdHJ1ZSwgJ0Vycm9yOiB3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIGVtcHR5
RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB0cnVlKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCBJbmZpbml0eSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIC1JbmZpbml0eSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsICJzdHJpbmciKScsIGZhbHNlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmlu
ZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7ZHVtbXlQcm9wZXJ0eTp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0
eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnRydWV9KScsIGZhbHNl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVy
dHk6SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6LUluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6bnVsbH0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHt3aWR0aDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp0cnVl
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6SW5m
aW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7d2lkdGg6InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnVuZGVmaW5lZH0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp7
fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0
cnVlLCAnRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1w
dHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRydWV9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2hlaWdodDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtoZWlnaHQ6LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6InN0
cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4
Y2VwdGlvbicpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0aW9ufSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXBy
ZXNzaW9uTGV2ZWw6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5maW5p
dHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2
ZUFzcGVjdFJhdGlvOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86
e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdF
eGNlcHRpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86ZW1wdHlGdW5j
dGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVz
ZXJ2ZUFzcGVjdFJhdGlvOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzoi
c3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KScsIGZh
bHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246ZW1wdHlGdW5jdGlvbn0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7b3JpZW50YXRpb246dHJ1ZX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOkluZmluaXR5fSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtvcmllbnRhdGlvbjotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gZmFsc2U7
Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L2ltYWdlLWhhcy1uby1zb3VyY2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhZDk1NzcKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzCkBAIC0wLDAgKzEsMjAgQEAK
K2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IGFuIGltYWdlIHdpdGggbm8gc291cmNlIHdpbGwgdGhy
b3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9uLiIpOworCit2YXIgaSA9IG5ldyBJbWFn
ZSgpOworaS5zcmMgPSBudWxsOworCit2YXIgZW1wdHlGdW5jdGlvbiA9IGZ1bmN0aW9uKCkge307
CisKK2RvY3VtZW50LmJvZHkub25sb2FkID0gZnVuY3Rpb24oKSB7CisJdHJ5IHsKKwkJaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVuY3Rpb24pOworCQl0ZXN0RmFpbGVkKCJT
aG91bGQgaGF2ZSB0aHJvd24gZXhjZXB0aW9uLiBObyBleGNlcHRpb24gd2FzIHRocm93bi4uLiIp
OworCQlmaW5pc2hKU1Rlc3QoKTsKKwl9IGNhdGNoKGUpIHsKKwkJdGVzdFBhc3NlZCgiRXhjZXB0
aW9uIHdhcyBjb3JyZWN0bHkgdGhyb3duOiAiICsgZSk7CisJCWZpbmlzaEpTVGVzdCgpOworCX0K
K307CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQ
YXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzN2U0NGEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKQEAgLTAsMCArMSwyNSBAQAorZGVzY3Jp
cHRpb24oIkVuc3VyZXMgdGhhdCB0aGUgY2FsbGJhY2tzIHdpbGwgbm90IGV4ZWN1dGUgYWZ0ZXIg
b251bmxvYWQuIik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICJyZXNvdXJjZXMv
aGVsbWV0LmpwZyI7CisKK2RvY3VtZW50LmJvZHkub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAg
d2luZG93LnNldFRpbWVvdXQoJ3Rlc3RQYXNzZWQoIk5vIGNhbGxiYWNrcyBjYWxsZWQgYWZ0ZXIg
dW5sb2FkIik7IGZpbmlzaEpTVGVzdCgpOycsIDEwMCk7Cit9CisKK2RvY3VtZW50LmJvZHkub251
bmxvYWQgPSBmdW5jdGlvbigpIHsKKyAgICBpLndlYmtpdEdldEltYWdlKAorICAgICAgICAiaW1h
Z2UvcG5nIiwKKyAgICAgICAgZnVuY3Rpb24oYmxvYikgeworICAgICAgICAgICAgdGVzdEZhaWxl
ZCgiVW5leHBlY3RlZCB3ZWJraXRHZXRJbWFnZSBzdWNjZXNzIGNhbGxiYWNrLiIpOworICAgICAg
ICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0sCisgICAgICAgIGZ1bmN0aW9uKGVycm9y
KSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIGVy
cm9yIGNhbGxiYWNrOiAiICsgZXJyb3IpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Cisg
ICAgICAgIH0KKyAgICApOworfQorCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit3aW5k
b3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292ZXJy
aWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0
SW1hZ2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2RjM2YxNQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzCkBA
IC0wLDAgKzEsMTIgQEAKK2Rlc2NyaXB0aW9uKCJUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJ
bWFnZSBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLiIpOworCit2YXIgaSA9
IG5ldyBJbWFnZSgpOworaS5zcmMgPSAicmVzb3VyY2VzL2hlbG1ldC5qcGciOworCitpLndlYmtp
dEdldEltYWdlID0gZnVuY3Rpb24oKSB7IHJldHVybiA0MjsgfQordmFyIHJlc3VsdCA9IGkud2Vi
a2l0R2V0SW1hZ2UoKTsKKworc2hvdWxkQmVOb25aZXJvKHJlc3VsdCk7CisKK3dpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gZmFsc2U7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxs
YmFja3MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzFhZTE1NwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzCkBAIC0wLDAgKzEsMjAg
QEAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IHRoZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHku
Iik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICJyZXNvdXJjZXMvaGVsbWV0Lmpw
ZyI7CisKK3ZhciBzdWNjZXNzQ2FsbGJhY2sgPSBmdW5jdGlvbihibG9iKSB7CisgICAgdGVzdEZh
aWxlZCgiU3VjY2VzcyBjYWxsYmFjayB3YXMgaW5jb3JyZWN0bHkgY2FsbGVkIik7CisgICAgZmlu
aXNoSlNUZXN0KCk7Cit9OworCit2YXIgZXJyb3JDYWxsYmFjayA9IGZ1bmN0aW9uKGVycm9yKSB7
CisgICAgdGVzdFBhc3NlZCgiRXJyb3IgY2FsbGJhY2sgd2FzIGNvcnJlY3RseSBjYWxsZWQgd2l0
aCBvdXRwdXQ6ICIgKyBlcnJvcik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCisvLyBPbmx5
IHRoZSBlcnJvciBjYWxsYmFjayB3aWxsIGN1cnJlbnRseSBuZXZlciBiZSBjYWxsZWQgaW4gdGhp
cyBwYXRjaCwgc28gdGVzdCB0aGF0IGl0IHdvcmtzIGZvciBub3cKK2kud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL2pwZWciLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spOworCit3aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGMwMTgzMgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1Rl
c3RzIHRoYXQgdGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgRXJyb3IgY2FsbGJhY2sgd2FzIGNvcnJlY3RseSBjYWxsZWQg
d2l0aCBvdXRwdXQ6IFVuZXhwZWN0ZWQgZXJyb3Igd2hpbGUgcmVzaXppbmcgaW1hZ2UKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rl
c3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzI2NTAyYgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
dGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9w
PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3Rl
c3QtY2FsbGJhY2tzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1y
ZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9p
bWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNDhlZjg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhhdCBJbWFnZS53ZWJraXRH
ZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmlnaW4uCisK
KworUEFTUzogVGhyZXcgZXhjZXB0aW9uOiBFcnJvcjogU0VDVVJJVFlfRVJSOiBET00gRXhjZXB0
aW9uIDE4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13
ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRp
c2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4M2VlOTEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0
SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMzEgQEAKKzxodG1s
PgorPGhlYWQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKG1zZykKK3sKKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgibG9nIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUo
bXNnICsgIlxuIikpOworfQorCit2YXIgZW1wdHlDYWxsYmFjayA9IGZ1bmN0aW9uKCkgeyB9Owor
Cit3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgdHJ5IHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RJbWFnZSIp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUNhbGxiYWNrKTsKKyAgICAgICAgbG9n
KCJGQUlMOiBEaWQgbm90IHRocm93IGV4Y2VwdGlvbiIpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAg
ICAgICAgbG9nICgiUEFTUzogVGhyZXcgZXhjZXB0aW9uOiAiICsgZSk7CisgICAgfQorCisgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxwPlRlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgY2Fubm90IGJlIGNh
bGxlZCBvbiBhbiBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLjwvcD4KKzxpbWcgaWQ9InRlc3RJbWFn
ZSIgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZyI+
Cis8cHJlIGlkPSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2hlbG1ldC5qcGcgZGlmZmVyCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dAppbmRleCBhZWI0YjY4Li4wMWMyYTVlIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CisrKyBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI2Miw2ICsyNjIsOCBAQCBTRVQo
V2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsCiAgICAgaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmlkbAogICAgIGh0bWwvSW1hZ2VEYXRhLmlkbAorICAgIGh0bWwv
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5pZGwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsCiAgICAgaHRtbC9UZXh0TWV0
cmljcy5pZGwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaWRsCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk5M2ExMjEuLjdjYjA2OGYgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNjUgQEAKKzIwMTAtMDYtMjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29n
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAK
KyAgICAgICAgRXhwb3NlZCB0aGUgaW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlz
IGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogQ01ha2VM
aXN0cy50eHQ6IEFkZGVkIGZpbGVzLgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDogRGl0
dG8uCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8uCisgICAgICAgICogR05V
bWFrZWZpbGUuYW06IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUuZ3lwaTogRGl0dG8uCisgICAg
ICAgICogV2ViQ29yZS5wcmk6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUucHJvOiBEaXR0by4K
KyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajogRGl0dG8uCisgICAgICAg
ICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBEaXR0by4KKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOiBBZGRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OmNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChX
ZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNv
cmU6OmNyZWF0ZVJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6SlNIVE1MSW1hZ2VF
bGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9ySlMucG06IENoYW5nZWQgdG8gY29udmVydCBTdHJpbmdzIHRvIEpTU3RyaW5ncyBj
b3JyZWN0bHkgaW4gY2FsbGJhY2tzLgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFjay5jcHA6IENoYW5nZWQgYmluZGluZ3MtdGVzdCBmb3IgYWJvdmUuCisg
ICAgICAgIChXZWJDb3JlOjpKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0p
OgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KTogQ2xpZW50IG9mIHRoaXMgY2xhc3Mgbm8gbG9u
Z2VyIGRvZXMgYW55IHJlZmNvdW50aW5nCisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVz
aXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5j
SW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZCk6IFJlZmFjdG9yZWQuCisgICAgICAgIChXZWJD
b3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplQ29tcGxldGUpOiBBZGRlZCBjYWxsYmFjay4K
KyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVFcnJvcik6IERpdHRv
LgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm86OkNhbGxiYWNrSW5mbyk6IE5vdyBvbmx5
IHN0b3JlcyBuZWNlc3NldGllcy4KKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOiBJ
bXBsZW1lbnRhdGlvbiBvZiBKUyBmdW5jdGlvbi4KKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVs
ZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsOgorICAgICAgICAq
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
KToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4K
KyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6fkltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KTogUmVmYWN0b3Jl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhy
ZWFkKTogIFJlZmFjdG9yZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDog
UmVmYWN0b3JlZC4KKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMuY3BwOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Ondp
ZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWlnaHQpOgorICAgICAgICAoV2ViQ29yZTo6
UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6
ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMu
aDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjopOgorCiAyMDEwLTA2
LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVu
cmV2aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXggN2FjM2U1MS4uY2U1Yzhm
MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKKysrIGIvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQAogI2luY2x1ZGUgIkpTSURCUmVx
dWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNJREJTdWNjZXNzRXZlbnQuY3BwIgogI2luY2x1ZGUgIkpT
SW1hZ2VEYXRhLmNwcCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3Bw
IgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCIKICNpbmNsdWRl
ICJKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIgogI2luY2x1ZGUgIkpTSmF2YVNjcmlwdENh
bGxGcmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmNwcCIKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZQppbmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yMjMsNiArMjIz
LDggQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSURCUmVxdWVzdCBcCiAgICAgSURCU3VjY2Vzc0V2
ZW50IFwKICAgICBJbWFnZURhdGEgXAorICAgIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBc
CisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBcCiAgICAgSW5kZXhlZERhdGFiYXNlUmVx
dWVzdCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0IFwKICAgICBJbnNwZWN0b3JCYWNrZW5kIFwK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxl
LmFtCmluZGV4IGU3ODU3NDkuLmVkYmFjN2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZp
bGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMjc1LDYgKzI3NSw4IEBAIElE
TF9CSU5ESU5HUyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwKIAlX
ZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9JbWFnZURh
dGEuaWRsIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAor
CVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKIAlXZWJDb3Jl
L2h0bWwvVGV4dE1ldHJpY3MuaWRsIFwKIAlXZWJDb3JlL2h0bWwvVmFsaWRpdHlTdGF0ZS5pZGwg
XAogCVdlYkNvcmUvaHRtbC9Wb2lkQ2FsbGJhY2suaWRsIFwKQEAgLTQ1NSw2ICs0NTcsNyBAQCB3
ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVt
ZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1l
bnRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRD
dXN0b20uY3BwIFwKKwlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNw
cCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uaCBcCiAJ
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNwcCBcCkBAIC0x
MjY3LDYgKzEyNzAsOCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvaHRtbC9IVE1M
Vmlld1NvdXJjZURvY3VtZW50LmggXAogCVdlYkNvcmUvaHRtbC9JbWFnZURhdGEuY3BwIFwKIAlX
ZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgXAogCVdlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAJV2ViQ29yZS9odG1sL0xhYmVsc05vZGVMaXN0LmNw
cCBcCkBAIC0xMjc0LDYgKzEyNzksOCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUv
aHRtbC9NZWRpYUVycm9yLmggXAogCVdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAog
CVdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0
aW9ucy5jcHAgXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmggXAogCVdlYkNvcmUvaHRt
bC9TdGVwUmFuZ2UuY3BwIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJhbmdlLmggXAogCVdlYkNvcmUv
aHRtbC9UZXh0TWV0cmljcy5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIv
V2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggZjJjZGQ2Ny4uZjllYjIxMCAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTE4Nyw2
ICsxODcsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwv
SW1hZ2VEYXRhLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaWRsJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aWRsJywKICAgICAgICAgICAgICdodG1sL01lZGlhRXJyb3IuaWRsJywKICAgICAgICAgICAgICdo
dG1sL1RleHRNZXRyaWNzLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UaW1lUmFuZ2VzLmlkbCcs
CkBAIC01NzEsNiArNTczLDcgQEAKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxGcmFt
ZUVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxGcmFt
ZVNldEVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJ
RnJhbWVFbGVtZW50Q3VzdG9tLmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1M
SW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1M
SW5wdXRFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1M
SW5wdXRFbGVtZW50Q3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTE9i
amVjdEVsZW1lbnRDdXN0b20uY3BwJywKQEAgLTE2NTYsNiArMTY1OSw4IEBACiAgICAgICAgICAg
ICAnaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmgnLAogICAgICAgICAgICAgJ2h0bWwvSW1h
Z2VEYXRhLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuaCcsCisgICAgICAgICAg
ICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgnLAorICAgICAgICAgICAgJ2h0bWwv
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VS
ZXNpemVyVGhyZWFkLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQu
aCcsCiAgICAgICAgICAgICAnaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAnLApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9XZWJDb3JlLnByaSBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKaW5kZXggMjVjOTVmZi4u
NGU2ZWZlNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dl
YkNvcmUucHJpCkBAIC00MjIsNiArNDIyLDggQEAgSURMX0JJTkRJTkdTICs9IFwKICAgICBodG1s
L0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwKICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsIFwK
ICAgICBodG1sL0ltYWdlRGF0YS5pZGwgXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5pZGwgXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBcCiAg
ICAgaHRtbC9NZWRpYUVycm9yLmlkbCBcCiAgICAgaHRtbC9UZXh0TWV0cmljcy5pZGwgXAogICAg
IGh0bWwvVGltZVJhbmdlcy5pZGwgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBi
L1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggOTJhNzc1Yy4uMzU1MjMyNSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0zMTUsNiAr
MzE1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50
Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9t
LmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAor
ICAgIGJpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRp
bmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pT
SFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPcHRp
b25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgXApAQCAtNzA0LDYgKzcwNSw3IEBAIFNPVVJDRVMgKz0g
XAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAgICAgaHRtbC9MYWJlbHNOb2Rl
TGlzdC5jcHAgXAogICAgIGh0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwKKyAgICBodG1sL1Jlc2l6
ZU9wdGlvbnMuY3BwIFwKICAgICBodG1sL1N0ZXBSYW5nZS5jcHAgXAogICAgIGh0bWwvVmFsaWRp
dHlTdGF0ZS5jcHAgXAogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAgXApAQCAtMTQz
Niw5ICsxNDM4LDEyIEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5o
IFwKICAgICBodG1sL0hUTUxWaWV3U291cmNlRG9jdW1lbnQuaCBcCiAgICAgaHRtbC9JbWFnZURh
dGEuaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggXAorICAgIGh0bWwv
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhy
ZWFkLmggXAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuaCBcCiAgICAgaHRtbC9QcmVsb2FkU2Nh
bm5lci5oIFwKKyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAgICAgaHRtbC9TdGVwUmFuZ2Uu
aCBcCiAgICAgaHRtbC9UaW1lUmFuZ2VzLmggXAogICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5oIFwK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9XZWJD
b3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDYyNGQ0MzMuLjAxN2UzN2Ig
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAtMzc2NjEsNiArMzc2NjEs
MTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCINCisJCQkJPg0KKwkJCTwvRmls
ZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCINCiAJCQkJPg0KIAkJ
CTwvRmlsZT4NCkBAIC0zNzY4OSw2ICszNzY5NywxNCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQog
CQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6ZU9wdGlvbnMuY3BwIg0K
KwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRt
bFxSZXNpemVPcHRpb25zLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxodG1sXFN0ZXBSYW5nZS5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+
DQpAQCAtNDAxMjgsNyArNDAxNDQsOSBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJ
CQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3Nc
anNcSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNwcCINCisKIAkJCQkJPg0KIAkJCQkJPEZpbGVD
b25maWd1cmF0aW9uDQogCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQpAQCAtNDAzODgsNiArNDA0
MDYsNTkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8
RmlsZQ0KKworCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTEltYWdlRWxl
bWVudEN1c3RvbS5jcHAiDQorCQkJCQk+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJ
CQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJ
CQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJh
dGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVp
bGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8
RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19JbnRlcm5hbHxXaW4zMiINCisJ
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJ
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
X0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4N
CisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+
DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQor
CQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBp
bGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxG
aWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxi
aW5kaW5nc1xqc1xKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIg0KIAkJCQkJPg0KIAkJCQkJ
PEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCAwMzBiMjlkLi4yMjhjMDQwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMzUwOSw2ICszNTA5LDE1IEBACiAJCUIwMTQ5RTdFMTFBNEIy
MTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5j
SW1hZ2VSZXNpemVyLmggKi87IH07CiAJCUIwMTQ5RTdGMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFn
ZVJlc2l6ZXJUaHJlYWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5j
cHAgKi87IH07CiAJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJl
YWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5
RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLzsgfTsKKwkJQjA0
RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAv
KiBSZXNpemVPcHRpb25zLmggKi87IH07CisJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlCMDRFNkJGNjExQzdGMDdFMDAyMTQyODMgLyogSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRG
NTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwNEY1OUZEMTFDNkFG
RDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovOyB9OworCQlCMEE3
MTUxQjExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMg
LyogUmVzaXplT3B0aW9ucy5jcHAgKi87IH07CisJCUIwQTcxNUI3MTFEMDQzMUUwMDNDMzM3MyAv
KiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcxNUI4MTFEMDQzMUUwMDND
MzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI0MTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjBBNzE1QjkxMUQwNDMxRTAw
M0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3
MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcxNUJB
MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjYxMUQwNDMx
RTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi87IH07CiAJCUIy
MDExMTA3MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA1MEFCNzc0MDUwMERCMEU2
OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLzsgfTsKIAkJQjIwMTExMDgwQUI3NzQwNTAwREIwRTY4
IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi87
IH07CiAJCUIyMTEyN0E2MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjExMjdBNTBC
MzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICovOyB9OwpAQCAtODg0NSw2
ICs4ODU0LDE3IEBACiAJCUIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVz
aXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBc3luY0ltYWdlUmVzaXpl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZB
N0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNpemVyVGhyZWFkLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RTZCRjExMUM2
RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVzaXplT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEltYWdlRWxlbWVudEN1
c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTFBMTFDQzI0RUUw
MDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTdBMTFEMDFCMjEwMDNDMzM3MyAv
KiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBB
NzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjUxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8q
IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTExMDYwQUI3NzQwNTAwREIw
RTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTU1ZHQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIxMTI3QTUw
QjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUE9EVHlwZVdyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTEzNjk5LDYgKzEzNzE5LDEwIEBACiAJCQkJQTc3OTc5MTMwRDZCOUQw
QzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5MTQwRDZCOUQwQzAwMzg1
MUI5IC8qIEltYWdlRGF0YS5oICovLAogCQkJCUE3Nzk3OTE1MEQ2QjlEMEMwMDM4NTFCOSAvKiBJ
bWFnZURhdGEuaWRsICovLAorCQkJCUIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1NzkxMUQwMUIyMTAwM0MzMzczIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCUIwMTRBMDRDMTFBQjFFQTAw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3MTU3
QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCAqLywK
IAkJCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAq
LywKIAkJCQlCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmgg
Ki8sCiAJCQkJQTQ1NkZBMjQxMUFENEE4MzAwMjBCNDIwIC8qIExhYmVsc05vZGVMaXN0LmNwcCAq
LywKQEAgLTEzNzA5LDYgKzEzNzMzLDggQEAKIAkJCQlFNDQ2MTM5QzBDRDYzMzEwMDBGQURBNzUg
LyogTWVkaWFFcnJvci5pZGwgKi8sCiAJCQkJRTRENEFCRTAwRDc1NDJGMDAwRjk2ODY5IC8qIFBy
ZWxvYWRTY2FubmVyLmNwcCAqLywKIAkJCQlFNEQ0QUJFMTBENzU0MkYxMDBGOTY4NjkgLyogUHJl
bG9hZFNjYW5uZXIuaCAqLywKKwkJCQlCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXpl
T3B0aW9ucy5jcHAgKi8sCisJCQkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9w
dGlvbnMuaCAqLywKIAkJCQlBNUFGQjM0RDExNTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmNw
cCAqLywKIAkJCQlBNUFGQjM0RTExNTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmggKi8sCiAJ
CQkJQkNFRjQ1RTgwRTY4Nzc2NzAwMUMxMjg3IC8qIFRleHRNZXRyaWNzLmggKi8sCkBAIC0xMzk0
OCw2ICsxMzk3NCwxMCBAQAogCQkJCUU0NDYxNDBGMENENjgyNjkwMEZBREE3NSAvKiBKU0hUTUxW
aWRlb0VsZW1lbnQuaCAqLywKIAkJCQlBNzc5NzkyNDBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFn
ZURhdGEuY3BwICovLAogCQkJCUE3Nzk3OTI1MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0
YS5oICovLAorCQkJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxNUI0MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3MTVCNTExRDA0MzFFMDAzQzMz
NzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxNUI2
MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAog
CQkJCTQ5RUVDRUY4MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJyYXkuY3BwICovLAogCQkJ
CTQ5RUVDRUY5MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJyYXkuaCAqLywKIAkJCQk0OUVF
Q0VGNjEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQzMkFycmF5LmNwcCAqLywKQEAgLTE1NTEzLDYg
KzE1NTQzLDcgQEAKIAkJCQlCQzJFRDdBNDBDNkMwRjM2MDA5MjBCRkYgLyogSlNIVE1MRnJhbWVF
bGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q0MUFCQTBDMDYwREU4MDBDMEU0NDYgLyogSlNI
VE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzJFRDY0RjBDNkJDNDhDMDA5
MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgKi8sCisJCQkJQjA0RjU5RkQx
MUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJ
QkNDNDM4NzcwRTg4NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAg
Ki8sCiAJCQkJQkMzMDVDQTMwQzA3ODFCQjAwQ0QyMEYwIC8qIEpTSFRNTE9iamVjdEVsZW1lbnRD
dXN0b20uY3BwICovLAogCQkJCTQ0OEFEMjdBMEE0ODEzNzkwMDIzRDE3OSAvKiBKU0hUTUxPcHRp
b25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCkBAIC0xODExOSw2ICsxODE1MCw4IEBACiAJCQkJ
MUE4MjBEOTIwQTEzRUJBNjAwQUY4NDNDIC8qIEltYWdlRG9jdW1lbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCTA4OTU4MjU2MEU4NTdBN0UwMEY4MkM4MyAvKiBJbWFnZUxvYWRlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkM3RjQ0QTgwQjlFMzI0RTAwQTlEMDgxIC8qIEltYWdlT2JzZXJ2ZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGNTExQzdGMDc5MDAy
MTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCMjc1MzU3MTBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2VTb3VyY2UuaCBp
biBIZWFkZXJzICovLAogCQkJCTRCMzQ4MDk0MEVFRjUwRDQwMEFDMUI0MSAvKiBJbWFnZVNvdXJj
ZUNHLmggaW4gSGVhZGVycyAqLywKQEAgLTE4MzUxLDYgKzE4Mzg0LDggQEAKIAkJCQlDNTZDOTFB
NzExOUQ5MTg3MDBERTRDRDkgLyogSlNJREJTdWNjZXNzRXZlbnQuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDNkM0OUY0MEQ3REJBMDUwMEZGQTU1OCAvKiBKU0ltYWdlQ29uc3RydWN0b3IuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUE3Nzk3OTI5MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzE1QjgxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzE1QkExMUQwNDMx
RTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAq
LywKIAkJCQlDNUY0RjQxMTExOTMwNkMwMDBGREZBREQgLyogSlNJbmRleGVkRGF0YWJhc2VSZXF1
ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQk3QTBFNzZEQjEwQkYwNTk4MDBBMDI3NkUgLyogSlNJ
bmplY3RlZFNjcmlwdEhvc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRjA2MENFMEY1RUVCMkIw
MEEwN0VBQyAvKiBKU0luc3BlY3RvckJhY2tlbmQuaCBpbiBIZWFkZXJzICovLApAQCAtMTg4ODUs
NiArMTg5MjAsNyBAQAogCQkJCUE4OUNDQzUzMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9k
ZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMEEwOTlFNjQ5MjAw
NTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
Q0IxNkMyRjA5NzlDM0JEMDA0Njc3NDEgLyogUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICov
LAogCQkJCTkzNEY3MTQyMEQ1QTZGNDQwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJh
c2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3Njc5MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNv
dXJjZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMDY1NCw2ICsyMDY5MCw3IEBACiAJCQkJ
QkM0OTE4QzgwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFtZUVsZW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQkMyRUQ2NTAwQzZCQzQ4QzAwOTIwQkZGIC8qIEpTSFRNTElGcmFtZUVs
ZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFFMkFBOTcwQTFDREQyRDAwQjQy
QjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMDRGNTlG
RjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUE4MEU3RTk4MEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxJbnB1dEVsZW1l
bnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNDNDM4NzgwRTg4NkNDNzAwNTMzREQ1IC8qIEpT
SFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5OTBB
MUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSXNJbmRleEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yMDcxMiw2ICsyMDc0OSw4IEBACiAJCQkJQkM2QzQ5RjMwRDdEQkEwNTAwRkZBNTU4IC8q
IEpTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzc5NzkyODBENkI5
RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTdEMDMx
OEUwRTkzNTQwMzAwRTI0QUNEIC8qIEpTSW1hZ2VEYXRhQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCUIwQTcxNUI3MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1QjkxMUQwNDMxRTAwM0MzMzczIC8q
IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUM1
RjRGNDEwMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2REExMEJGMDU5ODAwQTAyNzZFIC8qIEpTSW5qZWN0ZWRT
Y3JpcHRIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMEU3NkQ1MTBCRjA1MDcwMEEwMjc2
RSAvKiBKU0luamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIx
MjU5LDYgKzIxMjk4LDcgQEAKIAkJCQlBODlDQ0M1MjBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFj
ZU5vZGVXaXRoU3BhbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTMzMDlFMDkwOTlF
NjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUJDQjE2QzJFMDk3OUMzQkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCUIwQTcxNTFCMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTkzNEY3MTNFMEQ1QTZGMjgwMDAxOEQ2OSAvKiBSZXNvdXJjZUVy
cm9yQmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MTRDNzY1MDBDRTkyMzRFMDA3RUYzQ0Qg
LyogUmVzb3VyY2VFcnJvck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTUxNEM3Njc4MENFOTIz
QTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBiL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTYyNTViCi0tLSAvZGV2L251bGwKKysrIGIvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCkBAIC0wLDAgKzEs
MTY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6Cisg
KgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAq
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29v
Z2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
CisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2lu
Y2x1ZGUgIkpTSFRNTEltYWdlRWxlbWVudC5oIgorCisjaW5jbHVkZSAiRE9NV2luZG93LmgiCisj
aW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgi
CisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgorCisjaW5jbHVkZSA8cnVudGltZS9KU0Z1bmN0
aW9uLmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9HZXRQ
dHIuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0
aWMgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IGNyZWF0ZUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygm
SlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVf
TUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3Qq
IG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQ
YXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0ZUltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIC8vIEFyZ3VtZW50IGlzIG9wdGlvbmFsIChoZW5j
ZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93ZWQuCisgICAgaWYgKHZh
bHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKCF2
YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0
aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3QpOwor
fQorCitzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGVSZXNpemVPcHRpb25z
KEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBSZWZQdHI8UmVzaXplT3B0
aW9ucz4gcmVzaXplT3B0aW9ucyA9IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpOworCisgICAgLy8g
QXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBpcyBhbGxvd2VkKSwgYW5kIG51
bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmluZWRPck51bGwoKSkgeworICAg
ICAgICAvLyBVc2UgZGVmYXVsdCBvcHRpb25zLgorICAgICAgICByZXR1cm4gcmVzaXplT3B0aW9u
cy5yZWxlYXNlKCk7CisgICAgfQorICAgIEpTT2JqZWN0KiBvYmplY3QgPSB2YWx1ZS50b09iamVj
dChleGVjKTsKKworICAgIEpTVmFsdWUgd2lkdGggPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlm
aWVyKGV4ZWMsICJ3aWR0aCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgIHJldHVybiAwOworICAgIGlmICghd2lkdGguaXNVbmRlZmluZWQoKSkgeworICAgICAgICBy
ZXNpemVPcHRpb25zLT5zZXRXaWR0aCh3aWR0aC50b0Zsb2F0KGV4ZWMpKTsKKyAgICAgICAgaWYg
KGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisg
ICAgSlNWYWx1ZSBoZWlnaHQgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJo
ZWlnaHQiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4g
MDsKKyAgICBpZiAoIWhlaWdodC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlv
bnMtPnNldEhlaWdodChoZWlnaHQudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgY29tcHJlc3Npb25MZXZlbCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywg
ImNvbXByZXNzaW9uTGV2ZWwiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWNvbXByZXNzaW9uTGV2ZWwuaXNVbmRlZmluZWQoKSkg
eworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRDb21wcmVzc2lvbkxldmVsKGNvbXByZXNzaW9u
TGV2ZWwudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVBc3Bl
Y3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZlQXNw
ZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgeworICAg
ICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVjdFJh
dGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRpb24g
PSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICgh
b3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRP
cmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmcoZXhl
YykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOworfQor
CitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRlKiBl
eGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5nJiBt
aW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVj
KSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2Fs
bGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nh
c3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVj
LT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICBy
ZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKworICAg
IFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3JlYXRl
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2JhbE9i
amVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIpKTsK
KyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5l
ZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVhdGVS
ZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+aGFk
RXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChy
ZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19jYXN0
PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2UobWlt
ZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgp
LCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihleGVj
LCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRmMCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysg
Yi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTc5LDcg
KzIxNzksMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAgICAg
ICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRw
YXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAg
ICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAgICAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmco
ZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9K
UyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICB9CiAKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9vbCByYWlz
ZWRFeGNlcHRpb24gPSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2ZWQgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNr
LmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFj
ay5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRo
Q2xhc3MyUGFyYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAgICBFeGVj
U3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJrZWRBcmd1
bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3MyUGFyYW0p
KTsKLSAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3MuYXBwZW5k
KGpzU3RyaW5nKGV4ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBm
YWxzZTsKICAgICBtX2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNlcHRpb24p
OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dlYkNv
cmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2NCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJDb3Jl
L2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNpbmNsdWRl
ICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNpbmNs
dWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisjaW5j
bHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5j
bHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFzeW5j
SW1hZ2VSZXNpemVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBjYWNo
ZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNj
cmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxv
YXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0
aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6c3Rh
cnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVk
SW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVP
cHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQXN5bmNJ
bWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHN1Y2Nl
c3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9y
aWVudGF0aW9uT3B0aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3JpcHRFeGVj
dXRpb25Db250ZXh0LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBl
cnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6ZXI6OkFz
eW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRw
dXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFj
aywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9P
cHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0
aW9uKQorQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNoZWRJbWFn
ZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0
aW9ucykKICAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3NjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0cHV0VHlw
ZShvdXRwdXRUeXBlKQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQog
ICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5cGUo
b3V0cHV0VHlwZSkKLSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAgICwg
bV9xdWFsaXR5KHF1YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJhdGlv
T3B0aW9uKQotICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikKKyAg
ICAsIG1fcmVzaXplT3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1Y2Nl
c3NDYWxsYmFjay5pc09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xzIHRoZSBs
aWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9IG5ldyBD
YWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdldCgpKTsK
ICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDExICs3MSwy
MSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJj
ZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRh
ID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291cmNlLT5y
ZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8gPSBuZXcg
Q2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChp
bWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3VuZHMsIG1f
cXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikpCisgICAg
aWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFja0luZm8s
IG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1fcmVzaXpl
T3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2ZWwoKSwg
bV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlvbnMtPm9y
aWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2b2lkIEFz
eW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikKK3sKKyAg
ICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0
LCBibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3Io
KQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJyb3JDYWxs
YmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBlY3RlZCBl
cnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmgKaW5kZXggM2VlZWVhZC4uYzQyMjg0MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5j
SW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKQEAg
LTQwLDcgKzQwLDExIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdl
OworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6ZU9w
dGlvbnM7CisKIAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJbWFn
ZSB0aGF0IGlzIHBhc3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0cyBh
biBJbWFnZVJlc2l6ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVkLCBJ
bWFnZVJlc2l6ZXJUaHJlYWQKQEAgLTQ4LDU2ICs1Miw0MiBAQCBjbGFzcyBJbWFnZVJlc2l6ZXJU
aHJlYWQ7CiAvLyBvY2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95ZWQuIElmIHRoZSBkb2N1
bWVudCBpcyBkZXN0cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIg
d2lsbCByZWNlaXZlIGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50bHkgYmxvY2sgdGhlIGNh
bGxiYWNrcyBmcm9tCiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0ltYWdlUmVzaXplciA6IHB1
YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50ZWQ8QXN5bmNJbWFnZVJl
c2l6ZXI+IHsKK2NsYXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNl
Q2xpZW50IHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZvIHsKLSAgICAgICAgQ2Fs
bGJhY2tJbmZvKFBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVy
KQorICAgICAgICBDYWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5
bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VSZXNpemVyKGFzeW5jSW1h
Z2VSZXNpemVyKQogICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAgIHsKICAgICAgICAgfQog
Ci0gICAgICAgIFJlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7Cisg
ICAgICAgIE93blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CiAgICAg
ICAgIFJlZlB0cjxCbG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAgICBlbnVtIE91dHB1dFR5
cGUgewogICAgICAgICBKUEVHLAogICAgICAgICBQTkcKICAgICB9OwogCi0gICAgZW51bSBBc3Bl
Y3RSYXRpb09wdGlvbiB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCi0gICAgICAgIEln
bm9yZUFzcGVjdFJhdGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24gewot
ICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9yZU9yaWVudGF0aW9uCi0g
ICAgfTsKLQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBjcmVhdGUo
Q2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZh
bHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVh
bGl0eSwgQXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMg
dm9pZCBzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRwdXRU
eXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwog
ICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlk
ZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFu
Z2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9i
PikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXpl
RXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCBy
ZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAog
cHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUs
IEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3Jp
cHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwg
T3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
PiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZp
bmlzaGVkKENhY2hlZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFnZSogbV9jYWNoZWRJbWFn
ZTsKLSAgICBTY3JpcHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBTY3JpcHRWYWx1ZSBt
X2Vycm9yQ2FsbGJhY2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0byBwYXNzIGludG8gSW1h
Z2VSZXNpemVyVGhyZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxsYmFja0luZm87CisgICAg
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworCiAgICAg
T3V0cHV0VHlwZSBtX291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0g
ICAgZmxvYXQgbV9xdWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9P
cHRpb247Ci0gICAgT3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKKyAg
ICBSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAg
IFJlZlB0cjxSZXNpemVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5j
cHAgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5kZXggNWQ1OTIzZC4uMmZm
NTFmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCisrKyBi
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIsOSArMzIsMTcgQEAKICNp
bmNsdWRlICJIVE1MRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNp
bmNsdWRlICJIVE1MTmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaCIKICNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlv
bnMuaCIKICNpbmNsdWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAKKyNpZiBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKKyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2VuZGlmCisKIHVz
aW5nIG5hbWVzcGFjZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1MSw0ICs0NTks
MzQgQEAgdm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgp
CiAgICAgSFRNTEVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7CiB9CiAKKyNp
ZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRH
ZXRJbWFnZShTdHJpbmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRp
b25zLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygpLmlzVmFsaWQoKSkgewor
ICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgLy8gVGhlIHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxvd3MgZGF0YSBVUkxzLgor
ICAgIGlmIChkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWludHNDYW52YXMoc3JjKCkp
KSB7CisgICAgICAgIGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZTsKKyAgICBpZiAo
bWltZVR5cGUgPT0gImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFn
ZVJlc2l6ZXI6OkpQRUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0gImltYWdlL3BuZyIpCisg
ICAgICAgIG91dHB1dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5HOworICAgIGVsc2Ugewor
ICAgICAgICBlYyA9IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwg
bV9pbWFnZUxvYWRlci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9y
Q2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JF
U0laRVIpCisKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50Lmgg
Yi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29y
ZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2s7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVz
aXplT3B0aW9uczsKIAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVu
dCB7CiAgICAgZnJpZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBA
IHB1YmxpYzoKIAogICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4g
bV9pbWFnZUxvYWRlci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdF
X1JFU0laRVIpCisKKyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFz
c1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25D
b2RlJik7CisKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25z
dCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNjNWU0IDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hU
TUxJbWFnZUVsZW1lbnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAg
ICAgIC8vIE9iamVjdGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTVN0cmluZyBhbHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUg
VVJMIGFic29sdXRlSW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5lZChFTkFCTEVfSU1BR0Vf
UkVTSVpFUikgJiYgRU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAgLy8gRnVuY3Rpb25zCisg
ICAgICAgIFtDdXN0b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9NU3RyaW5nIG1pbWVUeXBl
LCBpbiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbT3B0aW9u
YWxdIGluIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxsYmFjaywgW09wdGlvbmFs
XSBpbiBSZXNpemVPcHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0
aW9uKTsKKyNlbmRpZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0
bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmZm
Zjg2Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaApAQCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAq
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
KyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
X2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsK
KworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPElt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7Cit9OworCit9CisKKyNl
bmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRs
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2NiZjgKLS0tIC9kZXYvbnVs
bAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKQEAgLTAs
MCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0
OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
CisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9m
IEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25k
aXRpb25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRE9NU3Ry
aW5nIGVycm9yKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NDAwZjMKLS0t
IC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gK
KyNkZWZpbmUgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2Ns
YXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGlj
IFJlZkNvdW50ZWQ8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7CitwdWJsaWM6CisgICAg
dmlydHVhbCB+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBi
b29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKikgPSAwOworfTsK
KworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBmZDg3
ZgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICog
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQor
ICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVp
dGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNl
IFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sK
KyAgICBdIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFu
ZGxlRXZlbnQoaW4gQmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9o
dG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhy
ZWFkLmNwcAppbmRleCAxYmFlNmEwLi5jZDk5ZGNjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhy
ZWFkLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1hcEltYWdlLmgiCiAjaW5j
bHVkZSAiSW1hZ2UuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0
aWxpdHk+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUxLDcgQEAgc3RhdGljIHZv
aWQgcmV0dXJuQmxvYk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1hdGlvbikKICAgICBkZWxl
dGUgY2FsbGJhY2tJbmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxi
YWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRw
dXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VS
ZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJl
c2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorYm9vbCBJbWFnZVJl
c2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFz
eW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJl
c2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9h
dCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09w
dGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24p
CiB7CiAgICAgSW1hZ2VSZXNpemVyVGhyZWFkKiBpbWFnZVJlc2l6ZXJUaHJlYWQgPSBuZXcgSW1h
Z2VSZXNpemVyVGhyZWFkKGNhbGxiYWNrSW5mbywgb3V0cHV0VHlwZSwgZGVzaXJlZEJvdW5kcywg
cXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKTsKIApAQCAtNjIs
NyArNjMsNyBAQCBib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFy
ZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlcwogICAgIHJldHVybiBpbWFnZVJlc2l6
ZXJUaHJlYWQtPm1fdGhyZWFkSUQ7CiB9CiAKLUltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNp
emVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywg
QXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVk
Qm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRp
b24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlv
biBvcmllbnRhdGlvbk9wdGlvbikKK0ltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhy
ZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJ
bWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRz
LCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RS
YXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25P
cHRpb24pCiAgICAgOiBtX3RocmVhZElEKDApCiAgICAgLCBtX2NhbGxiYWNrSW5mbyhjYWxsYmFj
a0luZm8pCiAgICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJU
aHJlYWQuaAppbmRleCBhZTVhZGU1Li42MTAwYjU1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmgKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVh
ZC5oCkBAIC0zNCw2ICszNCw3IEBACiAjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCiAKICNpbmNs
dWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MiwxMSArNDMsMTEgQEAgY2xhc3MgU2hhcmVkQnVm
ZmVyOwogCiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQgewogcHVibGljOgotICAgIHN0YXRpYyBi
b29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VS
ZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50
U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNw
ZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbik7Cisg
ICAgc3RhdGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwg
QXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRw
dXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIFJlc2l6ZU9wdGlv
bnM6OkFzcGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7
CiAgICAgfkltYWdlUmVzaXplclRocmVhZCgpOwogCiBwcml2YXRlOgotICAgIEltYWdlUmVzaXpl
clRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6
ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5
bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3Jp
ZW50YXRpb25PcHRpb24pOworICAgIEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXpl
cjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUg
ZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9P
cHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICBzdGF0aWMgdm9p
ZCogaW1hZ2VSZXNpemVyVGhyZWFkU3RhcnQodm9pZCopOwogICAgIHZvaWQqIGltYWdlUmVzaXpl
clRocmVhZCgpOwogCkBAIC01OSw4ICs2MCw4IEBAIHByaXZhdGU6CiAgICAgQXN5bmNJbWFnZVJl
c2l6ZXI6Ok91dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwogICAgIEludFNpemUgbV9kZXNpcmVkQm91
bmRzOwogICAgIGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0
UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6
T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBSZXNpemVPcHRpb25z
OjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOworICAgIFJlc2l6ZU9wdGlv
bnM6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5j
cHAgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYjA3YmNiOQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9S
ZXNpemVPcHRpb25zLmNwcApAQCAtMCwwICsxLDc1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAg
ICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMK
KyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
KyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lm
IEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKKworI2lu
Y2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworLy8gSW5j
bHVzaXZlIGxpbWl0czsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9uc0xvd2VyTGltaXQgPSAx
Oworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25zVXBwZXJMaW1pdCA9IDMyNzY3Oworc3RhdGlj
IGNvbnN0IGZsb2F0IGNvbXByZXNzaW9uTG93ZXJMaW1pdCA9IDAuMGY7CitzdGF0aWMgY29uc3Qg
ZmxvYXQgY29tcHJlc3Npb25VcHBlckxpbWl0ID0gMS4wZjsKKworc3RhdGljIGNvbnN0IGZsb2F0
IGRlZmF1bHRDb21wcmVzc2lvbiA9IDAuODVmOworCitQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+
IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZXNpemVPcHRp
b25zKCkpOyB9CisKK1Jlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9wdGlvbnMoKQorICAgIDogbV93aWR0
aCgpCisgICAgLCBtX2hlaWdodCgpCisgICAgLCBtX2NvbXByZXNzaW9uTGV2ZWwoKQorICAgICwg
bV9hc3BlY3RSYXRpb09wdGlvbihJZ25vcmVBc3BlY3RSYXRpbykKKyAgICAsIG1fb3JpZW50YXRp
b25PcHRpb24oSWdub3JlT3JpZW50YXRpb24pCit7Cit9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6
c2V0V2lkdGgoaW50IHdpZHRoKSB7IG1fd2lkdGggPSB3aWR0aCA+PSBkaW1lbnNpb25zTG93ZXJM
aW1pdCAmJiB3aWR0aCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IHdpZHRoIDogMDsgfQoraW50
IFJlc2l6ZU9wdGlvbnM6OndpZHRoKCkgeyByZXR1cm4gbV93aWR0aDsgfQorCit2b2lkIFJlc2l6
ZU9wdGlvbnM6OnNldEhlaWdodChpbnQgaGVpZ2h0KSB7IG1faGVpZ2h0ID0gaGVpZ2h0ID49IGRp
bWVuc2lvbnNMb3dlckxpbWl0ICYmIGhlaWdodCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IGhl
aWdodCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25zOjpoZWlnaHQoKSB7IHJldHVybiBtX2hlaWdo
dDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldENvbXByZXNzaW9uTGV2ZWwoZmxvYXQgY29t
cHJlc3Npb25MZXZlbCkgeyBtX2NvbXByZXNzaW9uTGV2ZWwgPSBjb21wcmVzc2lvbkxldmVsID49
IGNvbXByZXNzaW9uTG93ZXJMaW1pdCAmJiBjb21wcmVzc2lvbkxldmVsIDw9IGNvbXByZXNzaW9u
VXBwZXJMaW1pdCA/IGNvbXByZXNzaW9uTGV2ZWwgOiBkZWZhdWx0Q29tcHJlc3Npb247IH0KK2Zs
b2F0IFJlc2l6ZU9wdGlvbnM6OmNvbXByZXNzaW9uTGV2ZWwoKSB7IHJldHVybiBtX2NvbXByZXNz
aW9uTGV2ZWw7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRBc3BlY3RSYXRpb09wdGlvbihi
b29sIHByZXNlcnZlQXNwZWN0UmF0aW8pIHsgbV9hc3BlY3RSYXRpb09wdGlvbiA9IHByZXNlcnZl
QXNwZWN0UmF0aW8gPyBQcmVzZXJ2ZUFzcGVjdFJhdGlvIDogSWdub3JlQXNwZWN0UmF0aW87IH0K
K1Jlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIFJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJh
dGlvT3B0aW9uKCkgeyByZXR1cm4gbV9hc3BlY3RSYXRpb09wdGlvbjsgfQorCit2b2lkIFJlc2l6
ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbikg
eyBtX29yaWVudGF0aW9uT3B0aW9uID0gb3JpZW50YXRpb25PcHRpb24gPT0gImF1dG8iID8gQ29y
cmVjdE9yaWVudGF0aW9uIDogSWdub3JlT3JpZW50YXRpb247IH0KK1Jlc2l6ZU9wdGlvbnM6Ok9y
aWVudGF0aW9uT3B0aW9uIFJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKCkgeyByZXR1
cm4gbV9vcmllbnRhdGlvbk9wdGlvbjsgfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNl
bmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9S
ZXNpemVPcHRpb25zLmggYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzMGNjOTUKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJD
b3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCkBAIC0wLDAgKzEsODcgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9u
LgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFJlc2l6ZU9w
dGlvbnNfaAorI2RlZmluZSBSZXNpemVPcHRpb25zX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJ
WkVSKQorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFN0cmluZzsKKworY2xhc3Mg
UmVzaXplT3B0aW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFJlc2l6ZU9wdGlvbnM+IHsKK3B1Ymxp
YzoKKyAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKKyAgICAgICAgUHJlc2VydmVBc3BlY3RS
YXRpbywKKyAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KKyAgICB9OworCisgICAgZW51bSBPcmll
bnRhdGlvbk9wdGlvbiB7CisgICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKKyAgICAgICAgSWdu
b3JlT3JpZW50YXRpb24KKyAgICB9OworCisgICAgc3RhdGljIFBhc3NSZWZQdHI8UmVzaXplT3B0
aW9ucz4gY3JlYXRlKCk7CisKKyAgICB2b2lkIHNldFdpZHRoKGludCB3aWR0aCk7CisgICAgaW50
IHdpZHRoKCk7CisKKyAgICB2b2lkIHNldEhlaWdodChpbnQgaGVpZ2h0KTsKKyAgICBpbnQgaGVp
Z2h0KCk7CisKKyAgICB2b2lkIHNldENvbXByZXNzaW9uTGV2ZWwoZmxvYXQgY29tcHJlc3Npb25M
ZXZlbCk7CisgICAgZmxvYXQgY29tcHJlc3Npb25MZXZlbCgpOworCisgICAgdm9pZCBzZXRBc3Bl
Y3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8pOworICAgIEFzcGVjdFJhdGlv
T3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uKCk7CisKKyAgICB2b2lkIHNldE9yaWVudGF0aW9uT3B0
aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbik7CisgICAgT3JpZW50YXRpb25PcHRpb24gb3Jp
ZW50YXRpb25PcHRpb24oKTsKKworcHJpdmF0ZToKKyAgICBSZXNpemVPcHRpb25zKCk7CisKKyAg
ICAvLyBJZiBtX3dpZHRoIG9yIG1faGVpZ2h0ID09IDAsIHRoYXQgZGltZW5zaW9uIHdpbGwgbm90
IGNoYW5nZSBleHBsaWNpdGx5IGR1cmluZyByZXNpemluZy4KKyAgICBpbnQgbV93aWR0aDsKKyAg
ICBpbnQgbV9oZWlnaHQ7CisgICAgZmxvYXQgbV9jb21wcmVzc2lvbkxldmVsOworICAgIEFzcGVj
dFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgT3JpZW50YXRpb25PcHRpb24g
bV9vcmllbnRhdGlvbk9wdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2Vu
ZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gUmVzaXplT3B0aW9uc19o
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59451</attachid>
            <date>2010-06-22 18:12:58 -0700</date>
            <delta_ts>2010-06-22 19:20:50 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2.diff</filename>
            <type>text/plain</type>
            <size>97714</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5jMTJlZDFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlw
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2Fi
bGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1h
Z2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjE1OGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMDcgQEAKKworVGVzdHMgdGhlIGFjY2Vw
dGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0
aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UobnVsbCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01B
VENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4
Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAi
LCBlbXB0eUZ1bmN0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IE5PVF9TVVBQT1JURURfRVJS
OiBET00gRXhjZXB0aW9uIDkuCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
dHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBJbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCAic3RyaW5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9u
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBl
bXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmciKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6bnVsbH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTplbXB0eUZ1bmN0aW9u
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6SW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7d2lkdGg6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
dmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGlt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZp
bmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6e319KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OnRy
dWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29t
cHJlc3Npb25MZXZlbDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2Vy
dmVBc3BlY3RSYXRpbzplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246e319KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rp
b259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246NDJ9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10
eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIy
YzUxYzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKQEAgLTAs
MCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4i
PgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9
InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi42ZDQ3ZWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDExIEBACisKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3Vy
Y2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93
bjogRXJyb3I6IElOVkFMSURfU1RBVEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1o
YXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxl
ZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzY1MjM2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0
SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1ldC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJh
Y2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi45MWMwODVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tz
IHdvcmsgY29ycmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBF
cnJvciBjYWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3Rl
ZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
Lmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljM2VkN2IKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTQgQEAKKzwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhl
YWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGltZyBpZD0idGVzdElt
YWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMv
bm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVy
cmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYzNjYWFkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworVGhpcyBlbnN1cmVzIHRo
YXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRkZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgNDIgaXMgbm9uLXplcm8uCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJr
aXRHZXRJbWFnZS5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmM5NDlkYWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9J
RVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0icmVzb3VyY2VzL2hlbG1l
dC5qcGciIC8+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFn
ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Jlc291cmNl
cy9oZWxtZXQuanBnIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi43ZDQ4MmFhCkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVs
bWV0LmpwZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3
MTcwYWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGlt
ZyBpZD0idGVzdEltYWdlIiBzcmM9InJlc291cmNlcy9oZWxtZXQuanBnIiAvPgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZ
T1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5
cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUzNDE5MWIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsxLDE0NSBA
QAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1bWVudHMg
dG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24gc2hvdWxk
Tm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lvbik7Cisg
ICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4iKTsK
KyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91bGQgbm90
IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQorCitmdW5j
dGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0ZWRFeGNl
cHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAgIGlmIChl
eHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICco
ZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0pKCk7Jyk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24sICcoZnVu
Y3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJvdyhleHBy
ZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24oKSB7fTsK
KworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRocm93aW5n
RXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3
IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dpbmdFeGNl
cHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24oKSB7Cisg
ICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsKK3ZhciBv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpOwor
Cit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworCit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoKScsIHRydWUpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UodW5kZWZpbmVkKScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKG51bGwpJywg
dHJ1ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKScsIHRydWUpOworCit0ZXN0KCdp
bWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpbWcud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uKScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIGVtcHR5RnVu
Y3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBl
bXB0eUZ1bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNl
cHRpb24gOScpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKScs
IHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MiknLCB0cnVl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSknLCB0
cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpJywg
dHJ1ZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkKScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgbnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHt9KScsIHRydWUpOwordGVzdCgn
aW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJv
d2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHRydWUpJywgdHJ1ZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQy
KScsIHRydWUpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgLUluZmluaXR5KScsIHRydWUpOwordGVzdCgnaW1nLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAic3RyaW5nIiknLCB0cnVl
KTsKKwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHVuZGVmaW5lZCknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScs
IHRydWUsICdFcnJvcjogd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIGVtcHR5RnVu
Y3Rpb24pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCBJbmZpbml0eSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScsIGZh
bHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCAic3RyaW5nIiknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0
eTp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eTp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1n
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5Oi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KScs
IGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUs
ICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlG
dW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0
KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoi
c3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScsIGZhbHNl
KTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1
ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1w
dHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFsc2UpOwor
dGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1
bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2lt
Zy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9y
OiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVt
cHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVs
OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRl
ZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KScsIGZhbHNlKTsKK3Rlc3Qo
J2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2Up
OwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsK
K3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3By
ZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1J
bmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmci
fSknLCBmYWxzZSk7CisKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxzZSk7
Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNl
cHRpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ltZy53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246ZW1wdHlGdW5jdGlvbn0pJywg
ZmFsc2UpOwordGVzdCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcu
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOkluZmluaXR5fSkn
LCBmYWxzZSk7Cit0ZXN0KCdpbWcud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaW1nLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtvcmllbnRhdGlvbjoic3RyaW5nIn0pJywgZmFsc2UpOworCit3aW5kb3cuanNUZXN0SXNB
c3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFz
LW5vLXNvdXJjZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjg1M2E5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpAQCAt
MCwwICsxLDIwIEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBhbiBpbWFnZSB3aXRoIG5vIHNv
dXJjZSB3aWxsIHRocm93IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4iKTsKKwordmFy
IGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9OworCit2YXIgaW1nID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpOworaW1nLnNyYyA9IG51bGw7CisKK2RvY3VtZW50LmJv
ZHkub25sb2FkID0gZnVuY3Rpb24oKSB7CisJdHJ5IHsKKwkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3Rlc3RJbWFnZScpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
bik7CisJCXRlc3RGYWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgewor
CQl0ZXN0UGFzc2VkKCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJ
ZmluaXNoSlNUZXN0KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9u
by1jYWxsYmFjay1hZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11
bmxvYWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTg3Y2ViYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxvYikgewor
ICAgIHRlc3RGYWlsZWQoIlN1Y2Nlc3MgY2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNhbGxlZCIp
OworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBmdW5jdGlv
bihlcnJvcikgeworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkg
Y2FsbGVkIHdpdGggb3V0cHV0OiAiICsgZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsK
KworLy8gT25seSB0aGUgZXJyb3IgY2FsbGJhY2sgd2lsbCBjdXJyZW50bHkgZXZlciBiZSBjYWxs
ZWQgaW4gdGhpcyBwYXRjaCwgc28gdGVzdCB0aGF0IGl0IHdvcmtzIGZvciBub3cKK2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0SW1hZ2UnKS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIs
IHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li45NzZjYzYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMCBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdEltYWdlJyk7Citp
bWcud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9Cit2YXIgcmVzdWx0
ID0gaW1nLndlYmtpdEdldEltYWdlKCk7CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3
aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJj
OTVkNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oKSB7CisgICAg
dGVzdEZhaWxlZCgiU3VjY2VzcyBjYWxsYmFjayB3YXMgaW5jb3JyZWN0bHkgY2FsbGVkIik7Cisg
ICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgZXJyb3JDYWxsYmFjayA9IGZ1bmN0aW9uKCkg
eworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIik7
CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCisvLyBPbmx5IHRoZSBlcnJvciBjYWxsYmFjayB3
aWxsIGN1cnJlbnRseSBldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQg
aXQgd29ya3MgZm9yIG5vdworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RJbWFnZScpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxs
YmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZl
NWRiMjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDExIEBACisKK1Rlc3RzIHRoYXQgdGhlIGNhbGxiYWNrcyB3b3JrIGNvcnJlY3RseS4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgRXJyb3IgY2FsbGJhY2sgd2FzIGNv
cnJlY3RseSBjYWxsZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJh
Y2tzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjdk
ZmI4YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApAQCAtMCww
ICsxLDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxp
bWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJyZXNvdXJjZXMvaGVsbWV0LmpwZyIgLz4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13
ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNDhlZjg4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldElt
YWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhh
dCBJbWFnZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJl
bW90ZSBvcmlnaW4uCisKKworUEFTUzogVGhyZXcgZXhjZXB0aW9uOiBFcnJvcjogU0VDVVJJVFlf
RVJSOiBET00gRXhjZXB0aW9uIDE4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3Rl
LW9yaWdpbi5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmY4M2VlOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
aW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkCkBAIC0wLDAg
KzEsMzEgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKG1zZykKK3sK
KyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUobXNnICsgIlxuIikpOworfQorCit2YXIgZW1wdHlDYWxsYmFjayA9IGZ1
bmN0aW9uKCkgeyB9OworCit3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgdHJ5IHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RJbWFnZSIpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUNhbGxiYWNr
KTsKKyAgICAgICAgbG9nKCJGQUlMOiBEaWQgbm90IHRocm93IGV4Y2VwdGlvbiIpOworICAgIH0g
Y2F0Y2ggKGUpIHsKKyAgICAgICAgbG9nICgiUEFTUzogVGhyZXcgZXhjZXB0aW9uOiAiICsgZSk7
CisgICAgfQorCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorPC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1h
Z2UgY2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLjwvcD4KKzxp
bWcgaWQ9InRlc3RJbWFnZSIgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvbWlzYy9yZXNvdXJj
ZXMvaGVsbWV0LmpwZyI+Cis8cHJlIGlkPSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQu
anBnIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkNDgyYWEKQmluYXJ5IGZpbGVzIC9k
ZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2hlbG1l
dC5qcGcgZGlmZmVyCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhZWI0YjY4Li4wMWMyYTVlIDEwMDY0NAotLS0gYS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI2Miw2
ICsyNjIsOCBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0hUTUxVTGlzdEVsZW1l
bnQuaWRsCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbAogICAgIGh0bWwvSW1hZ2VEYXRh
LmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKKyAgICBodG1sL0lt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKICAgICBodG1sL01lZGlhRXJyb3IuaWRsCiAg
ICAgaHRtbC9UZXh0TWV0cmljcy5pZGwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaWRsCmRpZmYg
LS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk5M2Ex
MjEuLjdjYjA2OGYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUgQEAKKzIwMTAtMDYtMjEgIFN0ZXJsaW5nIFN3aWdhcnQg
IDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUgaW1hZ2UgcmVzaXppbmcgQVBJIHRv
IEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGF0IHRoaXMgc3RhZ2UuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisg
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIGZpbGVzLgorICAgICAgICAqIERlcml2ZWRT
b3VyY2VzLmNwcDogRGl0dG8uCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogRGl0dG8u
CisgICAgICAgICogR05VbWFrZWZpbGUuYW06IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUuZ3lw
aTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcmk6IERpdHRvLgorICAgICAgICAqIFdlYkNv
cmUucHJvOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBEaXR0
by4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29y
ZTo6SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06IENoYW5nZWQgdG8gY29udmVydCBTdHJpbmdz
IHRvIEpTU3RyaW5ncyBjb3JyZWN0bHkgaW4gY2FsbGJhY2tzLgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6IENoYW5nZWQgYmluZGluZ3MtdGVz
dCBmb3IgYWJvdmUuCisgICAgICAgIChXZWJDb3JlOjpKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tX
aXRoQ2xhc3MyUGFyYW0pOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KTogQ2xpZW50IG9mIHRo
aXMgY2xhc3Mgbm8gbG9uZ2VyIGRvZXMgYW55IHJlZmNvdW50aW5nCisgICAgICAgIChXZWJDb3Jl
OjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZCk6IFJlZmFjdG9yZWQu
CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplQ29tcGxldGUpOiBB
ZGRlZCBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpyZXNp
emVFcnJvcik6IERpdHRvLgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm86OkNhbGxiYWNr
SW5mbyk6IE5vdyBvbmx5IHN0b3JlcyBuZWNlc3NldGllcy4KKyAgICAgICAgKiBodG1sL0hUTUxJ
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudDo6d2Vi
a2l0R2V0SW1hZ2UpOiBJbXBsZW1lbnRhdGlvbiBvZiBKUyBmdW5jdGlvbi4KKyAgICAgICAgKiBo
dG1sL0hUTUxJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQu
aWRsOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOiBBZGRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
azo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVz
aXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0
YXJ0KTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6
SW1hZ2VSZXNpemVyVGhyZWFkKTogIFJlZmFjdG9yZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJUaHJlYWQuaDogUmVmYWN0b3JlZC4KKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNl
dEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWlnaHQpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZlbCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAgICAgKiBodG1s
L1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjopOgorCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFVucmV2aWV3ZWQ6IFF0IGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKaW5kZXgg
N2FjM2U1MS4uY2U1YzhmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAK
KysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQAogI2lu
Y2x1ZGUgIkpTSURCUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNJREJTdWNjZXNzRXZlbnQuY3Bw
IgogI2luY2x1ZGUgIkpTSW1hZ2VEYXRhLmNwcCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suY3BwIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmNwcCIKICNpbmNsdWRlICJKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuY3BwIgogI2luY2x1ZGUg
IkpTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmNw
cCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQppbmRleCA3ZWM5MTVmLi4zMTZkZTU3IDEwMDY0NAotLS0gYS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CkBAIC0yMjMsNiArMjIzLDggQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSURCUmVxdWVzdCBcCiAg
ICAgSURCU3VjY2Vzc0V2ZW50IFwKICAgICBJbWFnZURhdGEgXAorICAgIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjayBcCisgICAgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBcCiAgICAgSW5k
ZXhlZERhdGFiYXNlUmVxdWVzdCBcCiAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0IFwKICAgICBJbnNw
ZWN0b3JCYWNrZW5kIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJD
b3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGU3ODU3NDkuLmVkYmFjN2EgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMjc1
LDYgKzI3NSw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxVTGlzdEVs
ZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogCVdlYkNv
cmUvaHRtbC9JbWFnZURhdGEuaWRsIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5pZGwgXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aWRsIFwKIAlXZWJDb3JlL2h0bWwvVGV4dE1ldHJpY3MuaWRsIFwKIAlXZWJDb3JlL2h0bWwvVmFs
aWRpdHlTdGF0ZS5pZGwgXAogCVdlYkNvcmUvaHRtbC9Wb2lkQ2FsbGJhY2suaWRsIFwKQEAgLTQ1
NSw2ICs0NTcsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvYmluZGluZ3MvanMv
SlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hU
TUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRN
TElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwKKwlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElt
YWdlRWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRF
bGVtZW50Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1l
bnRDdXN0b20uaCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3Vz
dG9tLmNwcCBcCkBAIC0xMjY3LDYgKzEyNzAsOCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdl
YkNvcmUvaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmggXAogCVdlYkNvcmUvaHRtbC9JbWFn
ZURhdGEuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmggXAorCVdlYkNvcmUvaHRtbC9J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAg
XAogCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAJV2ViQ29yZS9odG1sL0xh
YmVsc05vZGVMaXN0LmNwcCBcCkBAIC0xMjc0LDYgKzEyNzksOCBAQCB3ZWJjb3JlX3NvdXJjZXMg
Kz0gXAogCVdlYkNvcmUvaHRtbC9NZWRpYUVycm9yLmggXAogCVdlYkNvcmUvaHRtbC9QcmVsb2Fk
U2Nhbm5lci5jcHAgXAogCVdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKwlXZWJDb3Jl
L2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgg
XAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuY3BwIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJhbmdl
LmggXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0cmljcy5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggZjJjZGQ2Ny4uZjllYjIx
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkKQEAgLTE4Nyw2ICsxODcsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdodG1sL01lZGlhRXJyb3IuaWRsJywK
ICAgICAgICAgICAgICdodG1sL1RleHRNZXRyaWNzLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9U
aW1lUmFuZ2VzLmlkbCcsCkBAIC01NzEsNiArNTczLDcgQEAKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5k
aW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCcsCisgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwJywKQEAgLTE2NTYsNiArMTY1OSw4
IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmgnLAogICAgICAg
ICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEu
aCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgnLAorICAg
ICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgnLAogICAgICAgICAg
ICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFn
ZVJlc2l6ZXJUaHJlYWQuaCcsCiAgICAgICAgICAgICAnaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAn
LApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBiL1dlYkNvcmUvV2ViQ29yZS5wcmkK
aW5kZXggMjVjOTVmZi4uNGU2ZWZlNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnByaQor
KysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC00MjIsNiArNDIyLDggQEAgSURMX0JJTkRJTkdT
ICs9IFwKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwKICAgICBodG1sL0hUTUxWaWRl
b0VsZW1lbnQuaWRsIFwKICAgICBodG1sL0ltYWdlRGF0YS5pZGwgXAorICAgIGh0bWwvSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCBcCiAgICAgaHRtbC9NZWRpYUVycm9yLmlkbCBcCiAgICAgaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogICAgIGh0bWwvVGltZVJhbmdlcy5pZGwgXApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggOTJhNzc1Yy4uMzU1MjMy
NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNvcmUu
cHJvCkBAIC0zMTUsNiArMzE1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgYmluZGluZ3MvanMvSlNI
VE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVT
ZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVu
dEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5j
cHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogICAg
IGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5n
cy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgXApAQCAtNzA0LDYgKzcwNSw3
IEBAIFNPVVJDRVMgKz0gXAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXAogICAgIGh0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwK
KyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIFwKICAgICBodG1sL1N0ZXBSYW5nZS5jcHAgXAog
ICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5jcHAgXAogICAgIGluc3BlY3Rvci9Db25zb2xlTWVzc2Fn
ZS5jcHAgXApAQCAtMTQzNiw5ICsxNDM4LDEyIEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvSFRN
TFZpZGVvRWxlbWVudC5oIFwKICAgICBodG1sL0hUTUxWaWV3U291cmNlRG9jdW1lbnQuaCBcCiAg
ICAgaHRtbC9JbWFnZURhdGEuaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmggXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogICAgIGh0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmggXAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuaCBcCiAgICAg
aHRtbC9QcmVsb2FkU2Nhbm5lci5oIFwKKyAgICBodG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAgICAg
aHRtbC9TdGVwUmFuZ2UuaCBcCiAgICAgaHRtbC9UaW1lUmFuZ2VzLmggXAogICAgIGh0bWwvVmFs
aWRpdHlTdGF0ZS5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDYy
NGQ0MzMuLjAxN2UzN2IgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAt
Mzc2NjEsNiArMzc2NjEsMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJ
CVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCINCisJ
CQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJ
CQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyVGhyZWFkLmNw
cCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0zNzY4OSw2ICszNzY5NywxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6
ZU9wdGlvbnMuY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0
aXZlUGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQor
CQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFN0ZXBSYW5nZS5jcHAiDQogCQkJ
CT4NCiAJCQk8L0ZpbGU+DQpAQCAtNDAxMjgsNyArNDAxNDQsOSBAQAogCQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCiAJCQkJCVJlbGF0aXZlUGF0
aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNwcCINCisKIAkJCQkJ
Pg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQogCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQpA
QCAtNDAzODgsNiArNDA0MDYsNTkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJ
PC9GaWxlPg0KIAkJCQk8RmlsZQ0KKworCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAiDQorCQkJCQk+DQorCQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJ
CTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiDQorCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJ
CU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19JbnRl
cm5hbHxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQor
CQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJ
CQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0
cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVD
b25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb3xXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0FsbHxX
aW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJ
PFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJ
PC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIg0K
IAkJCQkJPg0KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMzBiMjlkLi4yMjhjMDQwIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzUwOSw2ICszNTA5LDE1IEBACiAJ
CUIwMTQ5RTdFMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0ExMUE0QjIxNTAw
MTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi87IH07CiAJCUIwMTQ5RTdGMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdl
UmVzaXplclRocmVhZC5jcHAgKi87IH07CiAJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJ
bWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQu
aCAqLzsgfTsKKwkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwNEU2QkYxMTFD
NkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi87IH07CisJCUIwNEU2QkY1MTFDN0Yw
NzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3
QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMDRFNkJGNjExQzdGMDdFMDAyMTQyODMgLyog
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwNEY1OUZEMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3Bw
ICovOyB9OworCQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTUxQTEx
Q0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi87IH07CisJCUIwQTcxNUI3MTFE
MDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjMxMUQwNDMxRTAw
M0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi87IH07CisJCUIwQTcx
NUI4MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI0MTFEMDQz
MUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjBB
NzE1QjkxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI1
MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi87
IH07CisJCUIwQTcxNUJBMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmggKi87IH07CiAJCUIyMDExMTA3MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA1
MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLzsgfTsKIAkJQjIwMTExMDgw
QUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NW
R0FFbGVtZW50LmggKi87IH07CiAJCUIyMTEyN0E2MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BP
RFR5cGVXcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMjExMjdBNTBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICov
OyB9OwpAQCAtODg0NSw2ICs4ODU0LDE3IEBACiAJCUIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAv
KiBBc3luY0ltYWdlUmVzaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBB
c3luY0ltYWdlUmVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0OUU3
QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyVGhyZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRBMTFBQjFF
QTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVt
ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TEltYWdlRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIw
QTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTdBMTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1QjYxMUQw
NDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA1MEFCNzc0MDUwMERCMEU2OCAv
KiBKU1NWR0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1NWR0FFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTEx
MDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQjIxMTI3QTUwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUE9EVHlwZVdyYXBwZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNjk5LDYgKzEzNzE5LDEwIEBACiAJCQkJ
QTc3OTc5MTMwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5
MTQwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5oICovLAogCQkJCUE3Nzk3OTE1MEQ2QjlE
MEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuaWRsICovLAorCQkJCUIwMTRBMDRBMTFBQjFFQTAwMDE5
NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1NzkxMUQw
MUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCUIw
MTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAq
LywKKwkJCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCAqLywKIAkJCQlCMDE0OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNp
emVyVGhyZWFkLmNwcCAqLywKIAkJCQlCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VS
ZXNpemVyVGhyZWFkLmggKi8sCiAJCQkJQTQ1NkZBMjQxMUFENEE4MzAwMjBCNDIwIC8qIExhYmVs
c05vZGVMaXN0LmNwcCAqLywKQEAgLTEzNzA5LDYgKzEzNzMzLDggQEAKIAkJCQlFNDQ2MTM5QzBD
RDYzMzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5pZGwgKi8sCiAJCQkJRTRENEFCRTAwRDc1NDJG
MDAwRjk2ODY5IC8qIFByZWxvYWRTY2FubmVyLmNwcCAqLywKIAkJCQlFNEQ0QUJFMTBENzU0MkYx
MDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIuaCAqLywKKwkJCQlCMEE3MTUxQTExQ0MyNEVFMDAz
QzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgKi8sCisJCQkJQjA0RTZCRjExMUM2RjBFOTAwMjE0
MjgzIC8qIFJlc2l6ZU9wdGlvbnMuaCAqLywKIAkJCQlBNUFGQjM0RDExNTE1MUE3MDBCMDQ1Q0Ig
LyogU3RlcFJhbmdlLmNwcCAqLywKIAkJCQlBNUFGQjM0RTExNTE1MUE3MDBCMDQ1Q0IgLyogU3Rl
cFJhbmdlLmggKi8sCiAJCQkJQkNFRjQ1RTgwRTY4Nzc2NzAwMUMxMjg3IC8qIFRleHRNZXRyaWNz
LmggKi8sCkBAIC0xMzk0OCw2ICsxMzk3NCwxMCBAQAogCQkJCUU0NDYxNDBGMENENjgyNjkwMEZB
REE3NSAvKiBKU0hUTUxWaWRlb0VsZW1lbnQuaCAqLywKIAkJCQlBNzc5NzkyNDBENkI5RTY0MDAz
ODUxQjkgLyogSlNJbWFnZURhdGEuY3BwICovLAogCQkJCUE3Nzk3OTI1MEQ2QjlFNjQwMDM4NTFC
OSAvKiBKU0ltYWdlRGF0YS5oICovLAorCQkJCUIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICovLAorCQkJCUIwQTcxNUI0MTFEMDQzMUUw
MDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJCQlCMEE3MTVC
NTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICov
LAorCQkJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oICovLAogCQkJCTQ5RUVDRUY4MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJy
YXkuY3BwICovLAogCQkJCTQ5RUVDRUY5MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDE2QXJyYXku
aCAqLywKIAkJCQk0OUVFQ0VGNjEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQzMkFycmF5LmNwcCAq
LywKQEAgLTE1NTEzLDYgKzE1NTQzLDcgQEAKIAkJCQlCQzJFRDdBNDBDNkMwRjM2MDA5MjBCRkYg
LyogSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0Q0MUFCQTBDMDYwREU4
MDBDMEU0NDYgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzJF
RDY0RjBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgKi8s
CisJCQkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3Rv
bS5jcHAgKi8sCiAJCQkJQkNDNDM4NzcwRTg4NkNDNzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxl
bWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMzMDVDQTMwQzA3ODFCQjAwQ0QyMEYwIC8qIEpTSFRN
TE9iamVjdEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCTQ0OEFEMjdBMEE0ODEzNzkwMDIzRDE3
OSAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCkBAIC0xODExOSw2ICsx
ODE1MCw4IEBACiAJCQkJMUE4MjBEOTIwQTEzRUJBNjAwQUY4NDNDIC8qIEltYWdlRG9jdW1lbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTA4OTU4MjU2MEU4NTdBN0UwMEY4MkM4MyAvKiBJbWFnZUxv
YWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM3RjQ0QTgwQjlFMzI0RTAwQTlEMDgxIC8qIElt
YWdlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4
MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRF
NkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4g
SGVhZGVycyAqLywKIAkJCQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVy
VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMjc1MzU3MTBCMDUzODE0MDAyQ0U2NEYgLyog
SW1hZ2VTb3VyY2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTRCMzQ4MDk0MEVFRjUwRDQwMEFDMUI0
MSAvKiBJbWFnZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLywKQEAgLTE4MzUxLDYgKzE4Mzg0LDgg
QEAKIAkJCQlDNTZDOTFBNzExOUQ5MTg3MDBERTRDRDkgLyogSlNJREJTdWNjZXNzRXZlbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCUJDNkM0OUY0MEQ3REJBMDUwMEZGQTU1OCAvKiBKU0ltYWdlQ29u
c3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3Nzk3OTI5MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjBBNzE1QjgxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjBBNzE1QkExMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDNUY0RjQxMTExOTMwNkMwMDBGREZBREQgLyogSlNJbmRl
eGVkRGF0YWJhc2VSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQk3QTBFNzZEQjEwQkYwNTk4
MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTQx
RjA2MENFMEY1RUVCMkIwMEEwN0VBQyAvKiBKU0luc3BlY3RvckJhY2tlbmQuaCBpbiBIZWFkZXJz
ICovLApAQCAtMTg4ODUsNiArMTg5MjAsNyBAQAogCQkJCUE4OUNDQzUzMEY0NEU5ODEwMEI1REEx
MCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMz
MDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQ0IxNkMyRjA5NzlDM0JEMDA0Njc3NDEgLyogUmVxdWVzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjA0RTZCRjIxMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlvbnMu
aCBpbiBIZWFkZXJzICovLAogCQkJCTkzNEY3MTQyMEQ1QTZGNDQwMDAxOEQ2OSAvKiBSZXNvdXJj
ZUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyog
UmVzb3VyY2VFcnJvckJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3Njc5MENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMDY1NCw2ICsy
MDY5MCw3IEBACiAJCQkJQkM0OTE4QzgwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFtZUVs
ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyRUQ2NTAwQzZCQzQ4QzAwOTIwQkZGIC8q
IEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFFMkFB
OTcwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlCMDRGNTlGRjExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4MEU3RTk4MEExQTgzRTMwMDdGQjhDNSAvKiBK
U0hUTUxJbnB1dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNDNDM4NzgwRTg4NkND
NzAwNTMzREQ1IC8qIEpTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkxQUUyQUE5OTBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSXNJbmRleEVsZW1lbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCkBAIC0yMDcxMiw2ICsyMDc0OSw4IEBACiAJCQkJQkM2QzQ5RjMwRDdE
QkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlBNzc5NzkyODBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTdEMDMxOEUwRTkzNTQwMzAwRTI0QUNEIC8qIEpTSW1hZ2VEYXRhQ3VzdG9tLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNUI3MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1QjkxMUQw
NDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUM1RjRGNDEwMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFz
ZVJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2REExMEJGMDU5ODAwQTAyNzZF
IC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMEU3NkQ1
MTBCRjA1MDcwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTIxMjU5LDYgKzIxMjk4LDcgQEAKIAkJCQlBODlDQ0M1MjBGNDRFOTgxMDBC
NURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTMzMDlFMDkwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzJFMDk3OUMzQkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNTFCMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNp
emVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzNEY3MTNFMEQ1QTZGMjgwMDAxOEQ2
OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MTRDNzY1MDBD
RTkyMzRFMDA3RUYzQ0QgLyogUmVzb3VyY2VFcnJvck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTUxNEM3Njc4MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZS5jcHAgaW4gU291cmNl
cyAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50
Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9t
LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTYyNTViCi0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20u
Y3BwCkBAIC0wLDAgKzEsMTY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQorI2luY2x1ZGUgIkpTSFRNTEltYWdlRWxlbWVudC5oIgorCisjaW5jbHVkZSAi
RE9NV2luZG93LmgiCisjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgorI2luY2x1ZGUgIkpT
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgorCisjaW5jbHVkZSA8
cnVudGltZS9KU0Z1bmN0aW9uLmg+CisjaW5jbHVkZSA8cnVudGltZS9KU1N0cmluZy5oPgorI2lu
Y2x1ZGUgPHd0Zi9HZXRQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9SZWZQdHIuaD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitzdGF0aWMgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+
IGNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9N
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgaWYgKCF2
YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAgICAgc2V0RE9NRXhjZXB0
aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsKKyAgICByZXR1cm4gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7
Cit9CisKK3N0YXRpYyBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIC8vIEFyZ3VtZW50IGlz
IG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93
ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJldHVybiAw
OworCisgICAgaWYgKCF2YWx1ZS5pbmhlcml0cygmSlNGdW5jdGlvbjo6aW5mbykpIHsKKyAgICAg
ICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIFRZUEVfTUlTTUFUQ0hfRVJSKTsKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgfQorCisgICAgSlNPYmplY3QqIG9iamVjdCA9IGFzT2JqZWN0KHZhbHVlKTsK
KyAgICByZXR1cm4gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjpjcmVhdGUob2JqZWN0LCBn
bG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVh
dGVSZXNpemVPcHRpb25zKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9IFJlc2l6ZU9wdGlvbnM6OmNyZWF0
ZSgpOworCisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBpcyBh
bGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmluZWRP
ck51bGwoKSkgeworICAgICAgICAvLyBVc2UgZGVmYXVsdCBvcHRpb25zLgorICAgICAgICByZXR1
cm4gcmVzaXplT3B0aW9ucy5yZWxlYXNlKCk7CisgICAgfQorICAgIEpTT2JqZWN0KiBvYmplY3Qg
PSB2YWx1ZS50b09iamVjdChleGVjKTsKKworICAgIEpTVmFsdWUgd2lkdGggPSBvYmplY3QtPmdl
dChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJ3aWR0aCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghd2lkdGguaXNVbmRlZmluZWQo
KSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRXaWR0aCh3aWR0aC50b0Zsb2F0KGV4ZWMp
KTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBoZWlnaHQgPSBvYmplY3QtPmdldChleGVjLCBJZGVu
dGlmaWVyKGV4ZWMsICJoZWlnaHQiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWhlaWdodC5pc1VuZGVmaW5lZCgpKSB7CisgICAg
ICAgIHJlc2l6ZU9wdGlvbnMtPnNldEhlaWdodChoZWlnaHQudG9GbG9hdChleGVjKSk7CisgICAg
ICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
IH0KKworICAgIEpTVmFsdWUgY29tcHJlc3Npb25MZXZlbCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElk
ZW50aWZpZXIoZXhlYywgImNvbXByZXNzaW9uTGV2ZWwiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIWNvbXByZXNzaW9uTGV2ZWwu
aXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRDb21wcmVzc2lvbkxl
dmVsKGNvbXByZXNzaW9uTGV2ZWwudG9GbG9hdChleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhl
YywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRl
ZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihw
cmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFs
dWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmll
bnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
biAwOworICAgIGlmICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNp
emVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRp
b24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMu
cmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1h
Z2UoRXhlY1N0YXRlKiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgw
KS50b1N0cmluZyhleGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2so
ZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFs
T2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0Nh
bGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNh
bGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2Fz
dDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMt
PmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9w
dGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OworICAgIEFTU0VSVChyZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGlt
cCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Vi
a2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2Fs
bGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERP
TUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBi
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkx
MS4uNDUyMWRmMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCkBAIC0yMTc5LDcgKzIxNzksMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRh
dGlvbgogCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAg
ICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFt
ZX0pKTtcbiIpOworICAgICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmlu
ZyIpIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5h
cHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
YXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
XG4gICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAz
YzYuLjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENhbGxiYWNrLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFj
azo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4
dCwgQ2wKICAgICBFeGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsK
ICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhl
YywgY2xhc3MyUGFyYW0pKTsKLSAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOwor
ICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlz
ZWRFeGNlcHRpb24gPSBmYWxzZTsKICAgICBtX2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZy
YWlzZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNp
emVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRj
OS4uOWY4YTU2NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNw
cAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQs
MzIgQEAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVk
SW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVk
ZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
VGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1
ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Q
YXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENh
Y2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRl
c2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJy
b3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9P
cHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0lt
YWdlUmVzaXplcjo6c3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUs
IFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFz
c1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9w
dFJlZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2ly
ZWRCb3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0
UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVz
aXplcihzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3Vj
Y2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJ
bWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwg
T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVl
IHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0
eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9u
IG9yaWVudGF0aW9uT3B0aW9uKQorQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVy
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZElt
YWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0
aW9ucz4gcmVzaXplT3B0aW9ucykKICAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisg
ICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAg
ICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3Vj
Y2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAg
LCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKLSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVk
Qm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0
aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRh
dGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXplT3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAg
IEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5pc09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNr
IGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxi
YWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0Nh
bGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAK
QEAgLTY3LDExICs3MSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hl
ZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNh
Y2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxs
YmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVy
VGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rl
c2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlv
bk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwg
bV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndp
ZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXBy
ZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jl
c2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigp
OwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8Qmxv
Yj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LCBibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXpl
cjo6cmVzaXplRXJyb3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAg
ICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0
LCAiVW5leHBlY3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0Fz
eW5jSW1hZ2VSZXNpemVyLmgKaW5kZXggM2VlZWVhZC4uYzQyMjg0MiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1h
Z2VSZXNpemVyLmgKQEAgLTQwLDcgKzQwLDExIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNs
YXNzIENhY2hlZEltYWdlOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNz
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsK
K2NsYXNzIFJlc2l6ZU9wdGlvbnM7CisKIAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9y
IHRoZSBDYWNoZWRJbWFnZSB0aGF0IGlzIHBhc3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAv
LyB0aGVuIHN0YXJ0cyBhbiBJbWFnZVJlc2l6ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4g
T25jZSBjcmVhdGVkLCBJbWFnZVJlc2l6ZXJUaHJlYWQKQEAgLTQ4LDU2ICs1Miw0MiBAQCBjbGFz
cyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CiAvLyBvY2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95
ZWQuIElmIHRoZSBkb2N1bWVudCBpcyBkZXN0cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5
bmNJbWFnZVJlc2l6ZXIgd2lsbCByZWNlaXZlIGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50
bHkgYmxvY2sgdGhlIGNhbGxiYWNrcyBmcm9tCiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0lt
YWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50
ZWQ8QXN5bmNJbWFnZVJlc2l6ZXI+IHsKK2NsYXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGlj
IENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZv
IHsKLSAgICAgICAgQ2FsbGJhY2tJbmZvKFBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFz
eW5jSW1hZ2VSZXNpemVyKQorICAgICAgICBDYWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0lt
YWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VS
ZXNpemVyKGFzeW5jSW1hZ2VSZXNpemVyKQogICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAg
IHsKICAgICAgICAgfQogCi0gICAgICAgIFJlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJ
bWFnZVJlc2l6ZXI7CisgICAgICAgIE93blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFn
ZVJlc2l6ZXI7CiAgICAgICAgIFJlZlB0cjxCbG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAg
ICBlbnVtIE91dHB1dFR5cGUgewogICAgICAgICBKUEVHLAogICAgICAgICBQTkcKICAgICB9Owog
Ci0gICAgZW51bSBBc3BlY3RSYXRpb09wdGlvbiB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0
aW8sCi0gICAgICAgIElnbm9yZUFzcGVjdFJhdGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50
YXRpb25PcHRpb24gewotICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9y
ZU9yaWVudGF0aW9uCi0gICAgfTsKLQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VS
ZXNpemVyPiBjcmVhdGUoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRC
b3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxs
YmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9u
KTsKKyAgICBzdGF0aWMgdm9pZCBzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVk
SW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
az4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVz
aXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6
IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRl
c3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBs
ZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQot
ICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAq
LyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVz
aXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFn
ZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vz
c0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3Bl
Y3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVy
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVh
bCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFn
ZSogbV9jYWNoZWRJbWFnZTsKLSAgICBTY3JpcHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAg
ICBTY3JpcHRWYWx1ZSBtX2Vycm9yQ2FsbGJhY2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0
byBwYXNzIGludG8gSW1hZ2VSZXNpemVyVGhyZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxs
YmFja0luZm87CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0OworCiAgICAgT3V0cHV0VHlwZSBtX291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rl
c2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9xdWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9u
IG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgT3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlv
bk9wdGlvbjsKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nl
c3NDYWxsYmFjazsKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJv
ckNhbGxiYWNrOworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5k
ZXggNWQ1OTIzZC4uMmZmNTFmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIs
OSArMzIsMTcgQEAKICNpbmNsdWRlICJIVE1MRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9y
bUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgor
I2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1
ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNpbmNsdWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5o
IgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
QEAgLTQ1MSw0ICs0NTksMzQgQEAgdm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3
T3duZXJEb2N1bWVudCgpCiAgICAgSFRNTEVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3Vt
ZW50KCk7CiB9CiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VF
bGVtZW50Ojp3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRp
b25zPiByZXNpemVPcHRpb25zLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygp
LmlzVmFsaWQoKSkgeworICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgLy8gVGhlIHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxv
d3MgZGF0YSBVUkxzLgorICAgIGlmIChkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWlu
dHNDYW52YXMoc3JjKCkpKSB7CisgICAgICAgIGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0
VHlwZTsKKyAgICBpZiAobWltZVR5cGUgPT0gImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRU
eXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OkpQRUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0g
ImltYWdlL3BuZyIpCisgICAgICAgIG91dHB1dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5H
OworICAgIGVsc2UgeworICAgICAgICBlYyA9IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKSwgbV9pbWFnZUxvYWRlci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNz
Q2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8g
RU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1M
SW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYy
ZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50
LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBA
QAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsKIAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1
YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJpZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAg
LTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkg
Y29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRlci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisj
aWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmlu
ZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTElt
YWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1l
bnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50Lmlk
bCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNj
NWU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIv
V2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1
bGUgaHRtbCB7CiAgICAgICAgIC8vIE9iamVjdGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBhbHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFk
b25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRlSW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5l
ZChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJiYgRU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAg
Ly8gRnVuY3Rpb25zCisgICAgICAgIFtDdXN0b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9N
U3RyaW5nIG1pbWVUeXBlLCBpbiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0Nh
bGxiYWNrLCBbT3B0aW9uYWxdIGluIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxs
YmFjaywgW09wdGlvbmFsXSBpbiBSZXNpemVPcHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICBy
YWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRpZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9o
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi42NmZmZjg2Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4K
KyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsK
K2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1Ymxp
YyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2
aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29s
IGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7
Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8v
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2Ni
ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisg
KiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2Ug
WworICAgICAgICBDb25kaXRpb25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjawor
ICAgIF0gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoaW4gRE9NU3RyaW5nIGVycm9yKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjY0NDAwZjMKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
CisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKwor
I2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7
CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9
CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBC
bG9iKikgPSAwOworfTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uMjBmZDg3ZgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9u
LgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7
CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAg
ICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAg
ICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gQmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRleCAxYmFlNmEwLi5jZDk5ZGNjIDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1h
cEltYWdlLmgiCiAjaW5jbHVkZSAiSW1hZ2UuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIK
KwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUx
LDcgQEAgc3RhdGljIHZvaWQgcmV0dXJuQmxvYk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1h
dGlvbikKICAgICBkZWxldGUgY2FsbGJhY2tJbmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRo
cmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFn
ZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6
T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxp
dHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlv
biwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9u
KQorYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVy
PiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5m
bywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNp
cmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlv
biBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3Jp
ZW50YXRpb25PcHRpb24pCiB7CiAgICAgSW1hZ2VSZXNpemVyVGhyZWFkKiBpbWFnZVJlc2l6ZXJU
aHJlYWQgPSBuZXcgSW1hZ2VSZXNpemVyVGhyZWFkKGNhbGxiYWNrSW5mbywgb3V0cHV0VHlwZSwg
ZGVzaXJlZEJvdW5kcywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0
aW9uKTsKIApAQCAtNjIsNyArNjMsNyBAQCBib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQo
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlcwogICAgIHJl
dHVybiBpbWFnZVJlc2l6ZXJUaHJlYWQtPm1fdGhyZWFkSUQ7CiB9CiAKLUltYWdlUmVzaXplclRo
cmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8q
IGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwg
SW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpP
cmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK0ltYWdlUmVzaXplclRocmVhZDo6
SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxi
YWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6
ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRp
b09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRp
b24gb3JpZW50YXRpb25PcHRpb24pCiAgICAgOiBtX3RocmVhZElEKDApCiAgICAgLCBtX2NhbGxi
YWNrSW5mbyhjYWxsYmFja0luZm8pCiAgICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBiL1dlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJUaHJlYWQuaAppbmRleCBhZTVhZGU1Li42MTAwYjU1IDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKKysrIGIvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclRocmVhZC5oCkBAIC0zNCw2ICszNCw3IEBACiAjaWYgRU5BQkxFKElNQUdFX1JF
U0laRVIpCiAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2luY2x1ZGUgIlJlc2l6
ZU9wdGlvbnMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MiwxMSArNDMsMTEgQEAg
Y2xhc3MgU2hhcmVkQnVmZmVyOwogCiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQgewogcHVibGlj
OgotICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURh
dGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6
T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0lt
YWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRh
dGlvbk9wdGlvbik7CisgICAgc3RhdGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1h
Z2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxp
dHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmll
bnRhdGlvbk9wdGlvbik7CiAgICAgfkltYWdlUmVzaXplclRocmVhZCgpOwogCiBwcml2YXRlOgot
ICAgIEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwg
QXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0lt
YWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24pOworICAgIEltYWdlUmVzaXplclRocmVhZChB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgUmVzaXplT3B0aW9u
czo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsK
ICAgICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFkU3RhcnQodm9pZCopOwogICAgIHZv
aWQqIGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OSw4ICs2MCw4IEBAIHByaXZhdGU6CiAg
ICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwogICAgIEludFNp
emUgbV9kZXNpcmVkQm91bmRzOwogICAgIGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBBc3lu
Y0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAg
ICBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOwor
ICAgIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwv
UmVzaXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjA3YmNiOQotLS0gL2Rldi9udWxsCisrKyBi
L1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAtMCwwICsxLDc1IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3Ry
aWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIlJlc2l6ZU9w
dGlvbnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9u
c0xvd2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25zVXBwZXJMaW1pdCA9
IDMyNzY3Oworc3RhdGljIGNvbnN0IGZsb2F0IGNvbXByZXNzaW9uTG93ZXJMaW1pdCA9IDAuMGY7
CitzdGF0aWMgY29uc3QgZmxvYXQgY29tcHJlc3Npb25VcHBlckxpbWl0ID0gMS4wZjsKKworc3Rh
dGljIGNvbnN0IGZsb2F0IGRlZmF1bHRDb21wcmVzc2lvbiA9IDAuODVmOworCitQYXNzUmVmUHRy
PFJlc2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVm
KG5ldyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9wdGlvbnMo
KQorICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgpCisgICAgLCBtX2NvbXByZXNzaW9u
TGV2ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJZ25vcmVBc3BlY3RSYXRpbykKKyAg
ICAsIG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50YXRpb24pCit7Cit9CisKK3ZvaWQg
UmVzaXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7IG1fd2lkdGggPSB3aWR0aCA+PSBk
aW1lbnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IHdp
ZHRoIDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRoKCkgeyByZXR1cm4gbV93aWR0aDsg
fQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChpbnQgaGVpZ2h0KSB7IG1faGVpZ2h0
ID0gaGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYmIGhlaWdodCA8PSBkaW1lbnNpb25z
VXBwZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25zOjpoZWlnaHQoKSB7
IHJldHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldENvbXByZXNzaW9u
TGV2ZWwoZmxvYXQgY29tcHJlc3Npb25MZXZlbCkgeyBtX2NvbXByZXNzaW9uTGV2ZWwgPSBjb21w
cmVzc2lvbkxldmVsID49IGNvbXByZXNzaW9uTG93ZXJMaW1pdCAmJiBjb21wcmVzc2lvbkxldmVs
IDw9IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA/IGNvbXByZXNzaW9uTGV2ZWwgOiBkZWZhdWx0Q29t
cHJlc3Npb247IH0KK2Zsb2F0IFJlc2l6ZU9wdGlvbnM6OmNvbXByZXNzaW9uTGV2ZWwoKSB7IHJl
dHVybiBtX2NvbXByZXNzaW9uTGV2ZWw7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRBc3Bl
Y3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8pIHsgbV9hc3BlY3RSYXRpb09w
dGlvbiA9IHByZXNlcnZlQXNwZWN0UmF0aW8gPyBQcmVzZXJ2ZUFzcGVjdFJhdGlvIDogSWdub3Jl
QXNwZWN0UmF0aW87IH0KK1Jlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIFJlc2l6ZU9w
dGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKCkgeyByZXR1cm4gbV9hc3BlY3RSYXRpb09wdGlvbjsg
fQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmll
bnRhdGlvbk9wdGlvbikgeyBtX29yaWVudGF0aW9uT3B0aW9uID0gb3JpZW50YXRpb25PcHRpb24g
PT0gImF1dG8iID8gQ29ycmVjdE9yaWVudGF0aW9uIDogSWdub3JlT3JpZW50YXRpb247IH0KK1Jl
c2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIFJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9u
T3B0aW9uKCkgeyByZXR1cm4gbV9vcmllbnRhdGlvbk9wdGlvbjsgfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmggYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9u
cy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzMGNjOTUKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCkBAIC0wLDAgKzEsODcgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
ICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
KyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aWZuZGVmIFJlc2l6ZU9wdGlvbnNfaAorI2RlZmluZSBSZXNpemVPcHRpb25zX2gKKworI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFN0
cmluZzsKKworY2xhc3MgUmVzaXplT3B0aW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFJlc2l6ZU9w
dGlvbnM+IHsKK3B1YmxpYzoKKyAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKKyAgICAgICAg
UHJlc2VydmVBc3BlY3RSYXRpbywKKyAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KKyAgICB9Owor
CisgICAgZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7CisgICAgICAgIENvcnJlY3RPcmllbnRhdGlv
biwKKyAgICAgICAgSWdub3JlT3JpZW50YXRpb24KKyAgICB9OworCisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlKCk7CisKKyAgICB2b2lkIHNldFdpZHRoKGludCB3
aWR0aCk7CisgICAgaW50IHdpZHRoKCk7CisKKyAgICB2b2lkIHNldEhlaWdodChpbnQgaGVpZ2h0
KTsKKyAgICBpbnQgaGVpZ2h0KCk7CisKKyAgICB2b2lkIHNldENvbXByZXNzaW9uTGV2ZWwoZmxv
YXQgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZmxvYXQgY29tcHJlc3Npb25MZXZlbCgpOworCisg
ICAgdm9pZCBzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8pOwor
ICAgIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uKCk7CisKKyAgICB2b2lkIHNl
dE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbik7CisgICAgT3JpZW50
YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24oKTsKKworcHJpdmF0ZToKKyAgICBSZXNpemVP
cHRpb25zKCk7CisKKyAgICAvLyBJZiBtX3dpZHRoIG9yIG1faGVpZ2h0ID09IDAsIHRoYXQgZGlt
ZW5zaW9uIHdpbGwgbm90IGNoYW5nZSBleHBsaWNpdGx5IGR1cmluZyByZXNpemluZy4KKyAgICBp
bnQgbV93aWR0aDsKKyAgICBpbnQgbV9oZWlnaHQ7CisgICAgZmxvYXQgbV9jb21wcmVzc2lvbkxl
dmVsOworICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgT3Jp
ZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8g
UmVzaXplT3B0aW9uc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59463</attachid>
            <date>2010-06-22 19:20:50 -0700</date>
            <delta_ts>2010-06-22 19:34:58 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>96918</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi5jMTJlZDFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlw
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRl
c3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2Fi
bGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1h
Z2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZzog
QWRkZWQuCisKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZDdlYTg1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMDYgQEAKK1Rlc3RzIHRoZSBhY2NlcHRh
YmxlIHR5cGVzIGZvciBhcmd1bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhv
ZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRp
b24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UodW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKG51bGwpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6
IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCB1bmRlZmluZWQpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvYm1wIiwgZW1wdHlGdW5jdGlvbikgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBOT1RfU1VQUE9SVEVEX0VSUjogRE9NIEV4Y2VwdGlvbiA5LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERP
TSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZp
bml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgInN0cmluZyIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG51bGwpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgb2JqZWN0
VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCA0Mikg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5m
aW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRD
SF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5kZWZpbmVkKSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7fSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBlbXB0eUZ1bmN0
aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB0cnVlKSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCA0MikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgSW5maW5pdHkp
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIC1JbmZpbml0eSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtk
dW1teVByb3BlcnR5Om51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQ
cm9wZXJ0eTp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5OnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5OkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJv
cGVydHk6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dW5k
ZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6e319KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDplbXB0eUZ1bmN0
aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnRydWV9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7d2lkdGg6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOiJz
dHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Om51bGx9KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDplbXB0eUZ1bmN0aW9u
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp0cnVlfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6
InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25M
ZXZlbDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2
ZWw6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0
aHJldyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnRydWV9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5fSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6LUluZmluaXR5fSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmlu
ZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpu
dWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86
e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtw
cmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOi1JbmZpbml0eX0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3Vt
ZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzU5NmI1NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJn
dW1lbnQtdHlwZXMuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHls
ZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
aW1hZ2UtaGFzLW5vLXNvdXJjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmNjhmNWMKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAg
QEAKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ugd2lsbCB0aHJvdyBhbiBJTlZB
TElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93bjogRXJyb3I6IElOVkFMSURfU1RB
VEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlz
YWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5kNjhmMWUzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291
cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8t
c291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8t
Y2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2Fk
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODFkMTNh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTEgQEAKK21haW4gZnJhbWUgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCitF
bnN1cmVzIHRoYXQgdGhlIGNhbGxiYWNrcyB3aWxsIG5vdCBleGVjdXRlIGFmdGVyIG9udW5sb2Fk
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBObyBjYWxsYmFja3MgY2Fs
bGVkIGFmdGVyIHVubG9hZAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJs
ZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjMxMGFhM2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFm
dGVyLXVubG9hZC5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1v
ay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uNWU4MmM2OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1h
Z2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMgZW5zdXJlcyB0aGF0IHdlYmtp
dEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2QuCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIDQyIGlzIG5vbi16ZXJvLgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJp
ZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1h
Z2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OTZm
OWM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2Fi
bGVkCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFRE
IEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2Uu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvVEVNUExBVEUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uZTNkZTNjNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L1RFTVBMQVRFLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICIt
Ly9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNv
bnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9IllPVVJfSlNfRklMRV9IRVJFIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5
cGVzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uNTUzNjc5MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCkBAIC0wLDAgKzEsMTQ2IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhlIGFj
Y2VwdGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50cyB0byB0aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2Ug
bWV0aG9kLiIpOworCitmdW5jdGlvbiBzaG91bGROb3RUaHJvdyhleHByZXNzaW9uKSB7CisgIHRy
eSB7CisgICAgZXZhbChleHByZXNzaW9uKTsKKyAgICB0ZXN0UGFzc2VkKGV4cHJlc3Npb24gKyAi
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLiIpOworICB9IGNhdGNoKGUpIHsKKyAgICB0ZXN0RmFp
bGVkKGV4cHJlc3Npb24gKyAiIHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJldyBleGNl
cHRpb24gIiArIGUpOworICB9Cit9CisKK2Z1bmN0aW9uIHRlc3QoZXhwcmVzc2lvbiwgZXhwcmVz
c2lvblNob3VsZFRocm93LCBleHBlY3RlZEV4Y2VwdGlvbikgeworICAgIGlmIChleHByZXNzaW9u
U2hvdWxkVGhyb3cpIHsKKyAgICAgICAgaWYgKGV4cGVjdGVkRXhjZXB0aW9uKQorICAgICAgICAg
ICAgc2hvdWxkVGhyb3coZXhwcmVzc2lvbiwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICInICsgZXhw
ZWN0ZWRFeGNlcHRpb24gKyAnIjsgfSkoKTsnKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAg
c2hvdWxkVGhyb3coZXhwcmVzc2lvbiwgJyhmdW5jdGlvbigpIHsgcmV0dXJuICJFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTciOyB9KSgpOycpOworICAgIH0gZWxzZSB7
CisgICAgICAgIHNob3VsZE5vdFRocm93KGV4cHJlc3Npb24pOworICAgIH0KK30KKwordmFyIGVt
cHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9OworCitmdW5jdGlvbiBPYmplY3RUaHJvd2luZ0V4
Y2VwdGlvbigpIHt9OworT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLnZhbHVlT2Yg
PSBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3ZhbHVlT2YgdGhyZXcgZXhjZXB0
aW9uJyk7Cit9CitPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbi5wcm90b3R5cGUuX19kZWZpbmVHZXR0
ZXJfXygid2lkdGgiLCBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRXJyb3IoJ3dpZHRoIGdl
dHRlciBleGNlcHRpb24nKTsKK30pOwordmFyIG9iamVjdFRocm93aW5nRXhjZXB0aW9uID0gbmV3
IE9iamVjdFRocm93aW5nRXhjZXB0aW9uKCk7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNy
YyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9yZWN0LmpwZyI7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1h
Z2UoKScsIHRydWUpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKHVuZGVmaW5lZCknLCB0cnVl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UobnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgdW5kZWZpbmVkKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHt9
KScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhy
b3dpbmdFeGNlcHRpb24pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1h
Z2UoImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pJywgdHJ1ZSwgJ0Vycm9yOiBOT1RfU1VQUE9S
VEVEX0VSUjogRE9NIEV4Y2VwdGlvbiA5Jyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCB0cnVlKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgNDIpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBJbmZp
bml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZp
bml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJp
bmciKScsIHRydWUpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgbnVsbCknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB7fSknLCB0cnVlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93
aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB0cnVlKScsIHRydWUpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpJywgdHJ1
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBJ
bmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIC1JbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKScsIHRydWUpOworCit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVu
ZGVmaW5lZCknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUsICdFcnJvcjogd2lkdGgg
Z2V0dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
dHJ1ZSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgSW5maW5pdHkpJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCAtSW5maW5pdHkpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCAic3RyaW5nIiknLCBmYWxzZSk7
CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1t
eVByb3BlcnR5Om51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KScsIGZh
bHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIGZh
bHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OjQy
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OkluZmluaXR5fSknLCBmYWxzZSk7Cit0
ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9w
ZXJ0eToic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp1bmRlZmluZWR9KScsIGZh
bHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnt9fSknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vy
cm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlv
bn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dHJ1ZX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3
aWR0aDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOiJzdHJpbmcifSknLCBmYWxz
ZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpu
dWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdo
dDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbicpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2hlaWdodDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6NDJ9KScsIGZhbHNlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Oi1JbmZpbml0
eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KScsIGZh
bHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScs
IHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNz
aW9uTGV2ZWw6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOjQyfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21w
cmVzc2lvbkxldmVsOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVz
ZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3By
ZXNlcnZlQXNwZWN0UmF0aW86dHJ1ZX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZpbml0eX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzotSW5maW5pdHl9KScsIGZhbHNl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0cmluZyJ9KScsIGZhbHNlKTsKKwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpu
dWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp7fX0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnRy
dWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmlu
aXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjoic3RyaW5nIn0pJywgZmFsc2UpOwor
Cit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNl
ZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi5hYWQ5NTc3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFz
LW5vLXNvdXJjZS5qcwpAQCAtMCwwICsxLDIwIEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBh
biBpbWFnZSB3aXRoIG5vIHNvdXJjZSB3aWxsIHRocm93IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4
Y2VwdGlvbi4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gbnVsbDsKKwordmFy
IGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9OworCitkb2N1bWVudC5ib2R5Lm9ubG9hZCA9
IGZ1bmN0aW9uKCkgeworCXRyeSB7CisJCWkud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBl
bXB0eUZ1bmN0aW9uKTsKKwkJdGVzdEZhaWxlZCgiU2hvdWxkIGhhdmUgdGhyb3duIGV4Y2VwdGlv
bi4gTm8gZXhjZXB0aW9uIHdhcyB0aHJvd24uLi4iKTsKKwkJZmluaXNoSlNUZXN0KCk7CisJfSBj
YXRjaChlKSB7CisJCXRlc3RQYXNzZWQoIkV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRocm93bjog
IiArIGUpOworCQlmaW5pc2hKU1Rlc3QoKTsKKwl9Cit9OworCit3aW5kb3cuanNUZXN0SXNBc3lu
YyA9IHRydWU7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2Ny
aXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyBiL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxi
YWNrLWFmdGVyLXVubG9hZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41
YTg2ZGYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLmpzCkBAIC0wLDAgKzEsMjUgQEAKK2Rlc2NyaXB0aW9uKCJFbnN1cmVzIHRoYXQgdGhlIGNh
bGxiYWNrcyB3aWxsIG5vdCBleGVjdXRlIGFmdGVyIG9udW5sb2FkLiIpOworCit2YXIgaSA9IG5l
dyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVfcmVjdC5qcGciOworCitkb2N1
bWVudC5ib2R5Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIHdpbmRvdy5zZXRUaW1lb3V0KCd0
ZXN0UGFzc2VkKCJObyBjYWxsYmFja3MgY2FsbGVkIGFmdGVyIHVubG9hZCIpOyBmaW5pc2hKU1Rl
c3QoKTsnLCAxMDApOworfQorCitkb2N1bWVudC5ib2R5Lm9udW5sb2FkID0gZnVuY3Rpb24oKSB7
CisgICAgaS53ZWJraXRHZXRJbWFnZSgKKyAgICAgICAgImltYWdlL3BuZyIsCisgICAgICAgIGZ1
bmN0aW9uKGJsb2IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgd2Via2l0
R2V0SW1hZ2Ugc3VjY2VzcyBjYWxsYmFjay4iKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgp
OworICAgICAgICB9LAorICAgICAgICBmdW5jdGlvbihlcnJvcikgeworICAgICAgICAgICAgdGVz
dEZhaWxlZCgiVW5leHBlY3RlZCB3ZWJraXRHZXRJbWFnZSBlcnJvciBjYWxsYmFjazogIiArIGVy
cm9yKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAgKTsKK30K
Kword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNl
ZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFn
ZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1ZWZmOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcwpAQCAtMCwwICsxLDEyIEBACitkZXNj
cmlwdGlvbigiVGhpcyBlbnN1cmVzIHRoYXQgd2Via2l0R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRk
ZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3Jj
ID0gIi4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworaS53ZWJraXRHZXRJbWFnZSA9IGZ1
bmN0aW9uKCkgeyByZXR1cm4gNDI7IH0KK3ZhciByZXN1bHQgPSBpLndlYmtpdEdldEltYWdlKCk7
CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZh
bHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2NjRmM2MKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAtMCwwICsxLDIwIEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29ycmVjdGx5LiIpOworCit2YXIgaSA9
IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVfcmVjdC5qcGciOworCit2
YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxvYikgeworICAgIHRlc3RGYWlsZWQoIlN1
Y2Nlc3MgY2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNhbGxlZCIpOworICAgIGZpbmlzaEpTVGVz
dCgpOworfTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBmdW5jdGlvbihlcnJvcikgeworICAgIHRl
c3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIHdpdGggb3V0cHV0
OiAiICsgZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKworLy8gT25seSB0aGUgZXJy
b3IgY2FsbGJhY2sgd2lsbCBjdXJyZW50bHkgbmV2ZXIgYmUgY2FsbGVkIGluIHRoaXMgcGF0Y2gs
IHNvIHRlc3QgdGhhdCBpdCB3b3JrcyBmb3Igbm93CitpLndlYmtpdEdldEltYWdlKCJpbWFnZS9q
cGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKKword2luZG93LmpzVGVzdElz
QXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjMDE4MzIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0
IHRoZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIEVycm9yIGNhbGxiYWNrIHdhcyBjb3JyZWN0bHkgY2FsbGVkIHdpdGggb3V0
cHV0OiBVbmV4cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6aW5nIGltYWdlCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxi
YWNrcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMyNjUwMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2Fs
bGJhY2tzLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy90ZXN0LWNhbGxi
YWNrcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9y
aWdpbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Vi
a2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uYzQ4ZWY4OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1Rlc3RzIHRoYXQgSW1hZ2Uud2Via2l0R2V0SW1hZ2Ug
Y2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpbWFnZSBvZiByZW1vdGUgb3JpZ2luLgorCisKK1BBU1M6
IFRocmV3IGV4Y2VwdGlvbjogRXJyb3I6IFNFQ1VSSVRZX0VSUjogRE9NIEV4Y2VwdGlvbiAxOAor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0
SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODNlZTkxCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJl
bW90ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDMxIEBACis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxvZyhtc2cpCit7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImxvZyIpLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKG1zZyArICJc
biIpKTsKK30KKwordmFyIGVtcHR5Q2FsbGJhY2sgPSBmdW5jdGlvbigpIHsgfTsKKword2luZG93
Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIHRy
eSB7CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0SW1hZ2UiKS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlDYWxsYmFjayk7CisgICAgICAgIGxvZygiRkFJTDog
RGlkIG5vdCB0aHJvdyBleGNlcHRpb24iKTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIGxv
ZyAoIlBBU1M6IFRocmV3IGV4Y2VwdGlvbjogIiArIGUpOworICAgIH0KKworICAgIGxheW91dFRl
c3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cD5UZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24g
YW4gaW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi48L3A+Cis8aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0i
aHR0cDovL2xvY2FsaG9zdDo4MDAwL21pc2MvcmVzb3VyY2VzL2hlbG1ldC5qcGciPgorPHByZSBp
ZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9yZXNvdXJjZXMvaGVsbWV0LmpwZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi43ZDQ4MmFhCkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9oZWxtZXQuanBnIGRpZmZlcgpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXgg
YWViNGI2OC4uMDFjMmE1ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysg
Yi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yNjIsNiArMjYyLDggQEAgU0VUKFdlYkNvcmVf
SURMX0ZJTEVTCiAgICAgaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTFZp
ZGVvRWxlbWVudC5pZGwKICAgICBodG1sL0ltYWdlRGF0YS5pZGwKKyAgICBodG1sL0ltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2suaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaWRsCiAgICAgaHRtbC9NZWRpYUVycm9yLmlkbAogICAgIGh0bWwvVGV4dE1ldHJpY3MuaWRs
CiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmlkbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA5OTNhMTIxLi43Y2IwNjhmIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1
IEBACisyMDEwLTA2LTIxICBTdGVybGluZyBTd2lnYXJ0ICA8c3N3aWdhcnRAZ29vZ2xlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAg
IEV4cG9zZWQgdGhlIGltYWdlIHJlc2l6aW5nIEFQSSB0byBKU0MsIGJ1dCBpdCBpcyBmdW5jdGlv
bmFsbHkgaW5jb21wbGV0ZSBhdCB0aGlzIHN0YWdlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NTQKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0
OiBBZGRlZCBmaWxlcy4KKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5jcHA6IERpdHRvLgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEdOVW1ha2VmaWxl
LmFtOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6IERpdHRvLgorICAgICAgICAqIFdl
YkNvcmUucHJpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnBybzogRGl0dG8uCisgICAgICAg
ICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6IERpdHRvLgorICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogRGl0dG8uCisgICAgICAgICogYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6
Y3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVh
dGVSZXNpemVPcHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OkpTSFRNTEltYWdlRWxlbWVudDo6
d2Via2l0R2V0SW1hZ2UpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ckpTLnBtOiBDaGFuZ2VkIHRvIGNvbnZlcnQgU3RyaW5ncyB0byBKU1N0cmluZ3MgY29ycmVjdGx5
IGluIGNhbGxiYWNrcy4KKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2FsbGJhY2suY3BwOiBDaGFuZ2VkIGJpbmRpbmdzLXRlc3QgZm9yIGFib3ZlLgorICAgICAgICAo
V2ViQ29yZTo6SlNUZXN0Q2FsbGJhY2s6OmNhbGxiYWNrV2l0aENsYXNzMlBhcmFtKToKKyAgICAg
ICAgKiBodG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5j
SW1hZ2VSZXNpemVyOjpzdGFydCk6IENsaWVudCBvZiB0aGlzIGNsYXNzIG5vIGxvbmdlciBkb2Vz
IGFueSByZWZjb3VudGluZworICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OkFz
eW5jSW1hZ2VSZXNpemVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVz
aXplcjo6bm90aWZ5RmluaXNoZWQpOiBSZWZhY3RvcmVkLgorICAgICAgICAoV2ViQ29yZTo6QXN5
bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUNvbXBsZXRlKTogQWRkZWQgY2FsbGJhY2suCisgICAgICAg
IChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IpOiBEaXR0by4KKyAgICAg
ICAgKiBodG1sL0FzeW5jSW1hZ2VSZXNpemVyLmg6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0lt
YWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvOjpDYWxsYmFja0luZm8pOiBOb3cgb25seSBzdG9yZXMg
bmVjZXNzZXRpZXMuCisgICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxJbWFnZUVsZW1lbnQ6OndlYmtpdEdldEltYWdlKTogSW1wbGVtZW50
YXRpb24gb2YgSlMgZnVuY3Rpb24uCisgICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50Lmg6
CisgICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrOjp+SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayk6CisgICAg
ICAgICogaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDogQWRkZWQuCisgICAgICAg
ICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDogQWRkZWQuCisgICAgICAgIChX
ZWJDb3JlOjpJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s6On5JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2spOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bDogQWRkZWQuCisgICAgICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydCk6IFJlZmFjdG9yZWQuCisgICAg
ICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZCk6ICBS
ZWZhY3RvcmVkLgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmg6IFJlZmFjdG9y
ZWQuCisgICAgICAgICogaHRtbC9SZXNpemVPcHRpb25zLmNwcDogQWRkZWQuCisgICAgICAgIChX
ZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXpl
T3B0aW9uczo6UmVzaXplT3B0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjp3aWR0aCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpzZXRIZWlnaHQpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVzaXplT3B0aW9uczo6aGVpZ2h0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldENvbXByZXNzaW9uTGV2ZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0
aW9uczo6Y29tcHJlc3Npb25MZXZlbCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRBc3BlY3RSYXRpb09wdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
Ojphc3BlY3RSYXRpb09wdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpz
ZXRPcmllbnRhdGlvbk9wdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpv
cmllbnRhdGlvbk9wdGlvbik6CisgICAgICAgICogaHRtbC9SZXNpemVPcHRpb25zLmg6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6KToKKwogMjAxMC0wNi0xOCAgWXVy
eSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2Vk
OiBRdCBidWlsZCBmaXguCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcCBi
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IDdhYzNlNTEuLmNlNWM4ZjMgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMuY3BwCkBAIC0xODAsNiArMTgwLDggQEAKICNpbmNsdWRlICJKU0lEQlJlcXVlc3QuY3Bw
IgogI2luY2x1ZGUgIkpTSURCU3VjY2Vzc0V2ZW50LmNwcCIKICNpbmNsdWRlICJKU0ltYWdlRGF0
YS5jcHAiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCIKKyNpbmNs
dWRlICJKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNJbmRl
eGVkRGF0YWJhc2VSZXF1ZXN0LmNwcCIKICNpbmNsdWRlICJKU0phdmFTY3JpcHRDYWxsRnJhbWUu
Y3BwIgogI2luY2x1ZGUgIkpTS2V5Ym9hcmRFdmVudC5jcHAiCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXgg
N2VjOTE1Zi4uMzE2ZGU1NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMjIzLDYgKzIyMyw4IEBAIERP
TV9DTEFTU0VTID0gXAogICAgIElEQlJlcXVlc3QgXAogICAgIElEQlN1Y2Nlc3NFdmVudCBcCiAg
ICAgSW1hZ2VEYXRhIFwKKyAgICBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgXAorICAgIElt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2sgXAogICAgIEluZGV4ZWREYXRhYmFzZVJlcXVlc3QgXAog
ICAgIEluamVjdGVkU2NyaXB0SG9zdCBcCiAgICAgSW5zcGVjdG9yQmFja2VuZCBcCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQppbmRl
eCBlNzg1NzQ5Li5lZGJhYzdhIDEwMDY0NAotLS0gYS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCisr
KyBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAgLTI3NSw2ICsyNzUsOCBAQCBJRExfQklORElO
R1MgKz0gXAogCVdlYkNvcmUvaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9o
dG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmlkbCBc
CisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKwlXZWJDb3Jl
L2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBcCiAJV2ViQ29yZS9odG1sL1Rl
eHRNZXRyaWNzLmlkbCBcCiAJV2ViQ29yZS9odG1sL1ZhbGlkaXR5U3RhdGUuaWRsIFwKIAlXZWJD
b3JlL2h0bWwvVm9pZENhbGxiYWNrLmlkbCBcCkBAIC00NTUsNiArNDU3LDcgQEAgd2ViY29yZV9z
b3VyY2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9t
LmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwK
IAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogCVdl
YkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmggXAogCVdlYkNvcmUv
YmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgXApAQCAtMTI2Nyw2ICsx
MjcwLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3Vy
Y2VEb2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9o
dG1sL0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VS
ZXNpemVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXApAQCAt
MTI3NCw2ICsxMjc5LDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvTWVk
aWFFcnJvci5oIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3Jl
L2h0bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3Bw
IFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJh
bmdlLmNwcCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5oIFwKIAlXZWJDb3JlL2h0bWwvVGV4
dE1ldHJpY3MuaCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1dlYkNvcmUv
V2ViQ29yZS5neXBpCmluZGV4IGYyY2RkNjcuLmY5ZWIyMTAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
V2ViQ29yZS5neXBpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xODcsNiArMTg3LDgg
QEAKICAgICAgICAgICAgICdodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsJywKICAgICAgICAgICAg
ICdodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0
YS5pZGwnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCcsCiAg
ICAgICAgICAgICAnaHRtbC9NZWRpYUVycm9yLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UZXh0
TWV0cmljcy5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGltZVJhbmdlcy5pZGwnLApAQCAtNTcx
LDYgKzU3Myw3IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50
Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVt
ZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxl
bWVudEN1c3RvbS5jcHAnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxl
bWVudEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxl
bWVudEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxl
bWVudEN1c3RvbS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVt
ZW50Q3VzdG9tLmNwcCcsCkBAIC0xNjU2LDYgKzE2NTksOCBAQAogICAgICAgICAgICAgJ2h0bWwv
SFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5j
cHAnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmgnLAorICAgICAgICAgICAgJ2h0bWwv
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgnLAogICAg
ICAgICAgICAgJ2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS5wcmkgYi9XZWJDb3JlL1dlYkNvcmUucHJpCmluZGV4IDI1Yzk1ZmYuLjRlNmVmZTcg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcmkKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBy
aQpAQCAtNDIyLDYgKzQyMiw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgaHRtbC9IVE1MVUxp
c3RFbGVtZW50LmlkbCBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbCBcCiAgICAgaHRt
bC9JbWFnZURhdGEuaWRsIFwKKyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRs
IFwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogICAgIGh0bWwv
TWVkaWFFcnJvci5pZGwgXAogICAgIGh0bWwvVGV4dE1ldHJpY3MuaWRsIFwKICAgICBodG1sL1Rp
bWVSYW5nZXMuaWRsIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3Jl
L1dlYkNvcmUucHJvCmluZGV4IDkyYTc3NWMuLjM1NTIzMjUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
V2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMzE1LDYgKzMxNSw3IEBA
IFNPVVJDRVMgKz0gXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5j
cHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAgXAog
ICAgIGJpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwKKyAgICBiaW5k
aW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9K
U0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPYmpl
Y3RFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT3B0aW9uc0NvbGxl
Y3Rpb25DdXN0b20uY3BwIFwKQEAgLTcwNCw2ICs3MDUsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBo
dG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgXAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuY3Bw
IFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmNwcCBcCisgICAgaHRtbC9SZXNpemVPcHRpb25z
LmNwcCBcCiAgICAgaHRtbC9TdGVwUmFuZ2UuY3BwIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUu
Y3BwIFwKICAgICBpbnNwZWN0b3IvQ29uc29sZU1lc3NhZ2UuY3BwIFwKQEAgLTE0MzYsOSArMTQz
OCwxMiBAQCBIRUFERVJTICs9IFwKICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaCBcCiAgICAg
aHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmggXAogICAgIGh0bWwvSW1hZ2VEYXRhLmggXAor
ICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIFwKKyAgICBodG1sL0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oIFwKICAgICBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oIFwK
ICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmggXAogICAgIGh0bWwvUHJlbG9hZFNjYW5uZXIuaCBc
CisgICAgaHRtbC9SZXNpemVPcHRpb25zLmggXAogICAgIGh0bWwvU3RlcFJhbmdlLmggXAogICAg
IGh0bWwvVGltZVJhbmdlcy5oIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaCBcCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagppbmRleCA2MjRkNDMzLi4wMTdlMzdiIDEwMDY0NAot
LS0gYS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1dlYkNvcmUv
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTM3NjYxLDYgKzM3NjYxLDE0IEBACiAJ
CQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJ
PEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxodG1sXEltYWdlUmVzaXplclRocmVhZC5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+
DQpAQCAtMzc2ODksNiArMzc2OTcsMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxl
DQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmNwcCINCisJCQkJPg0K
KwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXpl
T3B0aW9ucy5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZl
UGF0aD0iLi5caHRtbFxTdGVwUmFuZ2UuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTQw
MTI4LDcgKzQwMTQ0LDkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJPC9GaWxl
Pg0KIAkJCQk8RmlsZQ0KKwogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRN
TEVtYmVkRWxlbWVudEN1c3RvbS5jcHAiDQorCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmlndXJh
dGlvbg0KIAkJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIg0KQEAgLTQwMzg4LDYgKzQwNDA2LDU5IEBA
CiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCisK
KwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbWFnZUVsZW1lbnRDdXN0
b20uY3BwIg0KKwkJCQkJPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0i
RGVidWd8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0K
KwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4N
CisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJ
CQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVl
Ig0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29s
Ig0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25m
aWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfSW50ZXJuYWx8V2luMzIiDQorCQkJCQkJRXhj
bHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRp
b24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xX
aW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJ
PFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJ
PC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5h
bWU9IlJlbGVhc2VfQ2Fpcm98V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
DQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
DQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRG
cm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZD
Q0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQor
CQkJCTwvRmlsZT4NCisJCQkJPEZpbGUNCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3Nc
anNcSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCINCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbg0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggMDMwYjI5ZC4uMjI4YzA0MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTM1MDksNiArMzUwOSwxNSBAQAogCQlCMDE0OUU3RTExQTRCMjE1MDAxOTZB
N0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVz
aXplci5oICovOyB9OwogCQlCMDE0OUU3RjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVy
VGhyZWFkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwMTQ5RTdCMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovOyB9
OwogCQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QzExQTRC
MjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi87IH07CisJCUIwNEU2QkYyMTFD
NkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXpl
T3B0aW9ucy5oICovOyB9OworCQlCMDRFNkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMDE0QTA0QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRB
MDRBMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjA0RjU5RkYxMUM2
QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDRGNTlGRDExQzZBRkQ2MDAwQjVB
QzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLzsgfTsKKwkJQjBBNzE1MUIxMUND
MjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6
ZU9wdGlvbnMuY3BwICovOyB9OworCQlCMEE3MTVCNzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNDExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IH07CisJCUIwQTcxNUI5MTFEMDQzMUUwMDNDMzM3MyAv
KiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTVCQTExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3
MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyB9OwogCQlCMjAxMTEwNzBB
Qjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNT
VkdBRWxlbWVudC5jcHAgKi87IH07CiAJCUIyMDExMTA4MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NW
R0FFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5oICovOyB9OwogCQlC
MjExMjdBNjBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIxMTI3QTUwQjMxODY3NzAw
MDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAqLzsgfTsKQEAgLTg4NDUsNiArODg1NCwx
NyBAQAogCQlCMDE0OUU3QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXN5bmNJbWFnZVJlc2l6ZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIElt
YWdlUmVzaXplclRocmVhZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlC
MDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIw
MTRBMDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEU2QkYxMTFDNkYwRTkwMDIx
NDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJlc2l6ZU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RjU5RkQx
MUM2QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMg
LyogUmVzaXplT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSZXNpemVPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
NzkxMUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI0MTFE
MDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBK
U1NWR0FFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMTEyN0E1MEIzMTg2Nzcw
MDA5QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1NWR1BPRFR5cGVXcmFwcGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xMzY5OSw2ICsxMzcxOSwxMCBAQAogCQkJCUE3Nzk3OTEzMEQ2QjlEMEMwMDM4NTFC
OSAvKiBJbWFnZURhdGEuY3BwICovLAogCQkJCUE3Nzk3OTE0MEQ2QjlEMEMwMDM4NTFCOSAvKiBJ
bWFnZURhdGEuaCAqLywKIAkJCQlBNzc5NzkxNTBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRh
LmlkbCAqLywKKwkJCQlCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTc5MTFEMDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmlkbCAqLywKKwkJCQlCMDE0QTA0QzExQUIxRUEwMDAxOTZBN0Ig
LyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1N0ExMUQwMUIy
MTAwM0MzMzczIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgKi8sCiAJCQkJQjAx
NDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgKi8sCiAJCQkJ
QjAxNDlFN0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovLAogCQkJ
CUE0NTZGQTI0MTFBRDRBODMwMDIwQjQyMCAvKiBMYWJlbHNOb2RlTGlzdC5jcHAgKi8sCkBAIC0x
MzcwOSw2ICsxMzczMyw4IEBACiAJCQkJRTQ0NjEzOUMwQ0Q2MzMxMDAwRkFEQTc1IC8qIE1lZGlh
RXJyb3IuaWRsICovLAogCQkJCUU0RDRBQkUwMEQ3NTQyRjAwMEY5Njg2OSAvKiBQcmVsb2FkU2Nh
bm5lci5jcHAgKi8sCiAJCQkJRTRENEFCRTEwRDc1NDJGMTAwRjk2ODY5IC8qIFByZWxvYWRTY2Fu
bmVyLmggKi8sCisJCQkJQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMu
Y3BwICovLAorCQkJCUIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmgg
Ki8sCiAJCQkJQTVBRkIzNEQxMTUxNTFBNzAwQjA0NUNCIC8qIFN0ZXBSYW5nZS5jcHAgKi8sCiAJ
CQkJQTVBRkIzNEUxMTUxNTFBNzAwQjA0NUNCIC8qIFN0ZXBSYW5nZS5oICovLAogCQkJCUJDRUY0
NUU4MEU2ODc3NjcwMDFDMTI4NyAvKiBUZXh0TWV0cmljcy5oICovLApAQCAtMTM5NDgsNiArMTM5
NzQsMTAgQEAKIAkJCQlFNDQ2MTQwRjBDRDY4MjY5MDBGQURBNzUgLyogSlNIVE1MVmlkZW9FbGVt
ZW50LmggKi8sCiAJCQkJQTc3OTc5MjQwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmNw
cCAqLywKIAkJCQlBNzc5NzkyNTBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuaCAqLywK
KwkJCQlCMEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmNwcCAqLywKKwkJCQlCMEE3MTVCNDExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpT
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLywKKwkJCQlCMEE3MTVCNjExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLywKIAkJCQk0OUVF
Q0VGODEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQxNkFycmF5LmNwcCAqLywKIAkJCQk0OUVFQ0VG
OTEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQxNkFycmF5LmggKi8sCiAJCQkJNDlFRUNFRjYxMDUw
NzBDNDAwMDk5RkFCIC8qIEpTSW50MzJBcnJheS5jcHAgKi8sCkBAIC0xNTUxMyw2ICsxNTU0Myw3
IEBACiAJCQkJQkMyRUQ3QTQwQzZDMEYzNjAwOTIwQkZGIC8qIEpTSFRNTEZyYW1lRWxlbWVudEN1
c3RvbS5jcHAgKi8sCiAJCQkJQkNENDFBQkEwQzA2MERFODAwQzBFNDQ2IC8qIEpTSFRNTEZyYW1l
U2V0RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMyRUQ2NEYwQzZCQzQ4QzAwOTIwQkZGIC8q
IEpTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwICovLAorCQkJCUIwNEY1OUZEMTFDNkFGRDYw
MDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQzQzODc3
MEU4ODZDQzcwMDUzM0RENSAvKiBKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJ
CUJDMzA1Q0EzMEMwNzgxQkIwMENEMjBGMCAvKiBKU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNw
cCAqLywKIAkJCQk0NDhBRDI3QTBBNDgxMzc5MDAyM0QxNzkgLyogSlNIVE1MT3B0aW9uc0NvbGxl
Y3Rpb25DdXN0b20uY3BwICovLApAQCAtMTgxMTksNiArMTgxNTAsOCBAQAogCQkJCTFBODIwRDky
MEExM0VCQTYwMEFGODQzQyAvKiBJbWFnZURvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkw
ODk1ODI1NjBFODU3QTdFMDBGODJDODMgLyogSW1hZ2VMb2FkZXIuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDN0Y0NEE4MEI5RTMyNEUwMEE5RDA4MSAvKiBJbWFnZU9ic2VydmVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCMDRFNkJGNjExQzdGMDdFMDAyMTQyODMgLyogSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjUxMUM3RjA3OTAwMjE0MjgzIC8q
IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjAxNDlF
ODAxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQjI3NTM1NzEwQjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlU291cmNlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk0QjM0ODA5NDBFRUY1MEQ0MDBBQzFCNDEgLyogSW1hZ2VTb3VyY2VDRy5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0xODM1MSw2ICsxODM4NCw4IEBACiAJCQkJQzU2QzkxQTcxMTlEOTE4
NzAwREU0Q0Q5IC8qIEpTSURCU3VjY2Vzc0V2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzZD
NDlGNDBEN0RCQTA1MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0cnVjdG9yLmggaW4gSGVhZGVycyAq
LywKIAkJCQlBNzc5NzkyOTBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIwQTcxNUI4MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwQTcxNUJBMTFEMDQzMUUwMDNDMzM3
MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QzVGNEY0MTExMTkzMDZDMDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJN0EwRTc2REIxMEJGMDU5ODAwQTAyNzZFIC8qIEpTSW5qZWN0ZWRT
Y3JpcHRIb3N0LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUYwNjBDRTBGNUVFQjJCMDBBMDdFQUMg
LyogSlNJbnNwZWN0b3JCYWNrZW5kLmggaW4gSGVhZGVycyAqLywKQEAgLTE4ODg1LDYgKzE4OTIw
LDcgQEAKIAkJCQlBODlDQ0M1MzBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3Bh
bkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzMzA5RTBBMDk5RTY0OTIwMDU2RTU4MSAv
KiBSZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCMTZDMkYw
OTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkYy
MTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk5
MzRGNzE0MjBENUE2RjQ0MDAwMThENjkgLyogUmVzb3VyY2VFcnJvci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTM0RjcxM0MwRDVBNkYxOTAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MTRDNzY3OTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5k
bGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjA2NTQsNiArMjA2OTAsNyBAQAogCQkJCUJDNDkxOEM4
MEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUJDMkVENjUwMEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50Q3Vz
dG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk3MEExQ0REMkQwMEI0MkIyNSAvKiBK
U0hUTUxJbWFnZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjA0RjU5RkYxMUM2QUZE
NjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlBODBFN0U5ODBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MSW5wdXRFbGVtZW50LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUJDQzQzODc4MEU4ODZDQzcwMDUzM0RENSAvKiBKU0hUTUxJbnB1
dEVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFFMkFBOTkwQTFDREQyRDAw
QjQyQjI1IC8qIEpTSFRNTElzSW5kZXhFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjA3
MTIsNiArMjA3NDksOCBAQAogCQkJCUJDNkM0OUYzMEQ3REJBMDUwMEZGQTU1OCAvKiBKU0ltYWdl
Q29uc3RydWN0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc3OTc5MjgwRDZCOUU2NDAwMzg1
MUI5IC8qIEpTSW1hZ2VEYXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3RDAzMThFMEU5MzU0
MDMwMEUyNEFDRCAvKiBKU0ltYWdlRGF0YUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlC
MEE3MTVCNzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUIwQTcxNUI5MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNUY0RjQxMDEx
OTMwNkMwMDBGREZBREQgLyogSlNJbmRleGVkRGF0YWJhc2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdBMEU3NkRBMTBCRjA1OTgwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0SG9z
dC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QTBFNzZENTEwQkYwNTA3MDBBMDI3NkUgLyogSlNJ
bmplY3RlZFNjcmlwdEhvc3RDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMTI1OSw2ICsy
MTI5OCw3IEBACiAJCQkJQTg5Q0NDNTIwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0
aFNwYW5Db21tYW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzMzA5RTA5MDk5RTY0OTIwMDU2
RTU4MSAvKiBSZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
Q0IxNkMyRTA5NzlDM0JEMDA0Njc3NDEgLyogUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlCMEE3MTUxQjExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk5MzRGNzEzRTBENUE2RjI4MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2Uu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2NTAwQ0U5MjM0RTAwN0VGM0NEIC8qIFJlc291
cmNlRXJyb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk1MTRDNzY3ODBDRTkyM0ExMDA3RUYz
Q0QgLyogUmVzb3VyY2VIYW5kbGUuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgYi9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uODUyNWMwZQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcApAQCAtMCwwICsxLDE2NCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJK
U0hUTUxJbWFnZUVsZW1lbnQuaCIKKworI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUg
IkhUTUxJbWFnZUVsZW1lbnQuaCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1
ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNGdW5jdGlvbi5oPgor
I2luY2x1ZGUgPHJ1bnRpbWUvSlNTdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+Cisj
aW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK3Vz
aW5nIG5hbWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBhc3NS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIGlmICghdmFsdWUuaW5oZXJpdHMoJkpTRnVuY3Rp
b246OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBUWVBFX01JU01BVENI
X0VSUik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTT2JqZWN0KiBvYmplY3Qg
PSBhc09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrOjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0
cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSB2YWx1ZSkKK3sKKyAgICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZp
bmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1Vu
ZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghdmFsdWUuaW5o
ZXJpdHMoJkpTRnVuY3Rpb246OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVj
LCBUWVBFX01JU01BVENIX0VSUik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpT
T2JqZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3Rh
dGljIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlUmVzaXplT3B0aW9ucyhFeGVjU3Rh
dGUqIGV4ZWMsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJl
c2l6ZU9wdGlvbnMgPSBSZXNpemVPcHRpb25zOjpjcmVhdGUoKTsKKworICAgIC8vIEFyZ3VtZW50
IGlzIG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFs
bG93ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAgICAgICAgLy8g
VXNlIGRlZmF1bHQgb3B0aW9ucy4KKyAgICAgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFz
ZSgpOworICAgIH0KKyAgICBKU09iamVjdCogb2JqZWN0ID0gdmFsdWUudG9PYmplY3QoZXhlYyk7
CisKKyAgICBKU1ZhbHVlIHdpZHRoID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVj
LCAid2lkdGgiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm4gMDsKKyAgICBpZiAoIXdpZHRoLmlzVW5kZWZpbmVkKCkpIHsKKwkJcmVzaXplT3B0aW9ucy0+
c2V0V2lkdGgod2lkdGgudG9JbnQzMihleGVjKSk7CisJCWlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKwkJCXJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgaGVpZ2h0ID0gb2JqZWN0LT5n
ZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiaGVpZ2h0IikpOworICAgIGlmIChleGVjLT5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCFoZWlnaHQuaXNVbmRlZmlu
ZWQoKSkgeworCQlyZXNpemVPcHRpb25zLT5zZXRIZWlnaHQoaGVpZ2h0LnRvSW50MzIoZXhlYykp
OworCQlpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisJCQlyZXR1cm4gMDsKKyAgICB9CisKKyAg
ICBKU1ZhbHVlIGNvbXByZXNzaW9uTGV2ZWwgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVy
KGV4ZWMsICJjb21wcmVzc2lvbkxldmVsIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCFjb21wcmVzc2lvbkxldmVsLmlzVW5kZWZp
bmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0Q29tcHJlc3Npb25MZXZlbChjb21w
cmVzc2lvbkxldmVsLnRvTnVtYmVyKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBwcmVz
ZXJ2ZUFzcGVjdFJhdGlvID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAicHJl
c2VydmVBc3BlY3RSYXRpbyIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgIHJldHVybiAwOworICAgIGlmICghcHJlc2VydmVBc3BlY3RSYXRpby5pc1VuZGVmaW5lZCgp
KSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldEFzcGVjdFJhdGlvT3B0aW9uKHByZXNlcnZl
QXNwZWN0UmF0aW8udG9Cb29sZWFuKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBvcmll
bnRhdGlvbiA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgIm9yaWVudGF0aW9u
IikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgaWYgKCFvcmllbnRhdGlvbi5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlv
bnMtPnNldE9yaWVudGF0aW9uT3B0aW9uKHVzdHJpbmdUb1N0cmluZyhvcmllbnRhdGlvbi50b1N0
cmluZyhleGVjKSkpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzaXplT3B0aW9ucy5yZWxlYXNl
KCk7Cit9CisKK0pTVmFsdWUgSlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZShFeGVj
U3RhdGUqIGV4ZWMpCit7CisgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CisKKyAgICBjb25zdCBT
dHJpbmcmIG1pbWVUeXBlID0gdXN0cmluZ1RvU3RyaW5nKGV4ZWMtPmFyZ3VtZW50KDApLnRvU3Ry
aW5nKGV4ZWMpKTsKKworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1
Y2Nlc3NDYWxsYmFjayA9IGNyZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhleGVjLCBz
dGF0aWNfY2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3Qo
KSksIGV4ZWMtPmFyZ3VtZW50KDEpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChzdWNjZXNzQ2FsbGJhY2sp
OworCisgICAgUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2sg
PSBjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKGV4ZWMsIHN0YXRpY19jYXN0PEpTRE9N
R2xvYmFsT2JqZWN0Kj4oZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwgZXhlYy0+YXJndW1l
bnQoMikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpz
VW5kZWZpbmVkKCk7CisKKyAgICBSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9
IGNyZWF0ZVJlc2l6ZU9wdGlvbnMoZXhlYywgZXhlYy0+YXJndW1lbnQoMykpOworICAgIGlmIChl
eGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAg
QVNTRVJUKHJlc2l6ZU9wdGlvbnMpOworCisgICAgSFRNTEltYWdlRWxlbWVudCogaW1wID0gc3Rh
dGljX2Nhc3Q8SFRNTEltYWdlRWxlbWVudCo+KGltcGwoKSk7CisgICAgaW1wLT53ZWJraXRHZXRJ
bWFnZShtaW1lVHlwZSwgc3VjY2Vzc0NhbGxiYWNrLnJlbGVhc2UoKSwgZXJyb3JDYWxsYmFjay5y
ZWxlYXNlKCksIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpLCBlYyk7CisgICAgc2V0RE9NRXhjZXB0
aW9uKGV4ZWMsIGVjKTsKKyAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA0ZTJlOTExLi40NTIx
ZGYwIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAg
LTIxNzksNyArMjE3OSwxMSBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAK
ICAgICAgICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7CiAgICAgICAgICAgICAg
ICAgbXkgJHBhcmFtTmFtZSA9ICRwYXJhbS0+bmFtZTsKLSAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsICR7cGFyYW1OYW1lfSkpO1xu
Iik7CisgICAgICAgICAgICAgICAgaWYgKCRwYXJhbS0+dHlwZSBlcSAiRE9NU3RyaW5nIikgewor
ICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZChq
c1N0cmluZyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFw
cGVuZCh0b0pTKGV4ZWMsICR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiAgICBi
b29sIHJhaXNlZEV4Y2VwdGlvbiA9IGZhbHNlO1xuIik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAgYi9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAKaW5kZXggZGY0MDNjNi4uMDQz
YTZlZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2FsbGJhY2suY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dENhbGxiYWNrLmNwcApAQCAtODksNyArODksNyBAQCBib29sIEpTVGVzdENhbGxiYWNrOjpjYWxs
YmFja1dpdGhDbGFzczJQYXJhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBDbAog
ICAgIEV4ZWNTdGF0ZSogZXhlYyA9IGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpOwogICAgIE1h
cmtlZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CiAgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCBjbGFz
czJQYXJhbSkpOwotICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgc3RyQXJnKSk7CisgICAgYXJn
cy5hcHBlbmQoanNTdHJpbmcoZXhlYywgc3RyQXJnKSk7CiAKICAgICBib29sIHJhaXNlZEV4Y2Vw
dGlvbiA9IGZhbHNlOwogICAgIG1fZGF0YS0+aW52b2tlQ2FsbGJhY2soYXJncywgJnJhaXNlZEV4
Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3Bw
IGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAppbmRleCA0YmI3NGM5Li45Zjhh
NTY0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCisrKyBi
L1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKQEAgLTM0LDI4ICszNCwzMiBAQAog
I2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCiAKICNpbmNsdWRlICJDYWNoZWRJbWFnZS5o
IgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJJbWFnZVJlc2l6ZXJUaHJlYWQu
aCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgi
CisKICNpbmNsdWRlIDx1dGlsaXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NSZWZQ
dHI8QXN5bmNJbWFnZVJlc2l6ZXI+IEFzeW5jSW1hZ2VSZXNpemVyOjpjcmVhdGUoQ2FjaGVkSW1h
Z2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJv
dW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxi
YWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwg
T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCit2b2lkIEFzeW5jSW1hZ2VSZXNp
emVyOjpzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0
LCBDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwgUGFzc1Jl
ZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRy
PFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBBc3luY0ltYWdlUmVzaXplcihjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgZGVzaXJlZEJvdW5k
cywgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCBxdWFsaXR5LCBhc3BlY3RSYXRpb09w
dGlvbiwgb3JpZW50YXRpb25PcHRpb24pKTsKKyAgICAgbmV3IEFzeW5jSW1hZ2VSZXNpemVyKHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIGNhY2hlZEltYWdlLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2Fs
bGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpOwogfQogCi1Bc3luY0ltYWdlUmVz
aXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIoQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRU
eXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vz
c0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3Bl
Y3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24gb3JpZW50
YXRpb25PcHRpb24pCitBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNh
Y2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBy
ZXNpemVPcHRpb25zKQogICAgIDogbV9jYWNoZWRJbWFnZShjYWNoZWRJbWFnZSkKKyAgICAsIG1f
c2NyaXB0RXhlY3V0aW9uQ29udGV4dChzY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICwgbV9v
dXRwdXRUeXBlKG91dHB1dFR5cGUpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2Fs
bGJhY2spCiAgICAgLCBtX2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKLSAgICAsIG1fb3V0
cHV0VHlwZShvdXRwdXRUeXBlKQotICAgICwgbV9kZXNpcmVkQm91bmRzKGRlc2lyZWRCb3VuZHMp
Ci0gICAgLCBtX3F1YWxpdHkocXVhbGl0eSkKLSAgICAsIG1fYXNwZWN0UmF0aW9PcHRpb24oYXNw
ZWN0UmF0aW9PcHRpb24pCi0gICAgLCBtX29yaWVudGF0aW9uT3B0aW9uKG9yaWVudGF0aW9uT3B0
aW9uKQorICAgICwgbV9yZXNpemVPcHRpb25zKHJlc2l6ZU9wdGlvbnMpCiB7Ci0gICAgQVNTRVJU
KG1fc3VjY2Vzc0NhbGxiYWNrLmlzT2JqZWN0KCkpOworICAgIC8vIG1fY2FsbGJhY2sgY29udHJv
bHMgdGhlIGxpZmV0aW1lIG9mIEFzeW5jSW1hZ2VSZXNpemVyLgorICAgIG1fY2FsbGJhY2tJbmZv
ID0gbmV3IENhbGxiYWNrSW5mbyh0aGlzKTsKKyAgICBBU1NFUlQobV9zdWNjZXNzQ2FsbGJhY2su
Z2V0KCkpOwogICAgIG1fY2FjaGVkSW1hZ2UtPmFkZENsaWVudCh0aGlzKTsKIH0KIApAQCAtNjcs
MTEgKzcxLDIxIEBAIHZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hl
ZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKIHsKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBp
bWFnZURhdGEgPSBjYWNoZWRSZXNvdXJjZS0+ZGF0YSgpLT5jb3B5KCk7CiAgICAgY2FjaGVkUmVz
b3VyY2UtPnJlbW92ZUNsaWVudCh0aGlzKTsKLSAgICBDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5m
byA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7Ci0gICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6
OnN0YXJ0KGltYWdlRGF0YSwgY2FsbGJhY2tJbmZvLCBtX291dHB1dFR5cGUsIG1fZGVzaXJlZEJv
dW5kcywgbV9xdWFsaXR5LCBtX2FzcGVjdFJhdGlvT3B0aW9uLCBtX29yaWVudGF0aW9uT3B0aW9u
KSkKKyAgICBpZiAoIUltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoaW1hZ2VEYXRhLCBtX2NhbGxi
YWNrSW5mbywgbV9vdXRwdXRUeXBlLCBJbnRTaXplKG1fcmVzaXplT3B0aW9ucy0+d2lkdGgoKSwg
bV9yZXNpemVPcHRpb25zLT5oZWlnaHQoKSksIG1fcmVzaXplT3B0aW9ucy0+Y29tcHJlc3Npb25M
ZXZlbCgpLCBtX3Jlc2l6ZU9wdGlvbnMtPmFzcGVjdFJhdGlvT3B0aW9uKCksIG1fcmVzaXplT3B0
aW9ucy0+b3JpZW50YXRpb25PcHRpb24oKSkpCiAgICAgICAgIHJlc2l6ZUVycm9yKCk7CiB9CiAK
K3ZvaWQgQXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPiBibG9i
KQoreworICAgIG1fc3VjY2Vzc0NhbGxiYWNrLT5oYW5kbGVFdmVudChtX3NjcmlwdEV4ZWN1dGlv
bkNvbnRleHQsIGJsb2IuZ2V0KCkpOworfQorCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNp
emVFcnJvcigpCit7CisgICAgaWYgKG1fZXJyb3JDYWxsYmFjay5nZXQoKSkKKyAgICAgICAgbV9l
cnJvckNhbGxiYWNrLT5oYW5kbGVFdmVudChtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQsICJVbmV4
cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6aW5nIGltYWdlIik7Cit9CisKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmggYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFn
ZVJlc2l6ZXIuaAppbmRleCAzZWVlZWFkLi5jNDIyODQyIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuaApAQCAtNDAsNyArNDAsMTEgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ2Fj
aGVkSW1hZ2U7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrOwogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkOworY2xhc3Mg
UmVzaXplT3B0aW9uczsKKwogCiAvLyBBc3luY0ltYWdlUmVzaXplciB3YWl0cyBmb3IgdGhlIENh
Y2hlZEltYWdlIHRoYXQgaXMgcGFzc2VkIGluIHRvIGxvYWQgY29tcGxldGVseSwKIC8vIHRoZW4g
c3RhcnRzIGFuIEltYWdlUmVzaXplclRocmVhZCB0byByZXNpemUgdGhlIGltYWdlLiBPbmNlIGNy
ZWF0ZWQsIEltYWdlUmVzaXplclRocmVhZApAQCAtNDgsNTYgKzUyLDQyIEBAIGNsYXNzIEltYWdl
UmVzaXplclRocmVhZDsKIC8vIG9jY3VyLCBib3RoIG9iamVjdHMgYXJlIGRlc3Ryb3llZC4gSWYg
dGhlIGRvY3VtZW50IGlzIGRlc3Ryb3llZCBkdXJpbmcgcmVzaXppbmcsCiAvLyBBc3luY0ltYWdl
UmVzaXplciB3aWxsIHJlY2VpdmUgYSBub3RpZmljYXRpb24gYW5kIHN1YnNlcXVlbnRseSBibG9j
ayB0aGUgY2FsbGJhY2tzIGZyb20KIC8vIG9jY3VycmluZy4KLWNsYXNzIEFzeW5jSW1hZ2VSZXNp
emVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50LCBwdWJsaWMgUmVmQ291bnRlZDxBc3lu
Y0ltYWdlUmVzaXplcj4geworY2xhc3MgQXN5bmNJbWFnZVJlc2l6ZXIgOiBwdWJsaWMgQ2FjaGVk
UmVzb3VyY2VDbGllbnQgewogcHVibGljOgogICAgIHN0cnVjdCBDYWxsYmFja0luZm8gewotICAg
ICAgICBDYWxsYmFja0luZm8oUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFn
ZVJlc2l6ZXIpCisgICAgICAgIENhbGxiYWNrSW5mbyhQYXNzT3duUHRyPEFzeW5jSW1hZ2VSZXNp
emVyPiBhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAgICAgIDogYXN5bmNJbWFnZVJlc2l6ZXIo
YXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICAsIGJsb2IoMCkKICAgICAgICAgewogICAg
ICAgICB9CiAKLSAgICAgICAgUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVz
aXplcjsKKyAgICAgICAgT3duUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXpl
cjsKICAgICAgICAgUmVmUHRyPEJsb2I+IGJsb2I7CiAgICAgfTsKLSAgICAKKwogICAgIGVudW0g
T3V0cHV0VHlwZSB7CiAgICAgICAgIEpQRUcsCiAgICAgICAgIFBORwogICAgIH07CiAKLSAgICBl
bnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKLSAgICAgICAgUHJlc2VydmVBc3BlY3RSYXRpbywKLSAg
ICAgICAgSWdub3JlQXNwZWN0UmF0aW8KLSAgICB9OwotCi0gICAgZW51bSBPcmllbnRhdGlvbk9w
dGlvbiB7Ci0gICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKLSAgICAgICAgSWdub3JlT3JpZW50
YXRpb24KLSAgICB9OwotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+
IGNyZWF0ZShDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywg
U2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBm
bG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24pOworICAg
IHN0YXRpYyB2b2lkIHN0YXJ0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBDYWNoZWRJbWFnZSos
IE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFz
c1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRp
b25zPik7CiAgICAgfkFzeW5jSW1hZ2VSZXNpemVyKCk7CiAKLSAgICAvLyBGSVhNRTogSW5zZXJ0
IG92ZXJyaWRlIGZ1bmN0aW9uIGZvciBub3RpZmljYXRpb24gb2YgZG9jdW1lbnQgZGVzdHJ1Y3Rp
b24gKGNoYW5nZSBtX2NhbGxiYWNrc09rKS4KLQotICAgIHZvaWQgcmVzaXplQ29tcGxldGUoUmVm
UHRyPEJsb2I+KSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9Ci0gICAgdm9p
ZCByZXNpemVFcnJvcigpIHsgLyogRklYTUU6IE5vdCB5ZXQgaW1wbGVtZW50ZWQuICovIH0KKyAg
ICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPik7CisgICAgdm9pZCByZXNpemVFcnJv
cigpOwogCiBwcml2YXRlOgotICAgIEFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiwgT3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJh
Y2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlv
T3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbik7CisgICAgQXN5bmNJbWFnZVJlc2l6ZXIoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+KTsKICAgICB2aXJ0dWFsIHZvaWQg
bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsKIAogICAgIENhY2hlZEltYWdlKiBtX2Nh
Y2hlZEltYWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3VjY2Vzc0NhbGxiYWNrOwotICAgIFNjcmlw
dFZhbHVlIG1fZXJyb3JDYWxsYmFjazsKLSAgICAKLSAgICAvLyBQYXJhbWV0ZXJzIHRvIHBhc3Mg
aW50byBJbWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2FsbGJhY2tJbmZvKiBtX2NhbGxiYWNrSW5m
bzsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7
CisKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKLSAgICBJbnRTaXplIG1fZGVzaXJlZEJv
dW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3Bl
Y3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9u
OworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IG1fc3VjY2Vzc0NhbGxi
YWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJh
Y2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IG1fcmVzaXplT3B0aW9uczsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcAppbmRleCA1ZDU5
MjNkLi4yZmY1MWY2IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5j
cHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCkBAIC0zMiw5ICszMiwx
NyBAQAogI2luY2x1ZGUgIkhUTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVu
dC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkltYWdlLmgiCisjaW5jbHVk
ZSAiSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIgogI2luY2x1ZGUgIlJlbmRlckltYWdlLmgiCisjaW5jbHVkZSAiUmVz
aXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNjcmlwdEV2ZW50TGlzdGVuZXIuaCIKIAorI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCisjZW5k
aWYKKwogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDUx
LDQgKzQ1OSwzNCBAQCB2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRv
Y3VtZW50KCkKICAgICBIVE1MRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsK
IH0KIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCit2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6
OndlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJl
c2l6ZU9wdGlvbnMsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmICghc3JjKCkuaXNWYWxp
ZCgpKSB7CisgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICAvLyBUaGUgdGFpbnRzQ2FudmFzIG1ldGhvZCBhbHNvIGFsbG93cyBkYXRh
IFVSTHMuCisgICAgaWYgKGRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPnRhaW50c0NhbnZh
cyhzcmMoKSkpIHsKKyAgICAgICAgZWMgPSBTRUNVUklUWV9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlOwor
ICAgIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2UvanBlZyIpCisgICAgICAgIG91dHB1dFR5cGUgPSBB
c3luY0ltYWdlUmVzaXplcjo6SlBFRzsKKyAgICBlbHNlIGlmIChtaW1lVHlwZSA9PSAiaW1hZ2Uv
cG5nIikKKyAgICAgICAgb3V0cHV0VHlwZSA9IEFzeW5jSW1hZ2VSZXNpemVyOjpQTkc7CisgICAg
ZWxzZSB7CisgICAgICAgIGVjID0gTk9UX1NVUFBPUlRFRF9FUlI7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQoc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpLCBtX2ltYWdlTG9hZGVyLmltYWdlKCksIG91dHB1dFR5cGUsIHN1Y2Nlc3NDYWxsYmFj
aywgZXJyb3JDYWxsYmFjaywgcmVzaXplT3B0aW9ucyk7Cit9CisKKyNlbmRpZiAvLyBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKwogfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuaCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKaW5kZXggNjJkMzE1Yy4u
NDExYmJiMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAorKysg
Yi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCkBAIC0zMSw2ICszMSw5IEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKK2NsYXNzIEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s7Citj
bGFzcyBSZXNpemVPcHRpb25zOwogCiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50IDogcHVibGljIEhU
TUxFbGVtZW50IHsKICAgICBmcmllbmQgY2xhc3MgSFRNTEZvcm1FbGVtZW50OwpAQCAtODksNiAr
OTIsMTIgQEAgcHVibGljOgogCiAgICAgYm9vbCBoYXZlRmlyZWRMb2FkRXZlbnQoKSBjb25zdCB7
IHJldHVybiBtX2ltYWdlTG9hZGVyLmhhdmVGaXJlZExvYWRFdmVudCgpOyB9CiAKKyNpZiBFTkFC
TEUoSU1BR0VfUkVTSVpFUikKKworICAgIHZvaWQgd2Via2l0R2V0SW1hZ2UoU3RyaW5nIG1pbWVU
eXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4sIEV4
Y2VwdGlvbkNvZGUmKTsKKworI2VuZGlmCisKIHByb3RlY3RlZDoKICAgICBIVE1MSW1hZ2VFbGVt
ZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIEhUTUxGb3JtRWxlbWVudCogPSAw
KTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsIGIvV2Vi
Q29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCmluZGV4IDBmYzcyNzEuLmFlM2M1ZTQgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAorKysgYi9XZWJDb3Jl
L2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKQEAgLTQ4LDYgKzQ4LDE0IEBAIG1vZHVsZSBodG1s
IHsKICAgICAgICAgLy8gT2JqZWN0aXZlLUMgZXh0ZW5zaW9uOgogICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGFsdERpc3BsYXlTdHJpbmc7CiAgICAgICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBVUkwgYWJzb2x1dGVJbWFnZVVSTDsKKyNlbHNlCisKKyNpZiBkZWZpbmVkKEVOQUJM
RV9JTUFHRV9SRVNJWkVSKSAmJiBFTkFCTEVfSU1BR0VfUkVTSVpFUgorICAgICAgICAvLyBGdW5j
dGlvbnMKKyAgICAgICAgW0N1c3RvbV0gdm9pZCB3ZWJraXRHZXRJbWFnZShpbiBET01TdHJpbmcg
bWltZVR5cGUsIGluIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ss
IFtPcHRpb25hbF0gaW4gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayBlcnJvckNhbGxiYWNrLCBb
T3B0aW9uYWxdIGluIFJlc2l6ZU9wdGlvbnMgb3B0aW9ucykKKyAgICAgICAgICAgIHJhaXNlcyhE
T01FeGNlcHRpb24pOworI2VuZGlmCisKICNlbmRpZgogICAgIH07CiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggYi9XZWJDb3JlL2h0bWwvSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjY2ZmZmODYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
ICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2tfaAorI2RlZmluZSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKworI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OworY2xhc3Mg
U3RyaW5nOworCitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIDogcHVibGljIFJlZkNv
dW50ZWQ8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4geworcHVibGljOgorICAgIHZpcnR1YWwg
fkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxl
RXZlbnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYpID0gMDsKK307CisK
K30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5pZGwgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmZjY2JmOAotLS0g
L2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlk
bApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJl
CisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhl
IG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
CisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAq
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworbW9kdWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFjZSBbCisgICAg
ICAgIENvbmRpdGlvbmFsPUlNQUdFX1JFU0laRVIsCisgICAgICAgIENhbGxiYWNrCisgICAgXSBJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIHsKKyAgICAgICAgYm9vbGVhbiBoYW5kbGVFdmVudChp
biBET01TdHJpbmcgZXJyb3IpOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwv
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjQ0
MDBmMwotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaApAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2tfaAorI2RlZmluZSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2tfaAorCisjaWYgRU5B
QkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEJsb2I7CitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250
ZXh0OworY2xhc3MgU3RyaW5nOworCitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sg
OiBwdWJsaWMgUmVmQ291bnRlZDxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHsKK3B1Ymxp
YzoKKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soKSB7IH0KKyAgICB2
aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEJsb2IqKSA9
IDA7Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlm
IC8vIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4yMGZkODdmCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
CisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBp
bnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBD
YWxsYmFjaworICAgIF0gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHsKKyAgICAgICAgYm9v
bGVhbiBoYW5kbGVFdmVudChpbiBCbG9iIGJsb2IpOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJUaHJlYWQuY3BwCmluZGV4IDFiYWU2YTAuLjY3YWZjNzggMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJUaHJlYWQuY3BwCkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSAiQml0bWFwSW1hZ2Uu
aCIKICNpbmNsdWRlICJJbWFnZS5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5j
bHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsNyArNTEsNyBAQCBz
dGF0aWMgdm9pZCByZXR1cm5CbG9iT3JFcnJvcih2b2lkKiBjYWxsYmFja0luZm9ybWF0aW9uKQog
ICAgIGRlbGV0ZSBjYWxsYmFja0luZm87CiB9CiAKLWJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpz
dGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXpl
cjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRU
eXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5
bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCitib29s
IEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdl
RGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3Vu
ZHMsIGRvdWJsZSBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3Bl
Y3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRp
b25PcHRpb24pCiB7CiAgICAgSW1hZ2VSZXNpemVyVGhyZWFkKiBpbWFnZVJlc2l6ZXJUaHJlYWQg
PSBuZXcgSW1hZ2VSZXNpemVyVGhyZWFkKGNhbGxiYWNrSW5mbywgb3V0cHV0VHlwZSwgZGVzaXJl
ZEJvdW5kcywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKTsK
IApAQCAtNjIsNyArNjMsNyBAQCBib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1Jl
ZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlcwogICAgIHJldHVybiBp
bWFnZVJlc2l6ZXJUaHJlYWQtPm1fdGhyZWFkSUQ7CiB9CiAKLUltYWdlUmVzaXplclRocmVhZDo6
SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxi
YWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6
ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0
UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRh
dGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK0ltYWdlUmVzaXplclRocmVhZDo6SW1hZ2VS
ZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5m
bywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNp
cmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRp
b24gYXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9y
aWVudGF0aW9uT3B0aW9uKQogICAgIDogbV90aHJlYWRJRCgwKQogICAgICwgbV9jYWxsYmFja0lu
Zm8oY2FsbGJhY2tJbmZvKQogICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5cGUpCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmggYi9XZWJDb3JlL2h0bWwvSW1h
Z2VSZXNpemVyVGhyZWFkLmgKaW5kZXggYWU1YWRlNS4uOTU2MjE2MSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJUaHJlYWQuaApAQCAtMzQsNiArMzQsNyBAQAogI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVS
KQogCiAjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRp
b25zLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMTEgKzQzLDExIEBAIGNsYXNz
IFNoYXJlZEJ1ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkIHsKIHB1YmxpYzoKLSAg
ICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJl
c2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25P
cHRpb24pOworICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBp
bWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVz
aXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwg
UmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0
aW9uT3B0aW9uKTsKICAgICB+SW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAKIHByaXZhdGU6Ci0gICAg
SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBx
dWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbik7CisgICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5j
SW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlw
ZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6
QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAg
ICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFkU3RhcnQodm9pZCopOwogICAgIHZvaWQq
IGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OCw5ICs1OSw5IEBAIHByaXZhdGU6CiAgICAg
UmVmUHRyPEJpdG1hcEltYWdlPiBtX2ltYWdlOwogICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRw
dXRUeXBlIG1fb3V0cHV0VHlwZTsKICAgICBJbnRTaXplIG1fZGVzaXJlZEJvdW5kczsKLSAgICBm
bG9hdCBtX3F1YWxpdHk7Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9u
IG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9u
T3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAgZG91YmxlIG1fcXVhbGl0eTsKKyAgICBS
ZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOworICAg
IFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvUmVz
aXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmU2NDk2NAotLS0gL2Rldi9udWxsCisrKyBiL1dl
YkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAtMCwwICsxLDc1IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1
dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK
KyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIlJlc2l6ZU9wdGlv
bnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9uc0xv
d2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25zVXBwZXJMaW1pdCA9IDMy
NzY3Oworc3RhdGljIGNvbnN0IGRvdWJsZSBjb21wcmVzc2lvbkxvd2VyTGltaXQgPSAwLjA7Citz
dGF0aWMgY29uc3QgZG91YmxlIGNvbXByZXNzaW9uVXBwZXJMaW1pdCA9IDEuMDsKKworc3RhdGlj
IGNvbnN0IGRvdWJsZSBkZWZhdWx0Q29tcHJlc3Npb24gPSAwLjg1OworCitQYXNzUmVmUHRyPFJl
c2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5l
dyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9wdGlvbnMoKQor
ICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgpCisgICAgLCBtX2NvbXByZXNzaW9uTGV2
ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJZ25vcmVBc3BlY3RSYXRpbykKKyAgICAs
IG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50YXRpb24pCit7Cit9CisKK3ZvaWQgUmVz
aXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7IG1fd2lkdGggPSB3aWR0aCA+PSBkaW1l
bnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IHdpZHRo
IDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRoKCkgeyByZXR1cm4gbV93aWR0aDsgfQor
Cit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChpbnQgaGVpZ2h0KSB7IG1faGVpZ2h0ID0g
aGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYmIGhlaWdodCA8PSBkaW1lbnNpb25zVXBw
ZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25zOjpoZWlnaHQoKSB7IHJl
dHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldENvbXByZXNzaW9uTGV2
ZWwoZG91YmxlIGNvbXByZXNzaW9uTGV2ZWwpIHsgbV9jb21wcmVzc2lvbkxldmVsID0gY29tcHJl
c3Npb25MZXZlbCA+PSBjb21wcmVzc2lvbkxvd2VyTGltaXQgJiYgY29tcHJlc3Npb25MZXZlbCA8
PSBjb21wcmVzc2lvblVwcGVyTGltaXQgPyBjb21wcmVzc2lvbkxldmVsIDogZGVmYXVsdENvbXBy
ZXNzaW9uOyB9Citkb3VibGUgUmVzaXplT3B0aW9uczo6Y29tcHJlc3Npb25MZXZlbCgpIHsgcmV0
dXJuIG1fY29tcHJlc3Npb25MZXZlbDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEFzcGVj
dFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbykgeyBtX2FzcGVjdFJhdGlvT3B0
aW9uID0gcHJlc2VydmVBc3BlY3RSYXRpbyA/IFByZXNlcnZlQXNwZWN0UmF0aW8gOiBJZ25vcmVB
c3BlY3RSYXRpbzsgfQorUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gUmVzaXplT3B0
aW9uczo6YXNwZWN0UmF0aW9PcHRpb24oKSB7IHJldHVybiBtX2FzcGVjdFJhdGlvT3B0aW9uOyB9
CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0T3JpZW50YXRpb25PcHRpb24oU3RyaW5nIG9yaWVu
dGF0aW9uT3B0aW9uKSB7IG1fb3JpZW50YXRpb25PcHRpb24gPSBvcmllbnRhdGlvbk9wdGlvbiA9
PSAiYXV0byIgPyBDb3JyZWN0T3JpZW50YXRpb24gOiBJZ25vcmVPcmllbnRhdGlvbjsgfQorUmVz
aXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gUmVzaXplT3B0aW9uczo6b3JpZW50YXRpb25P
cHRpb24oKSB7IHJldHVybiBtX29yaWVudGF0aW9uT3B0aW9uOyB9CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25z
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTg3YjFkMQotLS0gL2Rldi9u
dWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgKQEAgLTAsMCArMSw4NyBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgUmVzaXplT3B0aW9uc19oCisjZGVmaW5lIFJlc2l6ZU9wdGlvbnNfaAorCisjaWYgRU5B
QkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU3Ry
aW5nOworCitjbGFzcyBSZXNpemVPcHRpb25zIDogcHVibGljIFJlZkNvdW50ZWQ8UmVzaXplT3B0
aW9ucz4geworcHVibGljOgorICAgIGVudW0gQXNwZWN0UmF0aW9PcHRpb24geworICAgICAgICBQ
cmVzZXJ2ZUFzcGVjdFJhdGlvLAorICAgICAgICBJZ25vcmVBc3BlY3RSYXRpbworICAgIH07CisK
KyAgICBlbnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKKyAgICAgICAgQ29ycmVjdE9yaWVudGF0aW9u
LAorICAgICAgICBJZ25vcmVPcmllbnRhdGlvbgorICAgIH07CisKKyAgICBzdGF0aWMgUGFzc1Jl
ZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGUoKTsKKworICAgIHZvaWQgc2V0V2lkdGgoaW50IHdp
ZHRoKTsKKyAgICBpbnQgd2lkdGgoKTsKKworICAgIHZvaWQgc2V0SGVpZ2h0KGludCBoZWlnaHQp
OworICAgIGludCBoZWlnaHQoKTsKKworICAgIHZvaWQgc2V0Q29tcHJlc3Npb25MZXZlbChkb3Vi
bGUgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZG91YmxlIGNvbXByZXNzaW9uTGV2ZWwoKTsKKwor
ICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2ZUFzcGVjdFJhdGlvKTsK
KyAgICBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbigpOworCisgICAgdm9pZCBz
ZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50YXRpb25PcHRpb24pOworICAgIE9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKCk7CisKK3ByaXZhdGU6CisgICAgUmVzaXpl
T3B0aW9ucygpOworCisgICAgLy8gSWYgbV93aWR0aCBvciBtX2hlaWdodCA9PSAwLCB0aGF0IGRp
bWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGljaXRseSBkdXJpbmcgcmVzaXppbmcuCisgICAg
aW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0OworICAgIGRvdWJsZSBtX2NvbXByZXNzaW9u
TGV2ZWw7CisgICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKKyAgICBP
cmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworfTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAv
LyBSZXNpemVPcHRpb25zX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59465</attachid>
            <date>2010-06-22 19:34:58 -0700</date>
            <delta_ts>2010-06-22 19:55:28 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>96571</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi45MWRmNjgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2lt
YWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVu
bG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanM6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorCiAyMDEwLTA2LTE4ICBK
dXN0aW4gR2FyY2lhICA8anVzdGluLmdhcmNpYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgT2phbiBWYWZhaS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGQ3ZWE4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTA2IEBACitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRz
IHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VS
UjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5k
ZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5j
dGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTk9UX1NVUFBP
UlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1
bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRo
IGdldHRlciBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmci
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVu
Y3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVl
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVj
dFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2hlaWdodDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhy
b3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0
eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJl
c2VydmVBc3BlY3RSYXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5p
dHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVk
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9h
cmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmM1OTZiNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44ZjY4ZjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0IGFuIGltYWdl
IHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFeGNlcHRpb24gd2FzIGNv
cnJlY3RseSB0aHJvd246IEVycm9yOiBJTlZBTElEX1NUQVRFX0VSUjogRE9NIEV4Y2VwdGlvbiAx
MQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY4ZjFl
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkCkBAIC0w
LDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJzY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDgxZDEzYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACittYWluIGZy
YW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFj
a3Mgd2lsbCBub3QgZXhlY3V0ZSBhZnRlciBvbnVubG9hZC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgTm8gY2FsbGJhY2tzIGNhbGxlZCBhZnRlciB1bmxvYWQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxv
YWQuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTBh
YTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdl
YmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlODJjNjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJp
ZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyA0MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk2ZjljNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3Zl
cnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0
LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUz
ZGUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1MzY3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsx
LDE0NiBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1
bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24g
c2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lv
bik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91
bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQor
CitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0
ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAg
IGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Np
b24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0p
KCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24s
ICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJv
dyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24o
KSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRo
cm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhy
b3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24o
KSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsK
K3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bigpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVf
cmVjdC5qcGciOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikn
LCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7CisK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
biknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1
bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24g
OScpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5
RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkp
JywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbiknLCB0cnVlLCAnRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0
MiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dHJ1ZX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTotSW5m
aW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNl
KTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxs
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2Jq
ZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNl
cHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3dpZHRoOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dp
ZHRoOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3
aWR0aDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5k
ZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dHJ1ZX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDotSW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsK
KwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5l
ZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0aW9u
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5pdHl9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KScsIGZhbHNlKTsKKword2luZG93LmpzVGVzdElzQXN5bmMg
PSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1z
b3VyY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFkOTU3NwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMKQEAgLTAsMCAr
MSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ug
d2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uIik7CisKK3ZhciBpID0g
bmV3IEltYWdlKCk7CitpLnNyYyA9IG51bGw7CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rp
b24oKSB7fTsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgewor
CQlpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RG
YWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2Vk
KCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0
KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWE4NmRmMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDI1IEBA
CitkZXNjcmlwdGlvbigiRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFja3Mgd2lsbCBub3QgZXhlY3V0
ZSBhZnRlciBvbnVubG9hZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gIi4u
L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5j
dGlvbigpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dCgndGVzdFBhc3NlZCgiTm8gY2FsbGJhY2tz
IGNhbGxlZCBhZnRlciB1bmxvYWQiKTsgZmluaXNoSlNUZXN0KCk7JywgMTAwKTsKK30KKworZG9j
dW1lbnQuYm9keS5vbnVubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGkud2Via2l0R2V0SW1hZ2Uo
CisgICAgICAgICJpbWFnZS9wbmciLAorICAgICAgICBmdW5jdGlvbihibG9iKSB7CisgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIHN1Y2Nlc3MgY2FsbGJh
Y2suIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSwKKyAgICAgICAg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgd2Vi
a2l0R2V0SW1hZ2UgZXJyb3IgY2FsbGJhY2s6ICIgKyBlcnJvcik7CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICk7Cit9CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li41NWVmZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMiBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9y
ZWN0LmpwZyI7CisKK2kud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9
Cit2YXIgcmVzdWx0ID0gaS53ZWJraXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8ocmVz
dWx0KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5hNjY0ZjNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFj
a3MuanMKQEAgLTAsMCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNhbGxi
YWNrcyB3b3JrIGNvcnJlY3RseS4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0g
Ii4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9IGZ1
bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNh
bGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsKKyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxsYmFj
ayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogIiArIGVycm9yKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVu
dGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5z
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44YzAxODMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29y
cmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxs
YmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3
aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1j
YWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5jMjY1MDJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0OGVm
ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24gYW4g
aW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246IEVycm9y
OiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRt
bC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uMmUxYzU1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBs
b2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBlbmRDaGls
ZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBlbXB0eUNh
bGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhjZXB0aW9u
Iik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBleGNlcHRp
b246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25l
KCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJbWFnZS53
ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmln
aW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC8u
Li8uLi9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIiAv
PgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGFlYjRi
NjguLjAxYzJhNWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYyLDYgKzI2Miw4IEBAIFNFVChXZWJDb3JlX0lETF9G
SUxFUwogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuaWRsCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAg
IGh0bWwvVmFsaWRpdHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkzYTEyMS4uN2NiMDY4ZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2NSBAQAor
MjAxMC0wNi0yMSAgU3RlcmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBFeHBv
c2VkIHRoZSBpbWFnZSByZXNpemluZyBBUEkgdG8gSlNDLCBidXQgaXQgaXMgZnVuY3Rpb25hbGx5
IGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRk
ZWQgZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOiBEaXR0by4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOiBEaXR0by4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS5neXBpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3Jl
LnByaTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcm86IERpdHRvLgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUmVz
aXplT3B0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtp
dEdldEltYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bTogQ2hhbmdlZCB0byBjb252ZXJ0IFN0cmluZ3MgdG8gSlNTdHJpbmdzIGNvcnJlY3RseSBpbiBj
YWxsYmFja3MuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrLmNwcDogQ2hhbmdlZCBiaW5kaW5ncy10ZXN0IGZvciBhYm92ZS4KKyAgICAgICAgKFdlYkNv
cmU6OkpTVGVzdENhbGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJhbSk6CisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdl
UmVzaXplcjo6c3RhcnQpOiBDbGllbnQgb2YgdGhpcyBjbGFzcyBubyBsb25nZXIgZG9lcyBhbnkg
cmVmY291bnRpbmcKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0lt
YWdlUmVzaXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
Om5vdGlmeUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1h
Z2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2Vi
Q29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJl
c2l6ZXI6OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vz
c2V0aWVzLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9u
IG9mIEpTIGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjazo6fkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAq
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw6IEFkZGVkLgorICAgICAgICAqIGh0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjp+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw6IEFk
ZGVkLgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6c3RhcnQpOiBSZWZhY3RvcmVkLgorICAgICAgICAo
V2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQpOiAgUmVmYWN0
b3JlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oOiBSZWZhY3RvcmVkLgor
ICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
V2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6d2lkdGgpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlc2l6ZU9wdGlvbnM6OmhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRDb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6
OmNvbXByZXNzaW9uTGV2ZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
QXNwZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6YXNw
ZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0T3Jp
ZW50YXRpb25PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6b3JpZW50
YXRpb25PcHRpb24pOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKIDIwMTAtMDYtMTggIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZDogUXQg
YnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA3YWMzZTUxLi5jZTVjOGYzIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcApAQCAtMTgwLDYgKzE4MCw4IEBACiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmNwcCIKICNp
bmNsdWRlICJKU0lEQlN1Y2Nlc3NFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNJbWFnZURhdGEuY3Bw
IgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiCisjaW5jbHVkZSAi
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTSW5kZXhlZERh
dGFiYXNlUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcCIK
ICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuY3BwIgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDdlYzkx
NWYuLjMxNmRlNTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIyMyw2ICsyMjMsOCBAQCBET01fQ0xB
U1NFUyA9IFwKICAgICBJREJSZXF1ZXN0IFwKICAgICBJREJTdWNjZXNzRXZlbnQgXAogICAgIElt
YWdlRGF0YSBcCisgICAgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIFwKKyAgICBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrIFwKICAgICBJbmRleGVkRGF0YWJhc2VSZXF1ZXN0IFwKICAgICBJ
bmplY3RlZFNjcmlwdEhvc3QgXAogICAgIEluc3BlY3RvckJhY2tlbmQgXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggZTc4
NTc0OS4uZWRiYWM3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNzUsNiArMjc1LDggQEAgSURMX0JJTkRJTkdTICs9
IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5pZGwgXAorCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogCVdlYkNvcmUvaHRtbC9WYWxpZGl0eVN0YXRlLmlkbCBcCiAJV2ViQ29yZS9o
dG1sL1ZvaWRDYWxsYmFjay5pZGwgXApAQCAtNDU1LDYgKzQ1Nyw3IEBAIHdlYmNvcmVfc291cmNl
cyArPSBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3Bw
IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAg
XAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAor
CVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5oIFwKIAlXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKQEAgLTEyNjcsNiArMTI3MCw4
IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxWaWV3U291cmNlRG9j
dW1lbnQuaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5jcHAgXAogCVdlYkNvcmUvaHRtbC9J
bWFnZURhdGEuaCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBc
CisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIFwKIAlXZWJDb3Jl
L2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXpl
clRocmVhZC5oIFwKIAlXZWJDb3JlL2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwIFwKQEAgLTEyNzQs
NiArMTI3OSw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL01lZGlhRXJy
b3IuaCBcCiAJV2ViQ29yZS9odG1sL1ByZWxvYWRTY2FubmVyLmNwcCBcCiAJV2ViQ29yZS9odG1s
L1ByZWxvYWRTY2FubmVyLmggXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcCBcCisJ
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5j
cHAgXAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuaCBcCiAJV2ViQ29yZS9odG1sL1RleHRNZXRy
aWNzLmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQppbmRleCBmMmNkZDY3Li5mOWViMjEwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTg3LDYgKzE4Nyw4IEBACiAg
ICAgICAgICAgICAnaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuaWRs
JywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwnLAor
ICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwnLAogICAgICAg
ICAgICAgJ2h0bWwvTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGV4dE1ldHJp
Y3MuaWRsJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuaWRsJywKQEAgLTU3MSw2ICs1
NzMsNyBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1
c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRD
dXN0b20uY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1
c3RvbS5jcHAnLApAQCAtMTY1Niw2ICsxNjU5LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxW
aWV3U291cmNlRG9jdW1lbnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuY3BwJywK
ICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQu
Y3BwJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5oJywKICAgICAgICAg
ICAgICdodG1sL0xhYmVsc05vZGVMaXN0LmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNv
cmUucHJpIGIvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCAyNWM5NWZmLi40ZTZlZmU3IDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAg
LTQyMiw2ICs0MjIsOCBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwgXAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSW1h
Z2VEYXRhLmlkbCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisg
ICAgaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICBodG1sL01lZGlh
RXJyb3IuaWRsIFwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbCBcCiAgICAgaHRtbC9UaW1lUmFu
Z2VzLmlkbCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJD
b3JlLnBybwppbmRleCA5MmE3NzVjLi4zNTUyMzI1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUucHJvCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KQEAgLTMxNSw2ICszMTUsNyBAQCBTT1VS
Q0VTICs9IFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBi
aW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisgICAgYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1M
SW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxl
bWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCBcCkBAIC03MDQsNiArNzA1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgaHRtbC9J
bWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmNwcCBcCiAg
ICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5jcHAg
XAogICAgIGh0bWwvU3RlcFJhbmdlLmNwcCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmNwcCBc
CiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcCBcCkBAIC0xNDM2LDkgKzE0MzgsMTIg
QEAgSEVBREVSUyArPSBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggXAogICAgIGh0bWwv
SFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKICAgICBodG1sL0ltYWdlRGF0YS5oIFwKKyAgICBo
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmggXAorICAg
IGh0bWwvUmVzaXplT3B0aW9ucy5oIFwKICAgICBodG1sL1N0ZXBSYW5nZS5oIFwKICAgICBodG1s
L1RpbWVSYW5nZXMuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4uMDE3ZTM3YiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2ICszNzY2MSwxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxl
DQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
Y3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAg
LTM3Njg5LDYgKzM3Njk3LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5jcHAiDQorCQkJCT4NCisJCQk8
L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6ZU9wdGlv
bnMuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGh0bWxcU3RlcFJhbmdlLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC00MDEyOCw3
ICs0MDE0NCw5IEBACiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJ
CQkJPEZpbGUNCisKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxFbWJl
ZEVsZW1lbnRDdXN0b20uY3BwIg0KKwogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24N
CiAJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCkBAIC00MDM4OCw2ICs0MDQwNiw1OSBAQAogCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCisJCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNw
cCINCisJCQkJCT4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
fFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJ
CQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJ
TmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJ
CQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJh
dGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0ludGVybmFsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIi
DQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29s
DQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJS
ZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJ
CQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJ
CQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0
aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8
L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpT
SFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAiDQogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAz
MGIyOWQuLjIyOGMwNDAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0zNTA5LDYgKzM1MDksMTUgQEAKIAkJQjAxNDlFN0UxMUE0QjIxNTAwMTk2QTdCIC8q
IEFzeW5jSW1hZ2VSZXNpemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMDE0OUU3QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIu
aCAqLzsgfTsKIAkJQjAxNDlFN0YxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVh
ZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0
OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLzsgfTsKIAkJ
QjAxNDlFODAxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0MxMUE0QjIxNTAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovOyB9OworCQlCMDRFNkJGMjExQzZGMEU5
MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlv
bnMuaCAqLzsgfTsKKwkJQjA0RTZCRjUxMUM3RjA3OTAwMjE0MjgzIC8qIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QTEx
QUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIwNEY1OUZGMTFDNkFGRDYw
MDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8q
IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi87IH07CisJCUIwQTcxNTFCMTFDQzI0RUUw
MDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRp
b25zLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjgxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oICovOyB9OworCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QkExMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKIAkJQjIwMTExMDcwQUI3NzQw
NTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVs
ZW1lbnQuY3BwICovOyB9OwogCQlCMjAxMTEwODBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIw
MTExMDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLzsgfTsKIAkJQjIxMTI3
QTYwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMTEyN0E1MEIzMTg2NzcwMDA5QkU1
MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi87IH07CkBAIC04ODQ1LDYgKzg4NTQsMTcgQEAK
IAkJQjAxNDlFN0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzeW5jSW1hZ2VSZXNpemVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdCMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1h
Z2VSZXNpemVyVGhyZWFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjAxNDlF
N0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJUaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDE0QTA0
QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMg
LyogUmVzaXplT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNp
emVPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEY1OUZEMTFDNkFG
RDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJl
c2l6ZU9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVz
aXplT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTc5MTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1N0ExMUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNDExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdB
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjExMjdBNTBCMzE4Njc3MDAwOUJF
NTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNTVkdQT0RUeXBlV3JhcHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTM2OTksNiArMTM3MTksMTAgQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyog
SW1hZ2VEYXRhLmNwcCAqLywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VE
YXRhLmggKi8sCiAJCQkJQTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5pZGwg
Ki8sCisJCQkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCAqLywKKwkJCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIElt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTdBMTFEMDFCMjEwMDND
MzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCUIwMTQ5RTdC
MTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5
RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2
RkEyNDExQUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLApAQCAtMTM3MDks
NiArMTM3MzMsOCBAQAogCQkJCUU0NDYxMzlDMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9y
LmlkbCAqLywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIu
Y3BwICovLAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5o
ICovLAorCQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAq
LywKKwkJCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovLAog
CQkJCUE1QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuY3BwICovLAogCQkJCUE1
QUZCMzRFMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAqLywKIAkJCQlCQ0VGNDVFODBF
Njg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAgLTEzOTQ4LDYgKzEzOTc0LDEw
IEBACiAJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTSFRNTFZpZGVvRWxlbWVudC5o
ICovLAogCQkJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5jcHAgKi8s
CiAJCQkJQTc3OTc5MjUwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggKi8sCisJCQkJ
QjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5j
cHAgKi8sCisJCQkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzE1QjYxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCiAJCQkJNDlFRUNFRjgx
MDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5jcHAgKi8sCiAJCQkJNDlFRUNFRjkxMDUw
NzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5oICovLAogCQkJCTQ5RUVDRUY2MTA1MDcwQzQw
MDA5OUZBQiAvKiBKU0ludDMyQXJyYXkuY3BwICovLApAQCAtMTU1MTMsNiArMTU1NDMsNyBAQAog
CQkJCUJDMkVEN0E0MEM2QzBGMzYwMDkyMEJGRiAvKiBKU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20u
Y3BwICovLAogCQkJCUJDRDQxQUJBMEMwNjBERTgwMEMwRTQ0NiAvKiBKU0hUTUxGcmFtZVNldEVs
ZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMkVENjRGMEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hU
TUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVB
QzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0M0Mzg3NzBFODg2
Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzMw
NUNBMzBDMDc4MUJCMDBDRDIwRjAgLyogSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgKi8s
CiAJCQkJNDQ4QUQyN0EwQTQ4MTM3OTAwMjNEMTc5IC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCAqLywKQEAgLTE4MTE5LDYgKzE4MTUwLDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNF
QkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgy
NTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
QzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUIwMTQ5RTgwMTFB
NEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdlU291cmNlQ0cuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTgzNTEsNiArMTgzODQsOCBAQAogCQkJCUM1NkM5MUE3MTE5RDkxODcwMERF
NENEOSAvKiBKU0lEQlN1Y2Nlc3NFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM2QzQ5RjQw
RDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQTc3OTc5MjkwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCQTExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUM1RjRG
NDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTdBMEU3NkRCMTBCRjA1OTgwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0
SG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFGMDYwQ0UwRjVFRUIyQjAwQTA3RUFDIC8qIEpT
SW5zcGVjdG9yQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCkBAIC0xODg4NSw2ICsxODkyMCw3IEBA
CiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2QzJGMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGMjExQzZG
MEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0Rjcx
NDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIwNjU0LDYgKzIwNjkwLDcgQEAKIAkJCQlCQzQ5MThDODBCRkVB
MDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1M
SW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwNEY1OUZGMTFDNkFGRDYwMDBC
NUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0RWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVt
ZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk5MEExQ0REMkQwMEI0MkIy
NSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIwNzEyLDYg
KzIwNzQ5LDggQEAKIAkJCQlCQzZDNDlGMzBEN0RCQTA1MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0
cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3Nzk3OTI4MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBN0QwMzE4RTBFOTM1NDAzMDBF
MjRBQ0QgLyogSlNJbWFnZURhdGFDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1
QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVGNEY0MTAxMTkzMDZD
MDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk3QTBFNzZEQTEwQkYwNTk4MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2RDUxMEJGMDUwNzAwQTAyNzZFIC8qIEpTSW5qZWN0
ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjEyNTksNiArMjEyOTgs
NyBAQAogCQkJCUE4OUNDQzUyMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFu
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzMwOUUwOTA5OUU2NDkyMDA1NkU1ODEg
LyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNCMTZD
MkUwOTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBB
NzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM0RjcxM0UwRDVBNkYyODAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxNEM3NjUwMENFOTIzNEUwMDdFRjNDRCAvKiBSZXNvdXJjZUVy
cm9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2NzgwQ0U5MjNBMTAwN0VGM0NEIC8q
IFJlc291cmNlSGFuZGxlLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjg1MjVjMGUKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKQEAgLTAsMCArMSwxNjQgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiSlNIVE1M
SW1hZ2VFbGVtZW50LmgiCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRlICJIVE1M
SW1hZ2VFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgi
CisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlIDxydW50aW1lL0pTRnVuY3Rpb24uaD4KKyNpbmNs
dWRlIDxydW50aW1lL0pTU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL0dldFB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorCit1c2luZyBu
YW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQYXNzUmVmUHRy
PEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRzKCZKU0Z1bmN0aW9uOjpp
bmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIp
OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNP
YmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6
Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3RhdGljIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhF
eGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
dmFsdWUpCit7CisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBp
cyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmlu
ZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRz
KCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQ
RV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVj
dCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQ
YXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZVJlc2l6ZU9wdGlvbnMoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHZhbHVlKQoreworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVP
cHRpb25zID0gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCk7CisKKyAgICAvLyBBcmd1bWVudCBpcyBv
cHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2Vk
LgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKSB7CisgICAgICAgIC8vIFVzZSBk
ZWZhdWx0IG9wdGlvbnMuCisgICAgICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsK
KyAgICB9CisgICAgSlNPYmplY3QqIG9iamVjdCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisg
ICAgSlNWYWx1ZSB3aWR0aCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgIndp
ZHRoIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKCF3aWR0aC5pc1VuZGVmaW5lZCgpKSB7CisJCXJlc2l6ZU9wdGlvbnMtPnNldFdp
ZHRoKHdpZHRoLnRvSW50MzIoZXhlYykpOworCQlpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisJ
CQlyZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIGhlaWdodCA9IG9iamVjdC0+Z2V0KGV4
ZWMsIElkZW50aWZpZXIoZXhlYywgImhlaWdodCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghaGVpZ2h0LmlzVW5kZWZpbmVkKCkp
IHsKKwkJcmVzaXplT3B0aW9ucy0+c2V0SGVpZ2h0KGhlaWdodC50b0ludDMyKGV4ZWMpKTsKKwkJ
aWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorCQkJcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNW
YWx1ZSBjb21wcmVzc2lvbkxldmVsID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVj
LCAiY29tcHJlc3Npb25MZXZlbCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiAwOworICAgIGlmICghY29tcHJlc3Npb25MZXZlbC5pc1VuZGVmaW5lZCgp
KSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldENvbXByZXNzaW9uTGV2ZWwoY29tcHJlc3Np
b25MZXZlbC50b051bWJlcihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVB
c3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZl
QXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICBy
ZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgewor
ICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVj
dFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRp
b24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsK
KyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlm
ICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5z
ZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmco
ZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOwor
fQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRl
KiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhl
eGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGlj
X2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBl
eGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKwor
ICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3Jl
YXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2Jh
bE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIp
KTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVm
aW5lZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVh
dGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VS
VChyZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19j
YXN0PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2Uo
bWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFz
ZSgpLCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihl
eGVjLCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRmMCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQor
KysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTc5
LDcgKzIxNzksMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAg
ICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15
ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOwor
ICAgICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAgICAg
ICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJp
bmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQo
dG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICB9CiAKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9vbCBy
YWlzZWRFeGNlcHRpb24gPSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2ZWQg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxs
YmFjay5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tX
aXRoQ2xhc3MyUGFyYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAgICBF
eGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJrZWRB
cmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3MyUGFy
YW0pKTsKLSAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3MuYXBw
ZW5kKGpzU3RyaW5nKGV4ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRpb24g
PSBmYWxzZTsKICAgICBtX2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNlcHRp
b24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dl
YkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2NCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJD
b3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNpbmNs
dWRlICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNp
bmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisj
aW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAj
aW5jbHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFz
eW5jSW1hZ2VSZXNpemVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBj
YWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMs
IFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywg
ZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6
c3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2Fj
aGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNp
emVPcHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQXN5
bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHN1
Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24s
IG9yaWVudGF0aW9uT3B0aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3JpcHRF
eGVjdXRpb25Db250ZXh0LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNr
LCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6ZXI6
OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBv
dXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxs
YmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0
aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9u
T3B0aW9uKQorQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNoZWRJ
bWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXpl
T3B0aW9ucykKICAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3Njcmlw
dEV4ZWN1dGlvbkNvbnRleHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0cHV0
VHlwZShvdXRwdXRUeXBlKQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNr
KQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5
cGUob3V0cHV0VHlwZSkKLSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAg
ICwgbV9xdWFsaXR5KHF1YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJh
dGlvT3B0aW9uKQotICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikK
KyAgICAsIG1fcmVzaXplT3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1
Y2Nlc3NDYWxsYmFjay5pc09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xzIHRo
ZSBsaWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9IG5l
dyBDYWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdldCgp
KTsKICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDExICs3
MSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNv
dXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VE
YXRhID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291cmNl
LT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8gPSBu
ZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFy
dChpbWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3VuZHMs
IG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikpCisg
ICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFja0lu
Zm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1fcmVz
aXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2ZWwo
KSwgbV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlvbnMt
Pm9yaWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2b2lk
IEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikKK3sK
KyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250
ZXh0LCBibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJy
b3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJyb3JD
YWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBlY3Rl
ZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNp
emVyLmgKaW5kZXggM2VlZWVhZC4uYzQyMjg0MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0Fz
eW5jSW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgK
QEAgLTQwLDcgKzQwLDExIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZElt
YWdlOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6
ZU9wdGlvbnM7CisKIAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJ
bWFnZSB0aGF0IGlzIHBhc3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0
cyBhbiBJbWFnZVJlc2l6ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVk
LCBJbWFnZVJlc2l6ZXJUaHJlYWQKQEAgLTQ4LDU2ICs1Miw0MiBAQCBjbGFzcyBJbWFnZVJlc2l6
ZXJUaHJlYWQ7CiAvLyBvY2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95ZWQuIElmIHRoZSBk
b2N1bWVudCBpcyBkZXN0cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5bmNJbWFnZVJlc2l6
ZXIgd2lsbCByZWNlaXZlIGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50bHkgYmxvY2sgdGhl
IGNhbGxiYWNrcyBmcm9tCiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0ltYWdlUmVzaXplciA6
IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50ZWQ8QXN5bmNJbWFn
ZVJlc2l6ZXI+IHsKK2NsYXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291
cmNlQ2xpZW50IHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZvIHsKLSAgICAgICAg
Q2FsbGJhY2tJbmZvKFBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNp
emVyKQorICAgICAgICBDYWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0ltYWdlUmVzaXplcj4g
YXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VSZXNpemVyKGFzeW5j
SW1hZ2VSZXNpemVyKQogICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAgIHsKICAgICAgICAg
fQogCi0gICAgICAgIFJlZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7
CisgICAgICAgIE93blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CiAg
ICAgICAgIFJlZlB0cjxCbG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAgICBlbnVtIE91dHB1
dFR5cGUgewogICAgICAgICBKUEVHLAogICAgICAgICBQTkcKICAgICB9OwogCi0gICAgZW51bSBB
c3BlY3RSYXRpb09wdGlvbiB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCi0gICAgICAg
IElnbm9yZUFzcGVjdFJhdGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24g
ewotICAgICAgICBDb3JyZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9yZU9yaWVudGF0aW9u
Ci0gICAgfTsKLQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBjcmVh
dGUoQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlw
dFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQg
cXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0
aWMgdm9pZCBzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRw
dXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4p
OwogICAgIH5Bc3luY0ltYWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVy
cmlkZSBmdW5jdGlvbiBmb3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChj
aGFuZ2UgbV9jYWxsYmFja3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxC
bG9iPikgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVz
aXplRXJyb3IoKSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9p
ZCByZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsK
IAogcHJpdmF0ZToKLSAgICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5
cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBT
Y3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlv
biwgT3JpZW50YXRpb25PcHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLCBDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlm
eUZpbmlzaGVkKENhY2hlZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFnZSogbV9jYWNoZWRJ
bWFnZTsKLSAgICBTY3JpcHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBTY3JpcHRWYWx1
ZSBtX2Vycm9yQ2FsbGJhY2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0byBwYXNzIGludG8g
SW1hZ2VSZXNpemVyVGhyZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxsYmFja0luZm87Cisg
ICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworCiAg
ICAgT3V0cHV0VHlwZSBtX291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7
Ci0gICAgZmxvYXQgbV9xdWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0
aW9PcHRpb247Ci0gICAgT3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAg
ICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsK
KyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOwor
ICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVu
dC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5kZXggNWQ1OTIzZC4u
MmZmNTFmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCisr
KyBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIsOSArMzIsMTcgQEAK
ICNpbmNsdWRlICJIVE1MRG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIK
ICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIklt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaCIKICNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9w
dGlvbnMuaCIKICNpbmNsdWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAKKyNpZiBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2VuZGlmCisK
IHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1MSw0ICs0
NTksMzQgQEAgdm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVu
dCgpCiAgICAgSFRNTEVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7CiB9CiAK
KyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJr
aXRHZXRJbWFnZShTdHJpbmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vz
c0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVP
cHRpb25zLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygpLmlzVmFsaWQoKSkg
eworICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICByZXR1cm47CisgICAg
fQorCisgICAgLy8gVGhlIHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxvd3MgZGF0YSBVUkxz
LgorICAgIGlmIChkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWludHNDYW52YXMoc3Jj
KCkpKSB7CisgICAgICAgIGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICByZXR1cm47CisgICAg
fQorCisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZTsKKyAgICBp
ZiAobWltZVR5cGUgPT0gImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJ
bWFnZVJlc2l6ZXI6OkpQRUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0gImltYWdlL3BuZyIp
CisgICAgICAgIG91dHB1dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5HOworICAgIGVsc2Ug
eworICAgICAgICBlYyA9IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICByZXR1cm47CisgICAg
fQorCisgICAgQXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSwgbV9pbWFnZUxvYWRlci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVy
cm9yQ2FsbGJhY2ssIHJlc2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdF
X1JFU0laRVIpCisKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50
LmggYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJi
YjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2Vi
Q29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2s7CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3Mg
UmVzaXplT3B0aW9uczsKIAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxl
bWVudCB7CiAgICAgZnJpZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEy
IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1
cm4gbV9pbWFnZUxvYWRlci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElN
QUdFX1JFU0laRVIpCisKKyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwg
UGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRp
b25Db2RlJik7CisKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUv
aHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNjNWU0IDEwMDY0NAot
LS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1s
L0hUTUxJbWFnZUVsZW1lbnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1bGUgaHRtbCB7CiAg
ICAgICAgIC8vIE9iamVjdGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTVN0cmluZyBhbHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgVVJMIGFic29sdXRlSW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5lZChFTkFCTEVfSU1B
R0VfUkVTSVpFUikgJiYgRU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAgLy8gRnVuY3Rpb25z
CisgICAgICAgIFtDdXN0b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9NU3RyaW5nIG1pbWVU
eXBlLCBpbiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbT3B0
aW9uYWxdIGluIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxsYmFjaywgW09wdGlv
bmFsXSBpbiBSZXNpemVPcHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhj
ZXB0aW9uKTsKKyNlbmRpZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42
NmZmZjg2Ci0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaApAQCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrX2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmlu
ZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVk
PEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7Cit9OworCit9CisK
KyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2NiZjgKLS0tIC9kZXYv
bnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKQEAg
LTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICog
bWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1l
IG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICog
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAq
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKK21vZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBD
b25kaXRpb25hbD1JTUFHRV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRE9N
U3RyaW5nIGVycm9yKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NDAwZjMK
LS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
X2gKKyNkZWZpbmUgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJ
TUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitjbGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsK
K2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVi
bGljIFJlZkNvdW50ZWQ8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7CitwdWJsaWM6Cisg
ICAgdmlydHVhbCB+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmlydHVh
bCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKikgPSAwOwor
fTsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBm
ZDg3ZgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAg
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICog
TmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICog
Y29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJm
YWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJh
Y2sKKyAgICBdIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4g
aGFuZGxlRXZlbnQoaW4gQmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmNwcAppbmRleCAxYmFlNmEwLi42N2FmYzc4IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmNwcApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1hcEltYWdlLmgiCiAj
aW5jbHVkZSAiSW1hZ2UuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUg
PHV0aWxpdHk+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUxLDcgQEAgc3RhdGlj
IHZvaWQgcmV0dXJuQmxvYk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1hdGlvbikKICAgICBk
ZWxldGUgY2FsbGJhY2tJbmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQo
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNh
bGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBv
dXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1h
Z2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorYm9vbCBJbWFn
ZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEs
IEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBk
b3VibGUgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0
aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0
aW9uKQogewogICAgIEltYWdlUmVzaXplclRocmVhZCogaW1hZ2VSZXNpemVyVGhyZWFkID0gbmV3
IEltYWdlUmVzaXplclRocmVhZChjYWxsYmFja0luZm8sIG91dHB1dFR5cGUsIGRlc2lyZWRCb3Vu
ZHMsIHF1YWxpdHksIGFzcGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9wdGlvbik7CiAKQEAg
LTYyLDcgKzYzLDcgQEAgYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXMKICAgICByZXR1cm4gaW1hZ2VS
ZXNpemVyVGhyZWFkLT5tX3RocmVhZElEOwogfQogCi1JbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdl
UmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0lu
Zm8sIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVz
aXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlv
T3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25P
cHRpb24gb3JpZW50YXRpb25PcHRpb24pCitJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXpl
clRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFz
eW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJv
dW5kcywgZG91YmxlIHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFz
cGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRh
dGlvbk9wdGlvbikKICAgICA6IG1fdGhyZWFkSUQoMCkKICAgICAsIG1fY2FsbGJhY2tJbmZvKGNh
bGxiYWNrSW5mbykKICAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplclRocmVhZC5oCmluZGV4IGFlNWFkZTUuLjk1NjIxNjEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKIAog
I2luY2x1ZGUgIkFzeW5jSW1hZ2VSZXNpemVyLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQyLDExICs0MywxMSBAQCBjbGFzcyBTaGFy
ZWRCdWZmZXI7CiAKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZCB7CiBwdWJsaWM6Ci0gICAgc3Rh
dGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJ
bWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBl
LCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVy
OjpBc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9u
KTsKKyAgICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VE
YXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6
Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1YWxpdHksIFJlc2l6
ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9w
dGlvbik7CiAgICAgfkltYWdlUmVzaXplclRocmVhZCgpOwogCiBwcml2YXRlOgotICAgIEltYWdl
UmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0
eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXpl
cjo6T3JpZW50YXRpb25PcHRpb24pOworICAgIEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdl
UmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIElu
dFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVj
dFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7CiAgICAgc3Rh
dGljIHZvaWQqIGltYWdlUmVzaXplclRocmVhZFN0YXJ0KHZvaWQqKTsKICAgICB2b2lkKiBpbWFn
ZVJlc2l6ZXJUaHJlYWQoKTsKIApAQCAtNTgsOSArNTksOSBAQCBwcml2YXRlOgogICAgIFJlZlB0
cjxCaXRtYXBJbWFnZT4gbV9pbWFnZTsKICAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlw
ZSBtX291dHB1dFR5cGU7CiAgICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQg
bV9xdWFsaXR5OwotICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBtX2Fz
cGVjdFJhdGlvT3B0aW9uOwotICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlv
biBtX29yaWVudGF0aW9uT3B0aW9uOworICAgIGRvdWJsZSBtX3F1YWxpdHk7CisgICAgUmVzaXpl
T3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKKyAgICBSZXNp
emVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9w
dGlvbnMuY3BwIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlNjQ5NjQKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3Jl
L2h0bWwvUmVzaXplT3B0aW9ucy5jcHAKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24u
CisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMg
b2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgi
CisKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
Ky8vIEluY2x1c2l2ZSBsaW1pdHM7CitzdGF0aWMgY29uc3QgaW50IGRpbWVuc2lvbnNMb3dlckxp
bWl0ID0gMTsKK3N0YXRpYyBjb25zdCBpbnQgZGltZW5zaW9uc1VwcGVyTGltaXQgPSAzMjc2NzsK
K3N0YXRpYyBjb25zdCBkb3VibGUgY29tcHJlc3Npb25Mb3dlckxpbWl0ID0gMC4wOworc3RhdGlj
IGNvbnN0IGRvdWJsZSBjb21wcmVzc2lvblVwcGVyTGltaXQgPSAxLjA7CisKK3N0YXRpYyBjb25z
dCBkb3VibGUgZGVmYXVsdENvbXByZXNzaW9uID0gMC44NTsKKworUGFzc1JlZlB0cjxSZXNpemVP
cHRpb25zPiBSZXNpemVPcHRpb25zOjpjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgUmVz
aXplT3B0aW9ucygpKTsgfQorCitSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKCkKKyAgICA6
IG1fd2lkdGgoKQorICAgICwgbV9oZWlnaHQoKQorICAgICwgbV9jb21wcmVzc2lvbkxldmVsKCkK
KyAgICAsIG1fYXNwZWN0UmF0aW9PcHRpb24oSWdub3JlQXNwZWN0UmF0aW8pCisgICAgLCBtX29y
aWVudGF0aW9uT3B0aW9uKElnbm9yZU9yaWVudGF0aW9uKQoreworfQorCit2b2lkIFJlc2l6ZU9w
dGlvbnM6OnNldFdpZHRoKGludCB3aWR0aCkgeyBtX3dpZHRoID0gd2lkdGggPj0gZGltZW5zaW9u
c0xvd2VyTGltaXQgJiYgd2lkdGggPD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyB3aWR0aCA6IDA7
IH0KK2ludCBSZXNpemVPcHRpb25zOjp3aWR0aCgpIHsgcmV0dXJuIG1fd2lkdGg7IH0KKwordm9p
ZCBSZXNpemVPcHRpb25zOjpzZXRIZWlnaHQoaW50IGhlaWdodCkgeyBtX2hlaWdodCA9IGhlaWdo
dCA+PSBkaW1lbnNpb25zTG93ZXJMaW1pdCAmJiBoZWlnaHQgPD0gZGltZW5zaW9uc1VwcGVyTGlt
aXQgPyBoZWlnaHQgOiAwOyB9CitpbnQgUmVzaXplT3B0aW9uczo6aGVpZ2h0KCkgeyByZXR1cm4g
bV9oZWlnaHQ7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRDb21wcmVzc2lvbkxldmVsKGRv
dWJsZSBjb21wcmVzc2lvbkxldmVsKSB7IG1fY29tcHJlc3Npb25MZXZlbCA9IGNvbXByZXNzaW9u
TGV2ZWwgPj0gY29tcHJlc3Npb25Mb3dlckxpbWl0ICYmIGNvbXByZXNzaW9uTGV2ZWwgPD0gY29t
cHJlc3Npb25VcHBlckxpbWl0ID8gY29tcHJlc3Npb25MZXZlbCA6IGRlZmF1bHRDb21wcmVzc2lv
bjsgfQorZG91YmxlIFJlc2l6ZU9wdGlvbnM6OmNvbXByZXNzaW9uTGV2ZWwoKSB7IHJldHVybiBt
X2NvbXByZXNzaW9uTGV2ZWw7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRBc3BlY3RSYXRp
b09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8pIHsgbV9hc3BlY3RSYXRpb09wdGlvbiA9
IHByZXNlcnZlQXNwZWN0UmF0aW8gPyBQcmVzZXJ2ZUFzcGVjdFJhdGlvIDogSWdub3JlQXNwZWN0
UmF0aW87IH0KK1Jlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIFJlc2l6ZU9wdGlvbnM6
OmFzcGVjdFJhdGlvT3B0aW9uKCkgeyByZXR1cm4gbV9hc3BlY3RSYXRpb09wdGlvbjsgfQorCit2
b2lkIFJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlv
bk9wdGlvbikgeyBtX29yaWVudGF0aW9uT3B0aW9uID0gb3JpZW50YXRpb25PcHRpb24gPT0gImF1
dG8iID8gQ29ycmVjdE9yaWVudGF0aW9uIDogSWdub3JlT3JpZW50YXRpb247IH0KK1Jlc2l6ZU9w
dGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIFJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9u
KCkgeyByZXR1cm4gbV9vcmllbnRhdGlvbk9wdGlvbjsgfQorCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9SZXNpemVPcHRpb25zLmggYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU4N2IxZDEKLS0tIC9kZXYvbnVsbAor
KysgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCkBAIC0wLDAgKzEsODcgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IFJlc2l6ZU9wdGlvbnNfaAorI2RlZmluZSBSZXNpemVPcHRpb25zX2gKKworI2lmIEVOQUJMRShJ
TUFHRV9SRVNJWkVSKQorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFN0cmluZzsK
KworY2xhc3MgUmVzaXplT3B0aW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFJlc2l6ZU9wdGlvbnM+
IHsKK3B1YmxpYzoKKyAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKKyAgICAgICAgUHJlc2Vy
dmVBc3BlY3RSYXRpbywKKyAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KKyAgICB9OworCisgICAg
ZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7CisgICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKKyAg
ICAgICAgSWdub3JlT3JpZW50YXRpb24KKyAgICB9OworCisgICAgc3RhdGljIFBhc3NSZWZQdHI8
UmVzaXplT3B0aW9ucz4gY3JlYXRlKCk7CisKKyAgICB2b2lkIHNldFdpZHRoKGludCB3aWR0aCk7
CisgICAgaW50IHdpZHRoKCk7CisKKyAgICB2b2lkIHNldEhlaWdodChpbnQgaGVpZ2h0KTsKKyAg
ICBpbnQgaGVpZ2h0KCk7CisKKyAgICB2b2lkIHNldENvbXByZXNzaW9uTGV2ZWwoZG91YmxlIGNv
bXByZXNzaW9uTGV2ZWwpOworICAgIGRvdWJsZSBjb21wcmVzc2lvbkxldmVsKCk7CisKKyAgICB2
b2lkIHNldEFzcGVjdFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbyk7CisgICAg
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24oKTsKKworICAgIHZvaWQgc2V0T3Jp
ZW50YXRpb25PcHRpb24oU3RyaW5nIG9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBPcmllbnRhdGlv
bk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbigpOworCitwcml2YXRlOgorICAgIFJlc2l6ZU9wdGlv
bnMoKTsKKworICAgIC8vIElmIG1fd2lkdGggb3IgbV9oZWlnaHQgPT0gMCwgdGhhdCBkaW1lbnNp
b24gd2lsbCBub3QgY2hhbmdlIGV4cGxpY2l0bHkgZHVyaW5nIHJlc2l6aW5nLgorICAgIGludCBt
X3dpZHRoOworICAgIGludCBtX2hlaWdodDsKKyAgICBkb3VibGUgbV9jb21wcmVzc2lvbkxldmVs
OworICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgT3JpZW50
YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gUmVz
aXplT3B0aW9uc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59467</attachid>
            <date>2010-06-22 19:55:28 -0700</date>
            <delta_ts>2010-06-22 21:43:39 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>96613</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi45MWRmNjgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2lt
YWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVu
bG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanM6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorCiAyMDEwLTA2LTE4ICBK
dXN0aW4gR2FyY2lhICA8anVzdGluLmdhcmNpYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgT2phbiBWYWZhaS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGQ3ZWE4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTA2IEBACitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRz
IHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VS
UjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5k
ZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5j
dGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTk9UX1NVUFBP
UlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1
bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRo
IGdldHRlciBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmci
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVu
Y3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVl
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVj
dFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2hlaWdodDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhy
b3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0
eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJl
c2VydmVBc3BlY3RSYXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5p
dHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVk
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9h
cmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmM1OTZiNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44ZjY4ZjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0IGFuIGltYWdl
IHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFeGNlcHRpb24gd2FzIGNv
cnJlY3RseSB0aHJvd246IEVycm9yOiBJTlZBTElEX1NUQVRFX0VSUjogRE9NIEV4Y2VwdGlvbiAx
MQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY4ZjFl
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkCkBAIC0w
LDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJzY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDgxZDEzYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACittYWluIGZy
YW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFj
a3Mgd2lsbCBub3QgZXhlY3V0ZSBhZnRlciBvbnVubG9hZC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgTm8gY2FsbGJhY2tzIGNhbGxlZCBhZnRlciB1bmxvYWQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxv
YWQuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTBh
YTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdl
YmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlODJjNjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJp
ZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyA0MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk2ZjljNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3Zl
cnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0
LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUz
ZGUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1MzY3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsx
LDE0NiBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1
bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24g
c2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lv
bik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91
bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQor
CitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0
ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAg
IGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Np
b24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0p
KCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24s
ICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJv
dyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24o
KSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRo
cm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhy
b3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24o
KSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsK
K3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bigpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVf
cmVjdC5qcGciOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikn
LCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7CisK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
biknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1
bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24g
OScpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5
RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkp
JywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbiknLCB0cnVlLCAnRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0
MiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dHJ1ZX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTotSW5m
aW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNl
KTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxs
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2Jq
ZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNl
cHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3dpZHRoOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dp
ZHRoOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3
aWR0aDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5k
ZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dHJ1ZX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDotSW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsK
KwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5l
ZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0aW9u
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5pdHl9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KScsIGZhbHNlKTsKKword2luZG93LmpzVGVzdElzQXN5bmMg
PSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1z
b3VyY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFkOTU3NwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMKQEAgLTAsMCAr
MSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ug
d2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uIik7CisKK3ZhciBpID0g
bmV3IEltYWdlKCk7CitpLnNyYyA9IG51bGw7CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rp
b24oKSB7fTsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgewor
CQlpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RG
YWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2Vk
KCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0
KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWE4NmRmMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDI1IEBA
CitkZXNjcmlwdGlvbigiRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFja3Mgd2lsbCBub3QgZXhlY3V0
ZSBhZnRlciBvbnVubG9hZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gIi4u
L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5j
dGlvbigpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dCgndGVzdFBhc3NlZCgiTm8gY2FsbGJhY2tz
IGNhbGxlZCBhZnRlciB1bmxvYWQiKTsgZmluaXNoSlNUZXN0KCk7JywgMTAwKTsKK30KKworZG9j
dW1lbnQuYm9keS5vbnVubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGkud2Via2l0R2V0SW1hZ2Uo
CisgICAgICAgICJpbWFnZS9wbmciLAorICAgICAgICBmdW5jdGlvbihibG9iKSB7CisgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIHN1Y2Nlc3MgY2FsbGJh
Y2suIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSwKKyAgICAgICAg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgd2Vi
a2l0R2V0SW1hZ2UgZXJyb3IgY2FsbGJhY2s6ICIgKyBlcnJvcik7CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICk7Cit9CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li41NWVmZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMiBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9y
ZWN0LmpwZyI7CisKK2kud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9
Cit2YXIgcmVzdWx0ID0gaS53ZWJraXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8ocmVz
dWx0KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5hNjY0ZjNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFj
a3MuanMKQEAgLTAsMCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNhbGxi
YWNrcyB3b3JrIGNvcnJlY3RseS4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0g
Ii4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9IGZ1
bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNh
bGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsKKyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxsYmFj
ayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogIiArIGVycm9yKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVu
dGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5z
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44YzAxODMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29y
cmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxs
YmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3
aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1j
YWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5jMjY1MDJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0OGVm
ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24gYW4g
aW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246IEVycm9y
OiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRt
bC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uMmUxYzU1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBs
b2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBlbmRDaGls
ZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBlbXB0eUNh
bGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhjZXB0aW9u
Iik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBleGNlcHRp
b246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25l
KCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJbWFnZS53
ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmln
aW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC8u
Li8uLi9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIiAv
PgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGFlYjRi
NjguLjAxYzJhNWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYyLDYgKzI2Miw4IEBAIFNFVChXZWJDb3JlX0lETF9G
SUxFUwogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuaWRsCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAg
IGh0bWwvVmFsaWRpdHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkzYTEyMS4uN2NiMDY4ZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2NSBAQAor
MjAxMC0wNi0yMSAgU3RlcmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBFeHBv
c2VkIHRoZSBpbWFnZSByZXNpemluZyBBUEkgdG8gSlNDLCBidXQgaXQgaXMgZnVuY3Rpb25hbGx5
IGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRk
ZWQgZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOiBEaXR0by4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOiBEaXR0by4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS5neXBpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3Jl
LnByaTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcm86IERpdHRvLgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUmVz
aXplT3B0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtp
dEdldEltYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bTogQ2hhbmdlZCB0byBjb252ZXJ0IFN0cmluZ3MgdG8gSlNTdHJpbmdzIGNvcnJlY3RseSBpbiBj
YWxsYmFja3MuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrLmNwcDogQ2hhbmdlZCBiaW5kaW5ncy10ZXN0IGZvciBhYm92ZS4KKyAgICAgICAgKFdlYkNv
cmU6OkpTVGVzdENhbGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJhbSk6CisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdl
UmVzaXplcjo6c3RhcnQpOiBDbGllbnQgb2YgdGhpcyBjbGFzcyBubyBsb25nZXIgZG9lcyBhbnkg
cmVmY291bnRpbmcKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0lt
YWdlUmVzaXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
Om5vdGlmeUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1h
Z2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2Vi
Q29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJl
c2l6ZXI6OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vz
c2V0aWVzLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9u
IG9mIEpTIGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjazo6fkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAq
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw6IEFkZGVkLgorICAgICAgICAqIGh0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjp+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw6IEFk
ZGVkLgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6c3RhcnQpOiBSZWZhY3RvcmVkLgorICAgICAgICAo
V2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQpOiAgUmVmYWN0
b3JlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oOiBSZWZhY3RvcmVkLgor
ICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
V2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6d2lkdGgpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlc2l6ZU9wdGlvbnM6OmhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRDb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6
OmNvbXByZXNzaW9uTGV2ZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
QXNwZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6YXNw
ZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0T3Jp
ZW50YXRpb25PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6b3JpZW50
YXRpb25PcHRpb24pOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKIDIwMTAtMDYtMTggIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZDogUXQg
YnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA3YWMzZTUxLi5jZTVjOGYzIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcApAQCAtMTgwLDYgKzE4MCw4IEBACiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmNwcCIKICNp
bmNsdWRlICJKU0lEQlN1Y2Nlc3NFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNJbWFnZURhdGEuY3Bw
IgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiCisjaW5jbHVkZSAi
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTSW5kZXhlZERh
dGFiYXNlUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcCIK
ICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuY3BwIgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDdlYzkx
NWYuLjMxNmRlNTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIyMyw2ICsyMjMsOCBAQCBET01fQ0xB
U1NFUyA9IFwKICAgICBJREJSZXF1ZXN0IFwKICAgICBJREJTdWNjZXNzRXZlbnQgXAogICAgIElt
YWdlRGF0YSBcCisgICAgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIFwKKyAgICBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrIFwKICAgICBJbmRleGVkRGF0YWJhc2VSZXF1ZXN0IFwKICAgICBJ
bmplY3RlZFNjcmlwdEhvc3QgXAogICAgIEluc3BlY3RvckJhY2tlbmQgXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggZTc4
NTc0OS4uZWRiYWM3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNzUsNiArMjc1LDggQEAgSURMX0JJTkRJTkdTICs9
IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5pZGwgXAorCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogCVdlYkNvcmUvaHRtbC9WYWxpZGl0eVN0YXRlLmlkbCBcCiAJV2ViQ29yZS9o
dG1sL1ZvaWRDYWxsYmFjay5pZGwgXApAQCAtNDU1LDYgKzQ1Nyw3IEBAIHdlYmNvcmVfc291cmNl
cyArPSBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3Bw
IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAg
XAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAor
CVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5oIFwKIAlXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKQEAgLTEyNjcsNiArMTI3MCw4
IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxWaWV3U291cmNlRG9j
dW1lbnQuaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5jcHAgXAogCVdlYkNvcmUvaHRtbC9J
bWFnZURhdGEuaCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBc
CisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIFwKIAlXZWJDb3Jl
L2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXpl
clRocmVhZC5oIFwKIAlXZWJDb3JlL2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwIFwKQEAgLTEyNzQs
NiArMTI3OSw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL01lZGlhRXJy
b3IuaCBcCiAJV2ViQ29yZS9odG1sL1ByZWxvYWRTY2FubmVyLmNwcCBcCiAJV2ViQ29yZS9odG1s
L1ByZWxvYWRTY2FubmVyLmggXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcCBcCisJ
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5j
cHAgXAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuaCBcCiAJV2ViQ29yZS9odG1sL1RleHRNZXRy
aWNzLmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQppbmRleCBmMmNkZDY3Li5mOWViMjEwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTg3LDYgKzE4Nyw4IEBACiAg
ICAgICAgICAgICAnaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuaWRs
JywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwnLAor
ICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwnLAogICAgICAg
ICAgICAgJ2h0bWwvTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGV4dE1ldHJp
Y3MuaWRsJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuaWRsJywKQEAgLTU3MSw2ICs1
NzMsNyBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1
c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRD
dXN0b20uY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1
c3RvbS5jcHAnLApAQCAtMTY1Niw2ICsxNjU5LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxW
aWV3U291cmNlRG9jdW1lbnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuY3BwJywK
ICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQu
Y3BwJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5oJywKICAgICAgICAg
ICAgICdodG1sL0xhYmVsc05vZGVMaXN0LmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNv
cmUucHJpIGIvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCAyNWM5NWZmLi40ZTZlZmU3IDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAg
LTQyMiw2ICs0MjIsOCBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwgXAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSW1h
Z2VEYXRhLmlkbCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisg
ICAgaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICBodG1sL01lZGlh
RXJyb3IuaWRsIFwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbCBcCiAgICAgaHRtbC9UaW1lUmFu
Z2VzLmlkbCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJD
b3JlLnBybwppbmRleCA5MmE3NzVjLi4zNTUyMzI1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUucHJvCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KQEAgLTMxNSw2ICszMTUsNyBAQCBTT1VS
Q0VTICs9IFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBi
aW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisgICAgYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1M
SW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxl
bWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCBcCkBAIC03MDQsNiArNzA1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgaHRtbC9J
bWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmNwcCBcCiAg
ICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5jcHAg
XAogICAgIGh0bWwvU3RlcFJhbmdlLmNwcCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmNwcCBc
CiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcCBcCkBAIC0xNDM2LDkgKzE0MzgsMTIg
QEAgSEVBREVSUyArPSBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggXAogICAgIGh0bWwv
SFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKICAgICBodG1sL0ltYWdlRGF0YS5oIFwKKyAgICBo
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmggXAorICAg
IGh0bWwvUmVzaXplT3B0aW9ucy5oIFwKICAgICBodG1sL1N0ZXBSYW5nZS5oIFwKICAgICBodG1s
L1RpbWVSYW5nZXMuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4uMDE3ZTM3YiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2ICszNzY2MSwxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxl
DQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
Y3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAg
LTM3Njg5LDYgKzM3Njk3LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5jcHAiDQorCQkJCT4NCisJCQk8
L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6ZU9wdGlv
bnMuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGh0bWxcU3RlcFJhbmdlLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC00MDEyOCw3
ICs0MDE0NCw5IEBACiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJ
CQkJPEZpbGUNCisKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxFbWJl
ZEVsZW1lbnRDdXN0b20uY3BwIg0KKwogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24N
CiAJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCkBAIC00MDM4OCw2ICs0MDQwNiw1OSBAQAogCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCisJCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNw
cCINCisJCQkJCT4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
fFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJ
CQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJ
TmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJ
CQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJh
dGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0ludGVybmFsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIi
DQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29s
DQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJS
ZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJ
CQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJ
CQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0
aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8
L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpT
SFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAiDQogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAz
MGIyOWQuLjIyOGMwNDAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0zNTA5LDYgKzM1MDksMTUgQEAKIAkJQjAxNDlFN0UxMUE0QjIxNTAwMTk2QTdCIC8q
IEFzeW5jSW1hZ2VSZXNpemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMDE0OUU3QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIu
aCAqLzsgfTsKIAkJQjAxNDlFN0YxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVh
ZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0
OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLzsgfTsKIAkJ
QjAxNDlFODAxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0MxMUE0QjIxNTAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovOyB9OworCQlCMDRFNkJGMjExQzZGMEU5
MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlv
bnMuaCAqLzsgfTsKKwkJQjA0RTZCRjUxMUM3RjA3OTAwMjE0MjgzIC8qIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QTEx
QUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIwNEY1OUZGMTFDNkFGRDYw
MDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8q
IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi87IH07CisJCUIwQTcxNTFCMTFDQzI0RUUw
MDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRp
b25zLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjgxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oICovOyB9OworCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QkExMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKIAkJQjIwMTExMDcwQUI3NzQw
NTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVs
ZW1lbnQuY3BwICovOyB9OwogCQlCMjAxMTEwODBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIw
MTExMDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLzsgfTsKIAkJQjIxMTI3
QTYwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMTEyN0E1MEIzMTg2NzcwMDA5QkU1
MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi87IH07CkBAIC04ODQ1LDYgKzg4NTQsMTcgQEAK
IAkJQjAxNDlFN0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzeW5jSW1hZ2VSZXNpemVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdCMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1h
Z2VSZXNpemVyVGhyZWFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjAxNDlF
N0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJUaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDE0QTA0
QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMg
LyogUmVzaXplT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNp
emVPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEY1OUZEMTFDNkFG
RDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJl
c2l6ZU9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVz
aXplT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTc5MTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1N0ExMUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNDExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdB
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjExMjdBNTBCMzE4Njc3MDAwOUJF
NTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNTVkdQT0RUeXBlV3JhcHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTM2OTksNiArMTM3MTksMTAgQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyog
SW1hZ2VEYXRhLmNwcCAqLywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VE
YXRhLmggKi8sCiAJCQkJQTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5pZGwg
Ki8sCisJCQkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCAqLywKKwkJCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIElt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTdBMTFEMDFCMjEwMDND
MzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCUIwMTQ5RTdC
MTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5
RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2
RkEyNDExQUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLApAQCAtMTM3MDks
NiArMTM3MzMsOCBAQAogCQkJCUU0NDYxMzlDMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9y
LmlkbCAqLywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIu
Y3BwICovLAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5o
ICovLAorCQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAq
LywKKwkJCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovLAog
CQkJCUE1QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuY3BwICovLAogCQkJCUE1
QUZCMzRFMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAqLywKIAkJCQlCQ0VGNDVFODBF
Njg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAgLTEzOTQ4LDYgKzEzOTc0LDEw
IEBACiAJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTSFRNTFZpZGVvRWxlbWVudC5o
ICovLAogCQkJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5jcHAgKi8s
CiAJCQkJQTc3OTc5MjUwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggKi8sCisJCQkJ
QjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5j
cHAgKi8sCisJCQkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzE1QjYxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCiAJCQkJNDlFRUNFRjgx
MDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5jcHAgKi8sCiAJCQkJNDlFRUNFRjkxMDUw
NzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5oICovLAogCQkJCTQ5RUVDRUY2MTA1MDcwQzQw
MDA5OUZBQiAvKiBKU0ludDMyQXJyYXkuY3BwICovLApAQCAtMTU1MTMsNiArMTU1NDMsNyBAQAog
CQkJCUJDMkVEN0E0MEM2QzBGMzYwMDkyMEJGRiAvKiBKU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20u
Y3BwICovLAogCQkJCUJDRDQxQUJBMEMwNjBERTgwMEMwRTQ0NiAvKiBKU0hUTUxGcmFtZVNldEVs
ZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMkVENjRGMEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hU
TUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVB
QzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0M0Mzg3NzBFODg2
Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzMw
NUNBMzBDMDc4MUJCMDBDRDIwRjAgLyogSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgKi8s
CiAJCQkJNDQ4QUQyN0EwQTQ4MTM3OTAwMjNEMTc5IC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCAqLywKQEAgLTE4MTE5LDYgKzE4MTUwLDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNF
QkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgy
NTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
QzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUIwMTQ5RTgwMTFB
NEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdlU291cmNlQ0cuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTgzNTEsNiArMTgzODQsOCBAQAogCQkJCUM1NkM5MUE3MTE5RDkxODcwMERF
NENEOSAvKiBKU0lEQlN1Y2Nlc3NFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM2QzQ5RjQw
RDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQTc3OTc5MjkwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCQTExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUM1RjRG
NDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTdBMEU3NkRCMTBCRjA1OTgwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0
SG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFGMDYwQ0UwRjVFRUIyQjAwQTA3RUFDIC8qIEpT
SW5zcGVjdG9yQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCkBAIC0xODg4NSw2ICsxODkyMCw3IEBA
CiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2QzJGMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGMjExQzZG
MEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0Rjcx
NDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIwNjU0LDYgKzIwNjkwLDcgQEAKIAkJCQlCQzQ5MThDODBCRkVB
MDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1M
SW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwNEY1OUZGMTFDNkFGRDYwMDBC
NUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0RWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVt
ZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk5MEExQ0REMkQwMEI0MkIy
NSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIwNzEyLDYg
KzIwNzQ5LDggQEAKIAkJCQlCQzZDNDlGMzBEN0RCQTA1MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0
cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3Nzk3OTI4MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBN0QwMzE4RTBFOTM1NDAzMDBF
MjRBQ0QgLyogSlNJbWFnZURhdGFDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1
QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVGNEY0MTAxMTkzMDZD
MDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk3QTBFNzZEQTEwQkYwNTk4MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2RDUxMEJGMDUwNzAwQTAyNzZFIC8qIEpTSW5qZWN0
ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjEyNTksNiArMjEyOTgs
NyBAQAogCQkJCUE4OUNDQzUyMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFu
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzMwOUUwOTA5OUU2NDkyMDA1NkU1ODEg
LyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNCMTZD
MkUwOTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBB
NzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM0RjcxM0UwRDVBNkYyODAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxNEM3NjUwMENFOTIzNEUwMDdFRjNDRCAvKiBSZXNvdXJjZUVy
cm9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2NzgwQ0U5MjNBMTAwN0VGM0NEIC8q
IFJlc291cmNlSGFuZGxlLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmZjM2M2ODkKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKQEAgLTAsMCArMSwxNjQgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiSlNIVE1M
SW1hZ2VFbGVtZW50LmgiCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRlICJIVE1M
SW1hZ2VFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgi
CisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlIDxydW50aW1lL0pTRnVuY3Rpb24uaD4KKyNpbmNs
dWRlIDxydW50aW1lL0pTU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL0dldFB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorCit1c2luZyBu
YW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQYXNzUmVmUHRy
PEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRzKCZKU0Z1bmN0aW9uOjpp
bmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIp
OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNP
YmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6
Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3RhdGljIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhF
eGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
dmFsdWUpCit7CisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBp
cyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmlu
ZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRz
KCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQ
RV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVj
dCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQ
YXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZVJlc2l6ZU9wdGlvbnMoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHZhbHVlKQoreworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVP
cHRpb25zID0gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCk7CisKKyAgICAvLyBBcmd1bWVudCBpcyBv
cHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2Vk
LgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKSB7CisgICAgICAgIC8vIFVzZSBk
ZWZhdWx0IG9wdGlvbnMuCisgICAgICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsK
KyAgICB9CisgICAgSlNPYmplY3QqIG9iamVjdCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisg
ICAgSlNWYWx1ZSB3aWR0aCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgIndp
ZHRoIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKCF3aWR0aC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMt
PnNldFdpZHRoKHdpZHRoLnRvSW50MzIoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIGhl
aWdodCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgImhlaWdodCIpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICgh
aGVpZ2h0LmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0SGVpZ2h0
KGhlaWdodC50b0ludDMyKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBjb21wcmVzc2lv
bkxldmVsID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY29tcHJlc3Npb25M
ZXZlbCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAw
OworICAgIGlmICghY29tcHJlc3Npb25MZXZlbC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJl
c2l6ZU9wdGlvbnMtPnNldENvbXByZXNzaW9uTGV2ZWwoY29tcHJlc3Npb25MZXZlbC50b051bWJl
cihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9i
amVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBp
ZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVP
cHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVh
bihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdl
dChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghb3JpZW50YXRpb24u
aXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9w
dGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAg
ICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRlKiBleGVjKQoreworICAg
IEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVz
dHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7CisKKyAgICBS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVh
dGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9i
YWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgx
KSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMt
PmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhl
Yy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAg
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25z
KGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChyZXNpemVPcHRpb25z
KTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVs
ZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nl
c3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRp
b25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2Vu
ZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRmMCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTc5LDcgKzIxNzksMTEgQEAg
c3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAgICBmb3JlYWNo
IG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAk
cGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAg
IGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAgICAgICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJh
bU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3Bh
cmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKICAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9vbCByYWlzZWRFeGNlcHRpb24g
PSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrLmNwcAorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5
LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0o
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAgICBFeGVjU3RhdGUqIGV4ZWMg
PSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBh
cmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3MyUGFyYW0pKTsKLSAgICBhcmdz
LmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4
ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTsKICAgICBt
X2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3lu
Y0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2NCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNpbmNsdWRlICJBc3luY0ltYWdl
UmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXpl
T3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0
eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVy
PiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0
cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1
Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwg
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9y
aWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hl
ZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNp
emVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIo
Y2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0
aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3JpcHRFeGVjdXRpb25Db250ZXh0
LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
LCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNp
emVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFs
dWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorQXN5bmNJ
bWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlw
ZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3Vj
Y2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9y
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucykKICAgICA6
IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBl
KQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJv
ckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkK
LSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1
YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAg
ICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXpl
T3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5p
c09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBB
c3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8o
dGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hl
ZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDExICs3MSwyMSBAQCB2b2lkIEFz
eW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVz
b3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVz
b3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQo
dGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZv
KHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNh
bGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9h
c3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJl
c2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlw
ZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVp
Z2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRp
b25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0
aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNp
emVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3ND
YWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCBibG9iLmdldCgp
KTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IoKQoreworICAgIGlm
IChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxl
RXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBlY3RlZCBlcnJvciB3aGlsZSBy
ZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAv
LyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9Bc3luY0lt
YWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKaW5kZXggM2Vl
ZWVhZC4uYzQyMjg0MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKQEAgLTQwLDcgKzQwLDEx
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdlOworY2xhc3MgSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
azsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6ZU9wdGlvbnM7CisKIAog
Ly8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJbWFnZSB0aGF0IGlzIHBh
c3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0cyBhbiBJbWFnZVJlc2l6
ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVkLCBJbWFnZVJlc2l6ZXJU
aHJlYWQKQEAgLTQ4LDU2ICs1Miw0MiBAQCBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CiAvLyBv
Y2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95ZWQuIElmIHRoZSBkb2N1bWVudCBpcyBkZXN0
cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2lsbCByZWNlaXZl
IGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50bHkgYmxvY2sgdGhlIGNhbGxiYWNrcyBmcm9t
CiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRS
ZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50ZWQ8QXN5bmNJbWFnZVJlc2l6ZXI+IHsKK2Ns
YXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1
YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZvIHsKLSAgICAgICAgQ2FsbGJhY2tJbmZvKFBh
c3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQorICAgICAgICBD
YWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6
ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VSZXNpemVyKGFzeW5jSW1hZ2VSZXNpemVyKQog
ICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFJl
ZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CisgICAgICAgIE93blB0
cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CiAgICAgICAgIFJlZlB0cjxC
bG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAgICBlbnVtIE91dHB1dFR5cGUgewogICAgICAg
ICBKUEVHLAogICAgICAgICBQTkcKICAgICB9OwogCi0gICAgZW51bSBBc3BlY3RSYXRpb09wdGlv
biB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCi0gICAgICAgIElnbm9yZUFzcGVjdFJh
dGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24gewotICAgICAgICBDb3Jy
ZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9yZU9yaWVudGF0aW9uCi0gICAgfTsKLQotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBjcmVhdGUoQ2FjaGVkSW1hZ2Uq
LCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3ND
YWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0
UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMgdm9pZCBzdGFydChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVm
UHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0lt
YWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBm
b3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFj
a3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhN
RTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8q
IEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0
ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAg
ICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVz
aXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJv
ckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25P
cHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBD
YWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0
cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hl
ZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFnZSogbV9jYWNoZWRJbWFnZTsKLSAgICBTY3Jp
cHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBTY3JpcHRWYWx1ZSBtX2Vycm9yQ2FsbGJh
Y2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0byBwYXNzIGludG8gSW1hZ2VSZXNpemVyVGhy
ZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxsYmFja0luZm87CisgICAgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworCiAgICAgT3V0cHV0VHlwZSBt
X291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9x
dWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAg
T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBSZWZQdHI8SW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKKyAgICBSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSZXNp
emVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgYi9XZWJDb3Jl
L2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5kZXggNWQ1OTIzZC4uMmZmNTFmNiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIsOSArMzIsMTcgQEAKICNpbmNsdWRlICJIVE1M
RG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1M
TmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNp
bmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNpbmNs
dWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFj
ZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1MSw0ICs0NTksMzQgQEAgdm9pZCBI
VE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpCiAgICAgSFRNTEVs
ZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7CiB9CiAKKyNpZiBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZShTdHJp
bmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNj
ZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JD
YWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zLCBFeGNlcHRp
b25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygpLmlzVmFsaWQoKSkgeworICAgICAgICBlYyA9
IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gVGhl
IHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxvd3MgZGF0YSBVUkxzLgorICAgIGlmIChkb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWludHNDYW52YXMoc3JjKCkpKSB7CisgICAgICAg
IGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZTsKKyAgICBpZiAobWltZVR5cGUgPT0g
ImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OkpQ
RUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0gImltYWdlL3BuZyIpCisgICAgICAgIG91dHB1
dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5HOworICAgIGVsc2UgeworICAgICAgICBlYyA9
IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgbV9pbWFnZUxvYWRl
ci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJl
c2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJ
bWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7
CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsK
IAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJp
ZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRl
ci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNl
bmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNjNWU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1l
bnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIC8vIE9iamVj
dGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBh
bHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRl
SW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5lZChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJiYg
RU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAgLy8gRnVuY3Rpb25zCisgICAgICAgIFtDdXN0
b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9NU3RyaW5nIG1pbWVUeXBlLCBpbiBJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbT3B0aW9uYWxdIGluIEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxsYmFjaywgW09wdGlvbmFsXSBpbiBSZXNpemVP
cHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRp
ZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmZmZjg2Ci0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAt
MCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBt
ZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUg
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFC
TEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tf
aApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRs
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2NiZjgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21v
ZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1JTUFH
RV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRE9NU3RyaW5nIGVycm9yKTsK
KyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NDAwZjMKLS0tIC9kZXYvbnVsbAor
KysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCAr
MSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQor
CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsK
KworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2
ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKikgPSAwOworfTsKKworfQorCisjZW5k
aWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBmZDg3ZgotLS0gL2Rldi9u
dWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBA
IC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAg
Q29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4g
QmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRl
eCAxYmFlNmEwLi42N2FmYzc4IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAt
MzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1hcEltYWdlLmgiCiAjaW5jbHVkZSAiSW1hZ2Uu
aCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUxLDcgQEAgc3RhdGljIHZvaWQgcmV0dXJuQmxv
Yk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1hdGlvbikKICAgICBkZWxldGUgY2FsbGJhY2tJ
bmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFy
ZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2Fs
bGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3Bl
Y3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6
OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNp
emVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwg
UmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6
ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQogewogICAgIElt
YWdlUmVzaXplclRocmVhZCogaW1hZ2VSZXNpemVyVGhyZWFkID0gbmV3IEltYWdlUmVzaXplclRo
cmVhZChjYWxsYmFja0luZm8sIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHF1YWxpdHksIGFz
cGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9wdGlvbik7CiAKQEAgLTYyLDcgKzYzLDcgQEAg
Ym9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBp
bWFnZURhdGEsIEFzeW5jSW1hZ2VSZXMKICAgICByZXR1cm4gaW1hZ2VSZXNpemVyVGhyZWFkLT5t
X3RocmVhZElEOwogfQogCi1JbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJh
dGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRp
b25PcHRpb24pCitJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChBc3luY0lt
YWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVy
OjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1
YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9u
LCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKICAg
ICA6IG1fdGhyZWFkSUQoMCkKICAgICAsIG1fY2FsbGJhY2tJbmZvKGNhbGxiYWNrSW5mbykKICAg
ICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclRocmVhZC5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCmlu
ZGV4IGFlNWFkZTUuLjk1NjIxNjEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJUaHJlYWQuaAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKQEAgLTM0
LDYgKzM0LDcgQEAKICNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKIAogI2luY2x1ZGUgIkFzeW5j
SW1hZ2VSZXNpemVyLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTQyLDExICs0MywxMSBAQCBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKIGNs
YXNzIEltYWdlUmVzaXplclRocmVhZCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIGJvb2wgc3RhcnQo
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNh
bGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2ly
ZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09w
dGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMg
Ym9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdl
UmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIElu
dFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVj
dFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7CiAgICAgfklt
YWdlUmVzaXplclRocmVhZCgpOwogCiBwcml2YXRlOgotICAgIEltYWdlUmVzaXplclRocmVhZChB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJl
c2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25P
cHRpb24pOworICAgIEltYWdlUmVzaXplclRocmVhZChBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJh
Y2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJv
dW5kcywgZG91YmxlIHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uLCBS
ZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbik7CiAgICAgc3RhdGljIHZvaWQqIGltYWdl
UmVzaXplclRocmVhZFN0YXJ0KHZvaWQqKTsKICAgICB2b2lkKiBpbWFnZVJlc2l6ZXJUaHJlYWQo
KTsKIApAQCAtNTgsOSArNTksOSBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxCaXRtYXBJbWFnZT4g
bV9pbWFnZTsKICAgICBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBtX291dHB1dFR5cGU7
CiAgICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9xdWFsaXR5OwotICAg
IEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9u
OwotICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9u
T3B0aW9uOworICAgIGRvdWJsZSBtX3F1YWxpdHk7CisgICAgUmVzaXplT3B0aW9uczo6QXNwZWN0
UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKKyAgICBSZXNpemVPcHRpb25zOjpPcmll
bnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIGIvV2Vi
Q29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLjJlNjQ5NjQKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0
aW9ucy5jcHAKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisg
KiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpZiBFTkFCTEUo
SU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlICJQ
bGF0Zm9ybVN0cmluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKy8vIEluY2x1c2l2ZSBs
aW1pdHM7CitzdGF0aWMgY29uc3QgaW50IGRpbWVuc2lvbnNMb3dlckxpbWl0ID0gMTsKK3N0YXRp
YyBjb25zdCBpbnQgZGltZW5zaW9uc1VwcGVyTGltaXQgPSAzMjc2NzsKK3N0YXRpYyBjb25zdCBk
b3VibGUgY29tcHJlc3Npb25Mb3dlckxpbWl0ID0gMC4wOworc3RhdGljIGNvbnN0IGRvdWJsZSBj
b21wcmVzc2lvblVwcGVyTGltaXQgPSAxLjA7CisKK3N0YXRpYyBjb25zdCBkb3VibGUgZGVmYXVs
dENvbXByZXNzaW9uID0gMC44NTsKKworUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBSZXNpemVP
cHRpb25zOjpjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgUmVzaXplT3B0aW9ucygpKTsg
fQorCitSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKCkKKyAgICA6IG1fd2lkdGgoKQorICAg
ICwgbV9oZWlnaHQoKQorICAgICwgbV9jb21wcmVzc2lvbkxldmVsKCkKKyAgICAsIG1fYXNwZWN0
UmF0aW9PcHRpb24oSWdub3JlQXNwZWN0UmF0aW8pCisgICAgLCBtX29yaWVudGF0aW9uT3B0aW9u
KElnbm9yZU9yaWVudGF0aW9uKQoreworfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldFdpZHRo
KGludCB3aWR0aCkgeyBtX3dpZHRoID0gd2lkdGggPj0gZGltZW5zaW9uc0xvd2VyTGltaXQgJiYg
d2lkdGggPD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyB3aWR0aCA6IDA7IH0KK2ludCBSZXNpemVP
cHRpb25zOjp3aWR0aCgpIHsgcmV0dXJuIG1fd2lkdGg7IH0KKwordm9pZCBSZXNpemVPcHRpb25z
OjpzZXRIZWlnaHQoaW50IGhlaWdodCkgeyBtX2hlaWdodCA9IGhlaWdodCA+PSBkaW1lbnNpb25z
TG93ZXJMaW1pdCAmJiBoZWlnaHQgPD0gZGltZW5zaW9uc1VwcGVyTGltaXQgPyBoZWlnaHQgOiAw
OyB9CitpbnQgUmVzaXplT3B0aW9uczo6aGVpZ2h0KCkgeyByZXR1cm4gbV9oZWlnaHQ7IH0KKwor
dm9pZCBSZXNpemVPcHRpb25zOjpzZXRDb21wcmVzc2lvbkxldmVsKGRvdWJsZSBjb21wcmVzc2lv
bkxldmVsKSB7IG1fY29tcHJlc3Npb25MZXZlbCA9IGNvbXByZXNzaW9uTGV2ZWwgPj0gY29tcHJl
c3Npb25Mb3dlckxpbWl0ICYmIGNvbXByZXNzaW9uTGV2ZWwgPD0gY29tcHJlc3Npb25VcHBlckxp
bWl0ID8gY29tcHJlc3Npb25MZXZlbCA6IGRlZmF1bHRDb21wcmVzc2lvbjsgfQorZG91YmxlIFJl
c2l6ZU9wdGlvbnM6OmNvbXByZXNzaW9uTGV2ZWwoKSB7IHJldHVybiBtX2NvbXByZXNzaW9uTGV2
ZWw7IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHBy
ZXNlcnZlQXNwZWN0UmF0aW8pIHsgbV9hc3BlY3RSYXRpb09wdGlvbiA9IHByZXNlcnZlQXNwZWN0
UmF0aW8gPyBQcmVzZXJ2ZUFzcGVjdFJhdGlvIDogSWdub3JlQXNwZWN0UmF0aW87IH0KK1Jlc2l6
ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIFJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0
aW9uKCkgeyByZXR1cm4gbV9hc3BlY3RSYXRpb09wdGlvbjsgfQorCit2b2lkIFJlc2l6ZU9wdGlv
bnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbikgeyBtX29y
aWVudGF0aW9uT3B0aW9uID0gb3JpZW50YXRpb25PcHRpb24gPT0gImF1dG8iID8gQ29ycmVjdE9y
aWVudGF0aW9uIDogSWdub3JlT3JpZW50YXRpb247IH0KK1Jlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0
aW9uT3B0aW9uIFJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKCkgeyByZXR1cm4gbV9v
cmllbnRhdGlvbk9wdGlvbjsgfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAv
LyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9SZXNpemVP
cHRpb25zLmggYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmU4N2IxZDEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0
bWwvUmVzaXplT3B0aW9ucy5oCkBAIC0wLDAgKzEsODcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICog
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFJlc2l6ZU9wdGlvbnNf
aAorI2RlZmluZSBSZXNpemVPcHRpb25zX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQor
CisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgUmVzaXpl
T3B0aW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFJlc2l6ZU9wdGlvbnM+IHsKK3B1YmxpYzoKKyAg
ICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKKyAgICAgICAgUHJlc2VydmVBc3BlY3RSYXRpbywK
KyAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KKyAgICB9OworCisgICAgZW51bSBPcmllbnRhdGlv
bk9wdGlvbiB7CisgICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKKyAgICAgICAgSWdub3JlT3Jp
ZW50YXRpb24KKyAgICB9OworCisgICAgc3RhdGljIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4g
Y3JlYXRlKCk7CisKKyAgICB2b2lkIHNldFdpZHRoKGludCB3aWR0aCk7CisgICAgaW50IHdpZHRo
KCk7CisKKyAgICB2b2lkIHNldEhlaWdodChpbnQgaGVpZ2h0KTsKKyAgICBpbnQgaGVpZ2h0KCk7
CisKKyAgICB2b2lkIHNldENvbXByZXNzaW9uTGV2ZWwoZG91YmxlIGNvbXByZXNzaW9uTGV2ZWwp
OworICAgIGRvdWJsZSBjb21wcmVzc2lvbkxldmVsKCk7CisKKyAgICB2b2lkIHNldEFzcGVjdFJh
dGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbyk7CisgICAgQXNwZWN0UmF0aW9PcHRp
b24gYXNwZWN0UmF0aW9PcHRpb24oKTsKKworICAgIHZvaWQgc2V0T3JpZW50YXRpb25PcHRpb24o
U3RyaW5nIG9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRh
dGlvbk9wdGlvbigpOworCitwcml2YXRlOgorICAgIFJlc2l6ZU9wdGlvbnMoKTsKKworICAgIC8v
IElmIG1fd2lkdGggb3IgbV9oZWlnaHQgPT0gMCwgdGhhdCBkaW1lbnNpb24gd2lsbCBub3QgY2hh
bmdlIGV4cGxpY2l0bHkgZHVyaW5nIHJlc2l6aW5nLgorICAgIGludCBtX3dpZHRoOworICAgIGlu
dCBtX2hlaWdodDsKKyAgICBkb3VibGUgbV9jb21wcmVzc2lvbkxldmVsOworICAgIEFzcGVjdFJh
dGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247CisgICAgT3JpZW50YXRpb25PcHRpb24gbV9v
cmllbnRhdGlvbk9wdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlm
IC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gUmVzaXplT3B0aW9uc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59474</attachid>
            <date>2010-06-22 21:43:39 -0700</date>
            <delta_ts>2010-06-22 21:57:18 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>96749</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi45MWRmNjgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2lt
YWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVu
bG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanM6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorCiAyMDEwLTA2LTE4ICBK
dXN0aW4gR2FyY2lhICA8anVzdGluLmdhcmNpYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgT2phbiBWYWZhaS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGQ3ZWE4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTA2IEBACitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRz
IHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VS
UjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5k
ZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5j
dGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTk9UX1NVUFBP
UlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1
bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRo
IGdldHRlciBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmci
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVu
Y3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVl
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVj
dFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2hlaWdodDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhy
b3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0
eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJl
c2VydmVBc3BlY3RSYXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5p
dHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVk
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9h
cmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmM1OTZiNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44ZjY4ZjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0IGFuIGltYWdl
IHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFeGNlcHRpb24gd2FzIGNv
cnJlY3RseSB0aHJvd246IEVycm9yOiBJTlZBTElEX1NUQVRFX0VSUjogRE9NIEV4Y2VwdGlvbiAx
MQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY4ZjFl
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkCkBAIC0w
LDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJzY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDgxZDEzYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACittYWluIGZy
YW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFj
a3Mgd2lsbCBub3QgZXhlY3V0ZSBhZnRlciBvbnVubG9hZC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgTm8gY2FsbGJhY2tzIGNhbGxlZCBhZnRlciB1bmxvYWQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxv
YWQuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTBh
YTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdl
YmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlODJjNjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJp
ZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyA0MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk2ZjljNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3Zl
cnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0
LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUz
ZGUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1MzY3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsx
LDE0NiBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1
bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24g
c2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lv
bik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91
bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQor
CitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0
ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAg
IGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Np
b24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0p
KCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24s
ICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJv
dyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24o
KSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRo
cm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhy
b3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24o
KSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsK
K3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bigpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVf
cmVjdC5qcGciOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikn
LCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7CisK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
biknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1
bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24g
OScpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5
RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkp
JywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbiknLCB0cnVlLCAnRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0
MiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dHJ1ZX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTotSW5m
aW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNl
KTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxs
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2Jq
ZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNl
cHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3dpZHRoOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dp
ZHRoOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3
aWR0aDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5k
ZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dHJ1ZX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDotSW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsK
KwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5l
ZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0aW9u
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5pdHl9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KScsIGZhbHNlKTsKKword2luZG93LmpzVGVzdElzQXN5bmMg
PSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1z
b3VyY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFkOTU3NwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMKQEAgLTAsMCAr
MSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ug
d2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uIik7CisKK3ZhciBpID0g
bmV3IEltYWdlKCk7CitpLnNyYyA9IG51bGw7CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rp
b24oKSB7fTsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgewor
CQlpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RG
YWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2Vk
KCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0
KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWE4NmRmMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDI1IEBA
CitkZXNjcmlwdGlvbigiRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFja3Mgd2lsbCBub3QgZXhlY3V0
ZSBhZnRlciBvbnVubG9hZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gIi4u
L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5j
dGlvbigpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dCgndGVzdFBhc3NlZCgiTm8gY2FsbGJhY2tz
IGNhbGxlZCBhZnRlciB1bmxvYWQiKTsgZmluaXNoSlNUZXN0KCk7JywgMTAwKTsKK30KKworZG9j
dW1lbnQuYm9keS5vbnVubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGkud2Via2l0R2V0SW1hZ2Uo
CisgICAgICAgICJpbWFnZS9wbmciLAorICAgICAgICBmdW5jdGlvbihibG9iKSB7CisgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIHN1Y2Nlc3MgY2FsbGJh
Y2suIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSwKKyAgICAgICAg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgd2Vi
a2l0R2V0SW1hZ2UgZXJyb3IgY2FsbGJhY2s6ICIgKyBlcnJvcik7CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICk7Cit9CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li41NWVmZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMiBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9y
ZWN0LmpwZyI7CisKK2kud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9
Cit2YXIgcmVzdWx0ID0gaS53ZWJraXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8ocmVz
dWx0KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5hNjY0ZjNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFj
a3MuanMKQEAgLTAsMCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNhbGxi
YWNrcyB3b3JrIGNvcnJlY3RseS4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0g
Ii4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9IGZ1
bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNh
bGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsKKyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxsYmFj
ayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogIiArIGVycm9yKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVu
dGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5z
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44YzAxODMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29y
cmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxs
YmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3
aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1j
YWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5jMjY1MDJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0OGVm
ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24gYW4g
aW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246IEVycm9y
OiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRt
bC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uMmUxYzU1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBs
b2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBlbmRDaGls
ZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBlbXB0eUNh
bGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhjZXB0aW9u
Iik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBleGNlcHRp
b246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25l
KCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJbWFnZS53
ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmln
aW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC8u
Li8uLi9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIiAv
PgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGFlYjRi
NjguLjAxYzJhNWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYyLDYgKzI2Miw4IEBAIFNFVChXZWJDb3JlX0lETF9G
SUxFUwogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuaWRsCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAg
IGh0bWwvVmFsaWRpdHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkzYTEyMS4uN2NiMDY4ZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2NSBAQAor
MjAxMC0wNi0yMSAgU3RlcmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBFeHBv
c2VkIHRoZSBpbWFnZSByZXNpemluZyBBUEkgdG8gSlNDLCBidXQgaXQgaXMgZnVuY3Rpb25hbGx5
IGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRk
ZWQgZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOiBEaXR0by4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOiBEaXR0by4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS5neXBpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3Jl
LnByaTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcm86IERpdHRvLgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUmVz
aXplT3B0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtp
dEdldEltYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bTogQ2hhbmdlZCB0byBjb252ZXJ0IFN0cmluZ3MgdG8gSlNTdHJpbmdzIGNvcnJlY3RseSBpbiBj
YWxsYmFja3MuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrLmNwcDogQ2hhbmdlZCBiaW5kaW5ncy10ZXN0IGZvciBhYm92ZS4KKyAgICAgICAgKFdlYkNv
cmU6OkpTVGVzdENhbGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJhbSk6CisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdl
UmVzaXplcjo6c3RhcnQpOiBDbGllbnQgb2YgdGhpcyBjbGFzcyBubyBsb25nZXIgZG9lcyBhbnkg
cmVmY291bnRpbmcKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0lt
YWdlUmVzaXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
Om5vdGlmeUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1h
Z2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2Vi
Q29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJl
c2l6ZXI6OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vz
c2V0aWVzLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9u
IG9mIEpTIGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjazo6fkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAq
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw6IEFkZGVkLgorICAgICAgICAqIGh0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjp+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw6IEFk
ZGVkLgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6c3RhcnQpOiBSZWZhY3RvcmVkLgorICAgICAgICAo
V2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQpOiAgUmVmYWN0
b3JlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oOiBSZWZhY3RvcmVkLgor
ICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
V2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6d2lkdGgpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlc2l6ZU9wdGlvbnM6OmhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRDb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6
OmNvbXByZXNzaW9uTGV2ZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
QXNwZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6YXNw
ZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0T3Jp
ZW50YXRpb25PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6b3JpZW50
YXRpb25PcHRpb24pOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKIDIwMTAtMDYtMTggIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZDogUXQg
YnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA3YWMzZTUxLi5jZTVjOGYzIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcApAQCAtMTgwLDYgKzE4MCw4IEBACiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmNwcCIKICNp
bmNsdWRlICJKU0lEQlN1Y2Nlc3NFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNJbWFnZURhdGEuY3Bw
IgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiCisjaW5jbHVkZSAi
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTSW5kZXhlZERh
dGFiYXNlUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcCIK
ICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuY3BwIgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDdlYzkx
NWYuLjMxNmRlNTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIyMyw2ICsyMjMsOCBAQCBET01fQ0xB
U1NFUyA9IFwKICAgICBJREJSZXF1ZXN0IFwKICAgICBJREJTdWNjZXNzRXZlbnQgXAogICAgIElt
YWdlRGF0YSBcCisgICAgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIFwKKyAgICBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrIFwKICAgICBJbmRleGVkRGF0YWJhc2VSZXF1ZXN0IFwKICAgICBJ
bmplY3RlZFNjcmlwdEhvc3QgXAogICAgIEluc3BlY3RvckJhY2tlbmQgXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggZTc4
NTc0OS4uZWRiYWM3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNzUsNiArMjc1LDggQEAgSURMX0JJTkRJTkdTICs9
IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5pZGwgXAorCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogCVdlYkNvcmUvaHRtbC9WYWxpZGl0eVN0YXRlLmlkbCBcCiAJV2ViQ29yZS9o
dG1sL1ZvaWRDYWxsYmFjay5pZGwgXApAQCAtNDU1LDYgKzQ1Nyw3IEBAIHdlYmNvcmVfc291cmNl
cyArPSBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3Bw
IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAg
XAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAor
CVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5oIFwKIAlXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKQEAgLTEyNjcsNiArMTI3MCw4
IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxWaWV3U291cmNlRG9j
dW1lbnQuaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5jcHAgXAogCVdlYkNvcmUvaHRtbC9J
bWFnZURhdGEuaCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBc
CisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIFwKIAlXZWJDb3Jl
L2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXpl
clRocmVhZC5oIFwKIAlXZWJDb3JlL2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwIFwKQEAgLTEyNzQs
NiArMTI3OSw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL01lZGlhRXJy
b3IuaCBcCiAJV2ViQ29yZS9odG1sL1ByZWxvYWRTY2FubmVyLmNwcCBcCiAJV2ViQ29yZS9odG1s
L1ByZWxvYWRTY2FubmVyLmggXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcCBcCisJ
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5j
cHAgXAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuaCBcCiAJV2ViQ29yZS9odG1sL1RleHRNZXRy
aWNzLmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQppbmRleCBmMmNkZDY3Li5mOWViMjEwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTg3LDYgKzE4Nyw4IEBACiAg
ICAgICAgICAgICAnaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuaWRs
JywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwnLAor
ICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwnLAogICAgICAg
ICAgICAgJ2h0bWwvTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGV4dE1ldHJp
Y3MuaWRsJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuaWRsJywKQEAgLTU3MSw2ICs1
NzMsNyBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1
c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRD
dXN0b20uY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1
c3RvbS5jcHAnLApAQCAtMTY1Niw2ICsxNjU5LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxW
aWV3U291cmNlRG9jdW1lbnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuY3BwJywK
ICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQu
Y3BwJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5oJywKICAgICAgICAg
ICAgICdodG1sL0xhYmVsc05vZGVMaXN0LmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNv
cmUucHJpIGIvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCAyNWM5NWZmLi40ZTZlZmU3IDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAg
LTQyMiw2ICs0MjIsOCBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwgXAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSW1h
Z2VEYXRhLmlkbCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisg
ICAgaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICBodG1sL01lZGlh
RXJyb3IuaWRsIFwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbCBcCiAgICAgaHRtbC9UaW1lUmFu
Z2VzLmlkbCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJD
b3JlLnBybwppbmRleCA5MmE3NzVjLi4zNTUyMzI1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUucHJvCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KQEAgLTMxNSw2ICszMTUsNyBAQCBTT1VS
Q0VTICs9IFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBi
aW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisgICAgYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1M
SW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxl
bWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCBcCkBAIC03MDQsNiArNzA1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgaHRtbC9J
bWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmNwcCBcCiAg
ICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5jcHAg
XAogICAgIGh0bWwvU3RlcFJhbmdlLmNwcCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmNwcCBc
CiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcCBcCkBAIC0xNDM2LDkgKzE0MzgsMTIg
QEAgSEVBREVSUyArPSBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggXAogICAgIGh0bWwv
SFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKICAgICBodG1sL0ltYWdlRGF0YS5oIFwKKyAgICBo
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmggXAorICAg
IGh0bWwvUmVzaXplT3B0aW9ucy5oIFwKICAgICBodG1sL1N0ZXBSYW5nZS5oIFwKICAgICBodG1s
L1RpbWVSYW5nZXMuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4uMDE3ZTM3YiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2ICszNzY2MSwxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxl
DQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
Y3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAg
LTM3Njg5LDYgKzM3Njk3LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5jcHAiDQorCQkJCT4NCisJCQk8
L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6ZU9wdGlv
bnMuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGh0bWxcU3RlcFJhbmdlLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC00MDEyOCw3
ICs0MDE0NCw5IEBACiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJ
CQkJPEZpbGUNCisKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxFbWJl
ZEVsZW1lbnRDdXN0b20uY3BwIg0KKwogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24N
CiAJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCkBAIC00MDM4OCw2ICs0MDQwNiw1OSBAQAogCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCisJCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNw
cCINCisJCQkJCT4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
fFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJ
CQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJ
TmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJ
CQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJh
dGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0ludGVybmFsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIi
DQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29s
DQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJS
ZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJ
CQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJ
CQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0
aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8
L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpT
SFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAiDQogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAz
MGIyOWQuLjIyOGMwNDAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0zNTA5LDYgKzM1MDksMTUgQEAKIAkJQjAxNDlFN0UxMUE0QjIxNTAwMTk2QTdCIC8q
IEFzeW5jSW1hZ2VSZXNpemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMDE0OUU3QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIu
aCAqLzsgfTsKIAkJQjAxNDlFN0YxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVh
ZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0
OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLzsgfTsKIAkJ
QjAxNDlFODAxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0MxMUE0QjIxNTAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovOyB9OworCQlCMDRFNkJGMjExQzZGMEU5
MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlv
bnMuaCAqLzsgfTsKKwkJQjA0RTZCRjUxMUM3RjA3OTAwMjE0MjgzIC8qIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QTEx
QUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIwNEY1OUZGMTFDNkFGRDYw
MDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8q
IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi87IH07CisJCUIwQTcxNTFCMTFDQzI0RUUw
MDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRp
b25zLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjgxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oICovOyB9OworCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QkExMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKIAkJQjIwMTExMDcwQUI3NzQw
NTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVs
ZW1lbnQuY3BwICovOyB9OwogCQlCMjAxMTEwODBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIw
MTExMDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLzsgfTsKIAkJQjIxMTI3
QTYwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMTEyN0E1MEIzMTg2NzcwMDA5QkU1
MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi87IH07CkBAIC04ODQ1LDYgKzg4NTQsMTcgQEAK
IAkJQjAxNDlFN0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzeW5jSW1hZ2VSZXNpemVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdCMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1h
Z2VSZXNpemVyVGhyZWFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjAxNDlF
N0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJUaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDE0QTA0
QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMg
LyogUmVzaXplT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNp
emVPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEY1OUZEMTFDNkFG
RDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJl
c2l6ZU9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVz
aXplT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTc5MTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1N0ExMUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNDExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdB
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjExMjdBNTBCMzE4Njc3MDAwOUJF
NTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNTVkdQT0RUeXBlV3JhcHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTM2OTksNiArMTM3MTksMTAgQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyog
SW1hZ2VEYXRhLmNwcCAqLywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VE
YXRhLmggKi8sCiAJCQkJQTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5pZGwg
Ki8sCisJCQkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCAqLywKKwkJCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIElt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTdBMTFEMDFCMjEwMDND
MzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCUIwMTQ5RTdC
MTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5
RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2
RkEyNDExQUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLApAQCAtMTM3MDks
NiArMTM3MzMsOCBAQAogCQkJCUU0NDYxMzlDMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9y
LmlkbCAqLywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIu
Y3BwICovLAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5o
ICovLAorCQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAq
LywKKwkJCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovLAog
CQkJCUE1QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuY3BwICovLAogCQkJCUE1
QUZCMzRFMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAqLywKIAkJCQlCQ0VGNDVFODBF
Njg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAgLTEzOTQ4LDYgKzEzOTc0LDEw
IEBACiAJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTSFRNTFZpZGVvRWxlbWVudC5o
ICovLAogCQkJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5jcHAgKi8s
CiAJCQkJQTc3OTc5MjUwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggKi8sCisJCQkJ
QjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5j
cHAgKi8sCisJCQkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzE1QjYxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCiAJCQkJNDlFRUNFRjgx
MDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5jcHAgKi8sCiAJCQkJNDlFRUNFRjkxMDUw
NzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5oICovLAogCQkJCTQ5RUVDRUY2MTA1MDcwQzQw
MDA5OUZBQiAvKiBKU0ludDMyQXJyYXkuY3BwICovLApAQCAtMTU1MTMsNiArMTU1NDMsNyBAQAog
CQkJCUJDMkVEN0E0MEM2QzBGMzYwMDkyMEJGRiAvKiBKU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20u
Y3BwICovLAogCQkJCUJDRDQxQUJBMEMwNjBERTgwMEMwRTQ0NiAvKiBKU0hUTUxGcmFtZVNldEVs
ZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMkVENjRGMEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hU
TUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVB
QzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0M0Mzg3NzBFODg2
Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzMw
NUNBMzBDMDc4MUJCMDBDRDIwRjAgLyogSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgKi8s
CiAJCQkJNDQ4QUQyN0EwQTQ4MTM3OTAwMjNEMTc5IC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCAqLywKQEAgLTE4MTE5LDYgKzE4MTUwLDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNF
QkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgy
NTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
QzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUIwMTQ5RTgwMTFB
NEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdlU291cmNlQ0cuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTgzNTEsNiArMTgzODQsOCBAQAogCQkJCUM1NkM5MUE3MTE5RDkxODcwMERF
NENEOSAvKiBKU0lEQlN1Y2Nlc3NFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM2QzQ5RjQw
RDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQTc3OTc5MjkwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCQTExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUM1RjRG
NDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTdBMEU3NkRCMTBCRjA1OTgwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0
SG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFGMDYwQ0UwRjVFRUIyQjAwQTA3RUFDIC8qIEpT
SW5zcGVjdG9yQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCkBAIC0xODg4NSw2ICsxODkyMCw3IEBA
CiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2QzJGMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGMjExQzZG
MEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0Rjcx
NDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIwNjU0LDYgKzIwNjkwLDcgQEAKIAkJCQlCQzQ5MThDODBCRkVB
MDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1M
SW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwNEY1OUZGMTFDNkFGRDYwMDBC
NUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0RWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVt
ZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk5MEExQ0REMkQwMEI0MkIy
NSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIwNzEyLDYg
KzIwNzQ5LDggQEAKIAkJCQlCQzZDNDlGMzBEN0RCQTA1MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0
cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3Nzk3OTI4MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBN0QwMzE4RTBFOTM1NDAzMDBF
MjRBQ0QgLyogSlNJbWFnZURhdGFDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1
QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVGNEY0MTAxMTkzMDZD
MDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk3QTBFNzZEQTEwQkYwNTk4MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2RDUxMEJGMDUwNzAwQTAyNzZFIC8qIEpTSW5qZWN0
ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjEyNTksNiArMjEyOTgs
NyBAQAogCQkJCUE4OUNDQzUyMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFu
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzMwOUUwOTA5OUU2NDkyMDA1NkU1ODEg
LyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNCMTZD
MkUwOTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBB
NzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM0RjcxM0UwRDVBNkYyODAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxNEM3NjUwMENFOTIzNEUwMDdFRjNDRCAvKiBSZXNvdXJjZUVy
cm9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2NzgwQ0U5MjNBMTAwN0VGM0NEIC8q
IFJlc291cmNlSGFuZGxlLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmZjM2M2ODkKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKQEAgLTAsMCArMSwxNjQgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiSlNIVE1M
SW1hZ2VFbGVtZW50LmgiCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRlICJIVE1M
SW1hZ2VFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgi
CisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlIDxydW50aW1lL0pTRnVuY3Rpb24uaD4KKyNpbmNs
dWRlIDxydW50aW1lL0pTU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL0dldFB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorCit1c2luZyBu
YW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQYXNzUmVmUHRy
PEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRzKCZKU0Z1bmN0aW9uOjpp
bmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIp
OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNP
YmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6
Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3RhdGljIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhF
eGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
dmFsdWUpCit7CisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBp
cyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmlu
ZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRz
KCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQ
RV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVj
dCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQ
YXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZVJlc2l6ZU9wdGlvbnMoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHZhbHVlKQoreworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVP
cHRpb25zID0gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCk7CisKKyAgICAvLyBBcmd1bWVudCBpcyBv
cHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2Vk
LgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKSB7CisgICAgICAgIC8vIFVzZSBk
ZWZhdWx0IG9wdGlvbnMuCisgICAgICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsK
KyAgICB9CisgICAgSlNPYmplY3QqIG9iamVjdCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisg
ICAgSlNWYWx1ZSB3aWR0aCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgIndp
ZHRoIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKCF3aWR0aC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMt
PnNldFdpZHRoKHdpZHRoLnRvSW50MzIoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIGhl
aWdodCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgImhlaWdodCIpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICgh
aGVpZ2h0LmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0SGVpZ2h0
KGhlaWdodC50b0ludDMyKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBjb21wcmVzc2lv
bkxldmVsID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY29tcHJlc3Npb25M
ZXZlbCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAw
OworICAgIGlmICghY29tcHJlc3Npb25MZXZlbC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJl
c2l6ZU9wdGlvbnMtPnNldENvbXByZXNzaW9uTGV2ZWwoY29tcHJlc3Npb25MZXZlbC50b051bWJl
cihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9i
amVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBp
ZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVP
cHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVh
bihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdl
dChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghb3JpZW50YXRpb24u
aXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9w
dGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAg
ICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRlKiBleGVjKQoreworICAg
IEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVz
dHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7CisKKyAgICBS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVh
dGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9i
YWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgx
KSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMt
PmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhl
Yy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAg
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25z
KGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChyZXNpemVPcHRpb25z
KTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVs
ZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nl
c3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRp
b25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2Vu
ZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRmMCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTc5LDcgKzIxNzksMTEgQEAg
c3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAgICBmb3JlYWNo
IG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAk
cGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAg
IGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAgICAgICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJh
bU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3Bh
cmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKICAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9vbCByYWlzZWRFeGNlcHRpb24g
PSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrLmNwcAorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5
LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0o
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAgICBFeGVjU3RhdGUqIGV4ZWMg
PSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBh
cmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3MyUGFyYW0pKTsKLSAgICBhcmdz
LmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4
ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTsKICAgICBt
X2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3lu
Y0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2NCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNpbmNsdWRlICJBc3luY0ltYWdl
UmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXpl
T3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0
eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVy
PiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0
cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1
Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwg
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9y
aWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hl
ZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNp
emVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIo
Y2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0
aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3JpcHRFeGVjdXRpb25Db250ZXh0
LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
LCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNp
emVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFs
dWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorQXN5bmNJ
bWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlw
ZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3Vj
Y2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9y
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucykKICAgICA6
IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBl
KQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJv
ckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkK
LSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1
YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAg
ICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXpl
T3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5p
c09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBB
c3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8o
dGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hl
ZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDExICs3MSwyMSBAQCB2b2lkIEFz
eW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVz
b3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVz
b3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQo
dGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZv
KHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNh
bGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9h
c3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJl
c2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlw
ZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVp
Z2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRp
b25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0
aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNp
emVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3ND
YWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCBibG9iLmdldCgp
KTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IoKQoreworICAgIGlm
IChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxl
RXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBlY3RlZCBlcnJvciB3aGlsZSBy
ZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAv
LyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9Bc3luY0lt
YWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKaW5kZXggM2Vl
ZWVhZC4uMWIzZWFiOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKQEAgLTM1LDEyICszNSwx
NSBAQAogCiAjaW5jbHVkZSAiQmxvYi5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50
LmgiCi0jaW5jbHVkZSAiU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBDYWNoZWRJbWFnZTsKK2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s7CitjbGFz
cyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQ7
CitjbGFzcyBSZXNpemVPcHRpb25zOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIAog
Ly8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJbWFnZSB0aGF0IGlzIHBh
c3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0cyBhbiBJbWFnZVJlc2l6
ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVkLCBJbWFnZVJlc2l6ZXJU
aHJlYWQKQEAgLTQ4LDU2ICs1MSw0MiBAQCBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CiAvLyBv
Y2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95ZWQuIElmIHRoZSBkb2N1bWVudCBpcyBkZXN0
cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2lsbCByZWNlaXZl
IGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50bHkgYmxvY2sgdGhlIGNhbGxiYWNrcyBmcm9t
CiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRS
ZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50ZWQ8QXN5bmNJbWFnZVJlc2l6ZXI+IHsKK2Ns
YXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1
YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZvIHsKLSAgICAgICAgQ2FsbGJhY2tJbmZvKFBh
c3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQorICAgICAgICBD
YWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6
ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VSZXNpemVyKGFzeW5jSW1hZ2VSZXNpemVyKQog
ICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFJl
ZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CisgICAgICAgIE93blB0
cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CiAgICAgICAgIFJlZlB0cjxC
bG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAgICBlbnVtIE91dHB1dFR5cGUgewogICAgICAg
ICBKUEVHLAogICAgICAgICBQTkcKICAgICB9OwogCi0gICAgZW51bSBBc3BlY3RSYXRpb09wdGlv
biB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCi0gICAgICAgIElnbm9yZUFzcGVjdFJh
dGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24gewotICAgICAgICBDb3Jy
ZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9yZU9yaWVudGF0aW9uCi0gICAgfTsKLQotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBjcmVhdGUoQ2FjaGVkSW1hZ2Uq
LCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3ND
YWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0
UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMgdm9pZCBzdGFydChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVm
UHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0lt
YWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBm
b3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFj
a3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhN
RTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8q
IEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0
ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAg
ICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVz
aXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJv
ckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25P
cHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBD
YWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0
cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hl
ZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFnZSogbV9jYWNoZWRJbWFnZTsKLSAgICBTY3Jp
cHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBTY3JpcHRWYWx1ZSBtX2Vycm9yQ2FsbGJh
Y2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0byBwYXNzIGludG8gSW1hZ2VSZXNpemVyVGhy
ZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxsYmFja0luZm87CisgICAgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworCiAgICAgT3V0cHV0VHlwZSBt
X291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9x
dWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAg
T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBSZWZQdHI8SW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKKyAgICBSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSZXNp
emVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgYi9XZWJDb3Jl
L2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5kZXggNWQ1OTIzZC4uMmZmNTFmNiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIsOSArMzIsMTcgQEAKICNpbmNsdWRlICJIVE1M
RG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1M
TmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNp
bmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNpbmNs
dWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFj
ZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1MSw0ICs0NTksMzQgQEAgdm9pZCBI
VE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpCiAgICAgSFRNTEVs
ZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7CiB9CiAKKyNpZiBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZShTdHJp
bmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNj
ZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JD
YWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zLCBFeGNlcHRp
b25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygpLmlzVmFsaWQoKSkgeworICAgICAgICBlYyA9
IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gVGhl
IHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxvd3MgZGF0YSBVUkxzLgorICAgIGlmIChkb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWludHNDYW52YXMoc3JjKCkpKSB7CisgICAgICAg
IGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZTsKKyAgICBpZiAobWltZVR5cGUgPT0g
ImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OkpQ
RUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0gImltYWdlL3BuZyIpCisgICAgICAgIG91dHB1
dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5HOworICAgIGVsc2UgeworICAgICAgICBlYyA9
IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgbV9pbWFnZUxvYWRl
ci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJl
c2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJ
bWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7
CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsK
IAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJp
ZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRl
ci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNl
bmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNjNWU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1l
bnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIC8vIE9iamVj
dGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBh
bHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRl
SW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5lZChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJiYg
RU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAgLy8gRnVuY3Rpb25zCisgICAgICAgIFtDdXN0
b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9NU3RyaW5nIG1pbWVUeXBlLCBpbiBJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbT3B0aW9uYWxdIGluIEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxsYmFjaywgW09wdGlvbmFsXSBpbiBSZXNpemVP
cHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRp
ZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmZmZjg2Ci0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAt
MCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBt
ZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUg
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFC
TEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tf
aApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRs
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2NiZjgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21v
ZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1JTUFH
RV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRE9NU3RyaW5nIGVycm9yKTsK
KyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NDAwZjMKLS0tIC9kZXYvbnVsbAor
KysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCAr
MSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQor
CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsK
KworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2
ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKikgPSAwOworfTsKKworfQorCisjZW5k
aWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBmZDg3ZgotLS0gL2Rldi9u
dWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBA
IC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAg
Q29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4g
QmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRl
eCAxYmFlNmEwLi42N2FmYzc4IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAt
MzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1hcEltYWdlLmgiCiAjaW5jbHVkZSAiSW1hZ2Uu
aCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUxLDcgQEAgc3RhdGljIHZvaWQgcmV0dXJuQmxv
Yk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1hdGlvbikKICAgICBkZWxldGUgY2FsbGJhY2tJ
bmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFy
ZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2Fs
bGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3Bl
Y3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6
OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNp
emVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwg
UmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6
ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQogewogICAgIElt
YWdlUmVzaXplclRocmVhZCogaW1hZ2VSZXNpemVyVGhyZWFkID0gbmV3IEltYWdlUmVzaXplclRo
cmVhZChjYWxsYmFja0luZm8sIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHF1YWxpdHksIGFz
cGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9wdGlvbik7CiAKQEAgLTYyLDcgKzYzLDcgQEAg
Ym9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBp
bWFnZURhdGEsIEFzeW5jSW1hZ2VSZXMKICAgICByZXR1cm4gaW1hZ2VSZXNpemVyVGhyZWFkLT5t
X3RocmVhZElEOwogfQogCi1JbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJh
dGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRp
b25PcHRpb24pCitJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChBc3luY0lt
YWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVy
OjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1
YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9u
LCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKICAg
ICA6IG1fdGhyZWFkSUQoMCkKICAgICAsIG1fY2FsbGJhY2tJbmZvKGNhbGxiYWNrSW5mbykKICAg
ICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclRocmVhZC5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCmlu
ZGV4IGFlNWFkZTUuLjE1YmQzYmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJUaHJlYWQuaAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKQEAgLTM0
LDYgKzM0LDggQEAKICNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKIAogI2luY2x1ZGUgIkFzeW5j
SW1hZ2VSZXNpemVyLmgiCisjaW5jbHVkZSAiSW50U2l6ZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9w
dGlvbnMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MiwxMSArNDQsMTEgQEAgY2xh
c3MgU2hhcmVkQnVmZmVyOwogCiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQgewogcHVibGljOgot
ICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEs
IEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlv
bk9wdGlvbik7CisgICAgc3RhdGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+
IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGRvdWJsZSBxdWFsaXR5
LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50
YXRpb25PcHRpb24pOwogICAgIH5JbWFnZVJlc2l6ZXJUaHJlYWQoKTsKIAogcHJpdmF0ZToKLSAg
ICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFz
eW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0
IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5
bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRU
eXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGRvdWJsZSBxdWFsaXR5LCBSZXNpemVPcHRpb25z
OjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24pOwog
ICAgIHN0YXRpYyB2b2lkKiBpbWFnZVJlc2l6ZXJUaHJlYWRTdGFydCh2b2lkKik7CiAgICAgdm9p
ZCogaW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAKQEAgLTU4LDkgKzYwLDkgQEAgcHJpdmF0ZToKICAg
ICBSZWZQdHI8Qml0bWFwSW1hZ2U+IG1faW1hZ2U7CiAgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91
dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwogICAgIEludFNpemUgbV9kZXNpcmVkQm91bmRzOwotICAg
IGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRp
b24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRp
b25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBkb3VibGUgbV9xdWFsaXR5OworICAg
IFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Cisg
ICAgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9S
ZXNpemVPcHRpb25zLmNwcCBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZTY0OTY0Ci0tLSAvZGV2L251bGwKKysrIGIv
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwCkBAIC0wLDAgKzEsNzUgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJp
YnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhl
IG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICog
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiUmVzaXplT3B0
aW9ucy5oIgorCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCisvLyBJbmNsdXNpdmUgbGltaXRzOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25z
TG93ZXJMaW1pdCA9IDE7CitzdGF0aWMgY29uc3QgaW50IGRpbWVuc2lvbnNVcHBlckxpbWl0ID0g
MzI3Njc7CitzdGF0aWMgY29uc3QgZG91YmxlIGNvbXByZXNzaW9uTG93ZXJMaW1pdCA9IDAuMDsK
K3N0YXRpYyBjb25zdCBkb3VibGUgY29tcHJlc3Npb25VcHBlckxpbWl0ID0gMS4wOworCitzdGF0
aWMgY29uc3QgZG91YmxlIGRlZmF1bHRDb21wcmVzc2lvbiA9IDAuODU7CisKK1Bhc3NSZWZQdHI8
UmVzaXplT3B0aW9ucz4gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYo
bmV3IFJlc2l6ZU9wdGlvbnMoKSk7IH0KKworUmVzaXplT3B0aW9uczo6UmVzaXplT3B0aW9ucygp
CisgICAgOiBtX3dpZHRoKCkKKyAgICAsIG1faGVpZ2h0KCkKKyAgICAsIG1fY29tcHJlc3Npb25M
ZXZlbCgpCisgICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKElnbm9yZUFzcGVjdFJhdGlvKQorICAg
ICwgbV9vcmllbnRhdGlvbk9wdGlvbihJZ25vcmVPcmllbnRhdGlvbikKK3sKK30KKwordm9pZCBS
ZXNpemVPcHRpb25zOjpzZXRXaWR0aChpbnQgd2lkdGgpIHsgbV93aWR0aCA9IHdpZHRoID49IGRp
bWVuc2lvbnNMb3dlckxpbWl0ICYmIHdpZHRoIDw9IGRpbWVuc2lvbnNVcHBlckxpbWl0ID8gd2lk
dGggOiAwOyB9CitpbnQgUmVzaXplT3B0aW9uczo6d2lkdGgoKSB7IHJldHVybiBtX3dpZHRoOyB9
CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KGludCBoZWlnaHQpIHsgbV9oZWlnaHQg
PSBoZWlnaHQgPj0gZGltZW5zaW9uc0xvd2VyTGltaXQgJiYgaGVpZ2h0IDw9IGRpbWVuc2lvbnNV
cHBlckxpbWl0ID8gaGVpZ2h0IDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OmhlaWdodCgpIHsg
cmV0dXJuIG1faGVpZ2h0OyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25M
ZXZlbChkb3VibGUgY29tcHJlc3Npb25MZXZlbCkgeyBtX2NvbXByZXNzaW9uTGV2ZWwgPSBjb21w
cmVzc2lvbkxldmVsID49IGNvbXByZXNzaW9uTG93ZXJMaW1pdCAmJiBjb21wcmVzc2lvbkxldmVs
IDw9IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA/IGNvbXByZXNzaW9uTGV2ZWwgOiBkZWZhdWx0Q29t
cHJlc3Npb247IH0KK2RvdWJsZSBSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKCkgeyBy
ZXR1cm4gbV9jb21wcmVzc2lvbkxldmVsOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0QXNw
ZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2ZUFzcGVjdFJhdGlvKSB7IG1fYXNwZWN0UmF0aW9P
cHRpb24gPSBwcmVzZXJ2ZUFzcGVjdFJhdGlvID8gUHJlc2VydmVBc3BlY3RSYXRpbyA6IElnbm9y
ZUFzcGVjdFJhdGlvOyB9CitSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBSZXNpemVP
cHRpb25zOjphc3BlY3RSYXRpb09wdGlvbigpIHsgcmV0dXJuIG1fYXNwZWN0UmF0aW9PcHRpb247
IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3Jp
ZW50YXRpb25PcHRpb24pIHsgbV9vcmllbnRhdGlvbk9wdGlvbiA9IG9yaWVudGF0aW9uT3B0aW9u
ID09ICJhdXRvIiA/IENvcnJlY3RPcmllbnRhdGlvbiA6IElnbm9yZU9yaWVudGF0aW9uOyB9CitS
ZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBSZXNpemVPcHRpb25zOjpvcmllbnRhdGlv
bk9wdGlvbigpIHsgcmV0dXJuIG1fb3JpZW50YXRpb25PcHRpb247IH0KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQg
YS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlv
bnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lODdiMWQxCi0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaApAQCAtMCwwICsxLDg3IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUK
KyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBP
V05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
CisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2lmbmRlZiBSZXNpemVPcHRpb25zX2gKKyNkZWZpbmUgUmVzaXplT3B0aW9uc19oCisKKyNpZiBF
TkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBT
dHJpbmc7CisKK2NsYXNzIFJlc2l6ZU9wdGlvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxSZXNpemVP
cHRpb25zPiB7CitwdWJsaWM6CisgICAgZW51bSBBc3BlY3RSYXRpb09wdGlvbiB7CisgICAgICAg
IFByZXNlcnZlQXNwZWN0UmF0aW8sCisgICAgICAgIElnbm9yZUFzcGVjdFJhdGlvCisgICAgfTsK
KworICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24geworICAgICAgICBDb3JyZWN0T3JpZW50YXRp
b24sCisgICAgICAgIElnbm9yZU9yaWVudGF0aW9uCisgICAgfTsKKworICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZSgpOworCisgICAgdm9pZCBzZXRXaWR0aChpbnQg
d2lkdGgpOworICAgIGludCB3aWR0aCgpOworCisgICAgdm9pZCBzZXRIZWlnaHQoaW50IGhlaWdo
dCk7CisgICAgaW50IGhlaWdodCgpOworCisgICAgdm9pZCBzZXRDb21wcmVzc2lvbkxldmVsKGRv
dWJsZSBjb21wcmVzc2lvbkxldmVsKTsKKyAgICBkb3VibGUgY29tcHJlc3Npb25MZXZlbCgpOwor
CisgICAgdm9pZCBzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8p
OworICAgIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uKCk7CisKKyAgICB2b2lk
IHNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbik7CisgICAgT3Jp
ZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24oKTsKKworcHJpdmF0ZToKKyAgICBSZXNp
emVPcHRpb25zKCk7CisKKyAgICAvLyBJZiBtX3dpZHRoIG9yIG1faGVpZ2h0ID09IDAsIHRoYXQg
ZGltZW5zaW9uIHdpbGwgbm90IGNoYW5nZSBleHBsaWNpdGx5IGR1cmluZyByZXNpemluZy4KKyAg
ICBpbnQgbV93aWR0aDsKKyAgICBpbnQgbV9oZWlnaHQ7CisgICAgZG91YmxlIG1fY29tcHJlc3Np
b25MZXZlbDsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOworICAg
IE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlm
IC8vIFJlc2l6ZU9wdGlvbnNfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59476</attachid>
            <date>2010-06-22 21:57:18 -0700</date>
            <delta_ts>2010-06-22 22:27:08 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>96749</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZTcwNzQwLi45MWRmNjgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2lt
YWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVu
bG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanM6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorCiAyMDEwLTA2LTE4ICBK
dXN0aW4gR2FyY2lhICA8anVzdGluLmdhcmNpYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgT2phbiBWYWZhaS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGQ3ZWE4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTA2IEBACitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRz
IHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VS
UjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5k
ZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5j
dGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTk9UX1NVUFBP
UlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1
bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRo
IGdldHRlciBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmci
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVu
Y3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVl
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVj
dFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2hlaWdodDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhy
b3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0
eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJl
c2VydmVBc3BlY3RSYXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5p
dHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVk
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9h
cmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmM1OTZiNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44ZjY4ZjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0IGFuIGltYWdl
IHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFeGNlcHRpb24gd2FzIGNv
cnJlY3RseSB0aHJvd246IEVycm9yOiBJTlZBTElEX1NUQVRFX0VSUjogRE9NIEV4Y2VwdGlvbiAx
MQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY4ZjFl
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkCkBAIC0w
LDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJzY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDgxZDEzYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACittYWluIGZy
YW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFj
a3Mgd2lsbCBub3QgZXhlY3V0ZSBhZnRlciBvbnVubG9hZC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgTm8gY2FsbGJhY2tzIGNhbGxlZCBhZnRlciB1bmxvYWQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxv
YWQuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTBh
YTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdl
YmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlODJjNjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJp
ZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyA0MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk2ZjljNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3Zl
cnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0
LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUz
ZGUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1MzY3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsx
LDE0NiBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1
bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24g
c2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lv
bik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91
bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQor
CitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0
ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAg
IGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Np
b24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0p
KCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24s
ICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJv
dyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24o
KSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRo
cm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhy
b3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24o
KSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsK
K3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bigpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVf
cmVjdC5qcGciOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikn
LCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7CisK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
biknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1
bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24g
OScpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5
RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkp
JywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbiknLCB0cnVlLCAnRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0
MiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dHJ1ZX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTotSW5m
aW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNl
KTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxs
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2Jq
ZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNl
cHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3dpZHRoOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dp
ZHRoOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3
aWR0aDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5k
ZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dHJ1ZX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDotSW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsK
KwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5l
ZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0aW9u
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5pdHl9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KScsIGZhbHNlKTsKKword2luZG93LmpzVGVzdElzQXN5bmMg
PSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1z
b3VyY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFkOTU3NwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMKQEAgLTAsMCAr
MSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ug
d2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uIik7CisKK3ZhciBpID0g
bmV3IEltYWdlKCk7CitpLnNyYyA9IG51bGw7CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rp
b24oKSB7fTsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgewor
CQlpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RG
YWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2Vk
KCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0
KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWE4NmRmMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDI1IEBA
CitkZXNjcmlwdGlvbigiRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFja3Mgd2lsbCBub3QgZXhlY3V0
ZSBhZnRlciBvbnVubG9hZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gIi4u
L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5j
dGlvbigpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dCgndGVzdFBhc3NlZCgiTm8gY2FsbGJhY2tz
IGNhbGxlZCBhZnRlciB1bmxvYWQiKTsgZmluaXNoSlNUZXN0KCk7JywgMTAwKTsKK30KKworZG9j
dW1lbnQuYm9keS5vbnVubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGkud2Via2l0R2V0SW1hZ2Uo
CisgICAgICAgICJpbWFnZS9wbmciLAorICAgICAgICBmdW5jdGlvbihibG9iKSB7CisgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIHN1Y2Nlc3MgY2FsbGJh
Y2suIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSwKKyAgICAgICAg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgd2Vi
a2l0R2V0SW1hZ2UgZXJyb3IgY2FsbGJhY2s6ICIgKyBlcnJvcik7CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICk7Cit9CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li41NWVmZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMiBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9y
ZWN0LmpwZyI7CisKK2kud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9
Cit2YXIgcmVzdWx0ID0gaS53ZWJraXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8ocmVz
dWx0KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5hNjY0ZjNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFj
a3MuanMKQEAgLTAsMCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNhbGxi
YWNrcyB3b3JrIGNvcnJlY3RseS4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0g
Ii4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9IGZ1
bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNh
bGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsKKyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxsYmFj
ayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogIiArIGVycm9yKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVu
dGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5z
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44YzAxODMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29y
cmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxs
YmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3
aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1j
YWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5jMjY1MDJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0OGVm
ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24gYW4g
aW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246IEVycm9y
OiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRt
bC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uMmUxYzU1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBs
b2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBlbmRDaGls
ZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBlbXB0eUNh
bGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhjZXB0aW9u
Iik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBleGNlcHRp
b246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25l
KCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJbWFnZS53
ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmln
aW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC8u
Li8uLi9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIiAv
PgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGFlYjRi
NjguLjAxYzJhNWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYyLDYgKzI2Miw4IEBAIFNFVChXZWJDb3JlX0lETF9G
SUxFUwogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuaWRsCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAg
IGh0bWwvVmFsaWRpdHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkzYTEyMS4uN2NiMDY4ZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2NSBAQAor
MjAxMC0wNi0yMSAgU3RlcmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBFeHBv
c2VkIHRoZSBpbWFnZSByZXNpemluZyBBUEkgdG8gSlNDLCBidXQgaXQgaXMgZnVuY3Rpb25hbGx5
IGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRk
ZWQgZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOiBEaXR0by4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOiBEaXR0by4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS5neXBpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3Jl
LnByaTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcm86IERpdHRvLgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUmVz
aXplT3B0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtp
dEdldEltYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bTogQ2hhbmdlZCB0byBjb252ZXJ0IFN0cmluZ3MgdG8gSlNTdHJpbmdzIGNvcnJlY3RseSBpbiBj
YWxsYmFja3MuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrLmNwcDogQ2hhbmdlZCBiaW5kaW5ncy10ZXN0IGZvciBhYm92ZS4KKyAgICAgICAgKFdlYkNv
cmU6OkpTVGVzdENhbGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJhbSk6CisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdl
UmVzaXplcjo6c3RhcnQpOiBDbGllbnQgb2YgdGhpcyBjbGFzcyBubyBsb25nZXIgZG9lcyBhbnkg
cmVmY291bnRpbmcKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0lt
YWdlUmVzaXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
Om5vdGlmeUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1h
Z2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2Vi
Q29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJl
c2l6ZXI6OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vz
c2V0aWVzLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9u
IG9mIEpTIGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjazo6fkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAq
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw6IEFkZGVkLgorICAgICAgICAqIGh0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjp+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw6IEFk
ZGVkLgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6c3RhcnQpOiBSZWZhY3RvcmVkLgorICAgICAgICAo
V2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQpOiAgUmVmYWN0
b3JlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oOiBSZWZhY3RvcmVkLgor
ICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
V2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6d2lkdGgpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlc2l6ZU9wdGlvbnM6OmhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRDb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6
OmNvbXByZXNzaW9uTGV2ZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
QXNwZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6YXNw
ZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0T3Jp
ZW50YXRpb25PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6b3JpZW50
YXRpb25PcHRpb24pOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKIDIwMTAtMDYtMTggIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZDogUXQg
YnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA3YWMzZTUxLi5jZTVjOGYzIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcApAQCAtMTgwLDYgKzE4MCw4IEBACiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmNwcCIKICNp
bmNsdWRlICJKU0lEQlN1Y2Nlc3NFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNJbWFnZURhdGEuY3Bw
IgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiCisjaW5jbHVkZSAi
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTSW5kZXhlZERh
dGFiYXNlUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcCIK
ICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuY3BwIgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDdlYzkx
NWYuLjMxNmRlNTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIyMyw2ICsyMjMsOCBAQCBET01fQ0xB
U1NFUyA9IFwKICAgICBJREJSZXF1ZXN0IFwKICAgICBJREJTdWNjZXNzRXZlbnQgXAogICAgIElt
YWdlRGF0YSBcCisgICAgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIFwKKyAgICBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrIFwKICAgICBJbmRleGVkRGF0YWJhc2VSZXF1ZXN0IFwKICAgICBJ
bmplY3RlZFNjcmlwdEhvc3QgXAogICAgIEluc3BlY3RvckJhY2tlbmQgXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggZTc4
NTc0OS4uZWRiYWM3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNzUsNiArMjc1LDggQEAgSURMX0JJTkRJTkdTICs9
IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5pZGwgXAorCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogCVdlYkNvcmUvaHRtbC9WYWxpZGl0eVN0YXRlLmlkbCBcCiAJV2ViQ29yZS9o
dG1sL1ZvaWRDYWxsYmFjay5pZGwgXApAQCAtNDU1LDYgKzQ1Nyw3IEBAIHdlYmNvcmVfc291cmNl
cyArPSBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3Bw
IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAg
XAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAor
CVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5oIFwKIAlXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKQEAgLTEyNjcsNiArMTI3MCw4
IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL0hUTUxWaWV3U291cmNlRG9j
dW1lbnQuaCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5jcHAgXAogCVdlYkNvcmUvaHRtbC9J
bWFnZURhdGEuaCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBc
CisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIFwKIAlXZWJDb3Jl
L2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXpl
clRocmVhZC5oIFwKIAlXZWJDb3JlL2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwIFwKQEAgLTEyNzQs
NiArMTI3OSw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9odG1sL01lZGlhRXJy
b3IuaCBcCiAJV2ViQ29yZS9odG1sL1ByZWxvYWRTY2FubmVyLmNwcCBcCiAJV2ViQ29yZS9odG1s
L1ByZWxvYWRTY2FubmVyLmggXAorCVdlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcCBcCisJ
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5j
cHAgXAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuaCBcCiAJV2ViQ29yZS9odG1sL1RleHRNZXRy
aWNzLmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQppbmRleCBmMmNkZDY3Li5mOWViMjEwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTg3LDYgKzE4Nyw4IEBACiAg
ICAgICAgICAgICAnaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuaWRs
JywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwnLAor
ICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwnLAogICAgICAg
ICAgICAgJ2h0bWwvTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGV4dE1ldHJp
Y3MuaWRsJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuaWRsJywKQEAgLTU3MSw2ICs1
NzMsNyBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1
c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRD
dXN0b20uY3BwJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRD
dXN0b20uaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1
c3RvbS5jcHAnLApAQCAtMTY1Niw2ICsxNjU5LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxW
aWV3U291cmNlRG9jdW1lbnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZURhdGEuY3BwJywK
ICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQu
Y3BwJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5oJywKICAgICAgICAg
ICAgICdodG1sL0xhYmVsc05vZGVMaXN0LmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNv
cmUucHJpIGIvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCAyNWM5NWZmLi40ZTZlZmU3IDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAg
LTQyMiw2ICs0MjIsOCBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvSFRNTFVMaXN0RWxl
bWVudC5pZGwgXAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSW1h
Z2VEYXRhLmlkbCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisg
ICAgaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsIFwKICAgICBodG1sL01lZGlh
RXJyb3IuaWRsIFwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbCBcCiAgICAgaHRtbC9UaW1lUmFu
Z2VzLmlkbCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJD
b3JlLnBybwppbmRleCA5MmE3NzVjLi4zNTUyMzI1IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUucHJvCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KQEAgLTMxNSw2ICszMTUsNyBAQCBTT1VS
Q0VTICs9IFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICBiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBi
aW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCisgICAgYmluZGluZ3Mv
anMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1M
SW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxl
bWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCBcCkBAIC03MDQsNiArNzA1LDcgQEAgU09VUkNFUyArPSBcCiAgICAgaHRtbC9J
bWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0LmNwcCBcCiAg
ICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAgXAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5jcHAg
XAogICAgIGh0bWwvU3RlcFJhbmdlLmNwcCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmNwcCBc
CiAgICAgaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmNwcCBcCkBAIC0xNDM2LDkgKzE0MzgsMTIg
QEAgSEVBREVSUyArPSBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggXAogICAgIGh0bWwv
SFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oIFwKICAgICBodG1sL0ltYWdlRGF0YS5oIFwKKyAgICBo
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBcCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAgICAg
aHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmggXAorICAg
IGh0bWwvUmVzaXplT3B0aW9ucy5oIFwKICAgICBodG1sL1N0ZXBSYW5nZS5oIFwKICAgICBodG1s
L1RpbWVSYW5nZXMuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNjI0ZDQzMy4uMDE3ZTM3YiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0zNzY2MSw2ICszNzY2MSwxNCBAQAogCQkJCT4N
CiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxl
DQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
Y3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAg
LTM3Njg5LDYgKzM3Njk3LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5jcHAiDQorCQkJCT4NCisJCQk8
L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXFJlc2l6ZU9wdGlv
bnMuaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGh0bWxcU3RlcFJhbmdlLmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC00MDEyOCw3
ICs0MDE0NCw5IEBACiAJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJ
CQkJPEZpbGUNCisKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxFbWJl
ZEVsZW1lbnRDdXN0b20uY3BwIg0KKwogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24N
CiAJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiINCkBAIC00MDM4OCw2ICs0MDQwNiw1OSBAQAogCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCisJCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNw
cCINCisJCQkJCT4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVn
fFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJ
CQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJ
TmFtZT0iUmVsZWFzZXxXaW4zMiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJ
CQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJ
CQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJh
dGlvbg0KKwkJCQkJCU5hbWU9IkRlYnVnX0ludGVybmFsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm98V2luMzIi
DQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29s
DQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJS
ZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJ
CQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJ
CQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0
aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8
L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpT
SFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAiDQogCQkJCQk+DQogCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAz
MGIyOWQuLjIyOGMwNDAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0zNTA5LDYgKzM1MDksMTUgQEAKIAkJQjAxNDlFN0UxMUE0QjIxNTAwMTk2QTdCIC8q
IEFzeW5jSW1hZ2VSZXNpemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMDE0OUU3QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIu
aCAqLzsgfTsKIAkJQjAxNDlFN0YxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVh
ZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0
OUU3QjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCAqLzsgfTsKIAkJ
QjAxNDlFODAxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjAxNDlFN0MxMUE0QjIxNTAw
MTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovOyB9OworCQlCMDRFNkJGMjExQzZGMEU5
MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjA0RTZCRjExMUM2RjBFOTAwMjE0MjgzIC8qIFJlc2l6ZU9wdGlv
bnMuaCAqLzsgfTsKKwkJQjA0RTZCRjUxMUM3RjA3OTAwMjE0MjgzIC8qIEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxs
YmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUIwNEU2QkY2MTFDN0YwN0UwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QTEx
QUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIwNEY1OUZGMTFDNkFGRDYw
MDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8q
IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi87IH07CisJCUIwQTcxNTFCMTFDQzI0RUUw
MDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRp
b25zLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QjgxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oICovOyB9OworCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjBBNzE1QkExMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKIAkJQjIwMTExMDcwQUI3NzQw
NTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVs
ZW1lbnQuY3BwICovOyB9OwogCQlCMjAxMTEwODBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIw
MTExMDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCAqLzsgfTsKIAkJQjIxMTI3
QTYwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMTEyN0E1MEIzMTg2NzcwMDA5QkU1
MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi87IH07CkBAIC04ODQ1LDYgKzg4NTQsMTcgQEAK
IAkJQjAxNDlFN0ExMUE0QjIxNTAwMTk2QTdCIC8qIEFzeW5jSW1hZ2VSZXNpemVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzeW5jSW1hZ2VSZXNpemVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIwMTQ5RTdCMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJl
c2l6ZXJUaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1h
Z2VSZXNpemVyVGhyZWFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjAxNDlF
N0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJUaHJlYWQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDE0QTA0
QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMg
LyogUmVzaXplT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNp
emVPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEY1OUZEMTFDNkFG
RDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJl
c2l6ZU9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVz
aXplT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNTc5MTFE
MDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1N0ExMUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1
QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNDExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTVCNjExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdB
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjExMjdBNTBCMzE4Njc3MDAwOUJF
NTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNTVkdQT0RUeXBlV3JhcHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTM2OTksNiArMTM3MTksMTAgQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyog
SW1hZ2VEYXRhLmNwcCAqLywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VE
YXRhLmggKi8sCiAJCQkJQTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5pZGwg
Ki8sCisJCQkJQjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2suaCAqLywKKwkJCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5pZGwgKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIElt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTdBMTFEMDFCMjEwMDND
MzM3MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCUIwMTQ5RTdC
MTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5
RTdDMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2
RkEyNDExQUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLApAQCAtMTM3MDks
NiArMTM3MzMsOCBAQAogCQkJCUU0NDYxMzlDMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9y
LmlkbCAqLywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4NjkgLyogUHJlbG9hZFNjYW5uZXIu
Y3BwICovLAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5lci5o
ICovLAorCQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBSZXNpemVPcHRpb25zLmNwcCAq
LywKKwkJCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovLAog
CQkJCUE1QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuY3BwICovLAogCQkJCUE1
QUZCMzRFMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAqLywKIAkJCQlCQ0VGNDVFODBF
Njg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAgLTEzOTQ4LDYgKzEzOTc0LDEw
IEBACiAJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTSFRNTFZpZGVvRWxlbWVudC5o
ICovLAogCQkJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5jcHAgKi8s
CiAJCQkJQTc3OTc5MjUwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggKi8sCisJCQkJ
QjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5j
cHAgKi8sCisJCQkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzE1QjYxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCiAJCQkJNDlFRUNFRjgx
MDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5jcHAgKi8sCiAJCQkJNDlFRUNFRjkxMDUw
NzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5oICovLAogCQkJCTQ5RUVDRUY2MTA1MDcwQzQw
MDA5OUZBQiAvKiBKU0ludDMyQXJyYXkuY3BwICovLApAQCAtMTU1MTMsNiArMTU1NDMsNyBAQAog
CQkJCUJDMkVEN0E0MEM2QzBGMzYwMDkyMEJGRiAvKiBKU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20u
Y3BwICovLAogCQkJCUJDRDQxQUJBMEMwNjBERTgwMEMwRTQ0NiAvKiBKU0hUTUxGcmFtZVNldEVs
ZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMkVENjRGMEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hU
TUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVB
QzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0M0Mzg3NzBFODg2
Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzMw
NUNBMzBDMDc4MUJCMDBDRDIwRjAgLyogSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgKi8s
CiAJCQkJNDQ4QUQyN0EwQTQ4MTM3OTAwMjNEMTc5IC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9u
Q3VzdG9tLmNwcCAqLywKQEAgLTE4MTE5LDYgKzE4MTUwLDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNF
QkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgy
NTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
QzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUIwMTQ5RTgwMTFB
NEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdlU291cmNlQ0cuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTgzNTEsNiArMTgzODQsOCBAQAogCQkJCUM1NkM5MUE3MTE5RDkxODcwMERF
NENEOSAvKiBKU0lEQlN1Y2Nlc3NFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM2QzQ5RjQw
RDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQTc3OTc5MjkwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCQTExRDA0MzFFMDAzQzMzNzMgLyog
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCUM1RjRG
NDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFzZVJlcXVlc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTdBMEU3NkRCMTBCRjA1OTgwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0
SG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFGMDYwQ0UwRjVFRUIyQjAwQTA3RUFDIC8qIEpT
SW5zcGVjdG9yQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCkBAIC0xODg4NSw2ICsxODkyMCw3IEBA
CiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVw
bGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2QzJGMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMDRFNkJGMjExQzZG
MEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0Rjcx
NDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIwNjU0LDYgKzIwNjkwLDcgQEAKIAkJCQlCQzQ5MThDODBCRkVB
MDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBBMUNERDJEMDBCNDJCMjUgLyogSlNIVE1M
SW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIwNEY1OUZGMTFDNkFGRDYwMDBC
NUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0RWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVt
ZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk5MEExQ0REMkQwMEI0MkIy
NSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIwNzEyLDYg
KzIwNzQ5LDggQEAKIAkJCQlCQzZDNDlGMzBEN0RCQTA1MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0
cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3Nzk3OTI4MEQ2QjlFNjQwMDM4NTFCOSAv
KiBKU0ltYWdlRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBN0QwMzE4RTBFOTM1NDAzMDBF
MjRBQ0QgLyogSlNJbWFnZURhdGFDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1
QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVGNEY0MTAxMTkzMDZD
MDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk3QTBFNzZEQTEwQkYwNTk4MDBBMDI3NkUgLyogSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2RDUxMEJGMDUwNzAwQTAyNzZFIC8qIEpTSW5qZWN0
ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjEyNTksNiArMjEyOTgs
NyBAQAogCQkJCUE4OUNDQzUyMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFu
Q29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzMwOUUwOTA5OUU2NDkyMDA1NkU1ODEg
LyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNCMTZD
MkUwOTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjBB
NzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM0RjcxM0UwRDVBNkYyODAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxNEM3NjUwMENFOTIzNEUwMDdFRjNDRCAvKiBSZXNvdXJjZUVy
cm9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2NzgwQ0U5MjNBMTAwN0VGM0NEIC8q
IFJlc291cmNlSGFuZGxlLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmZjM2M2ODkKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKQEAgLTAsMCArMSwxNjQgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiSlNIVE1M
SW1hZ2VFbGVtZW50LmgiCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRlICJIVE1M
SW1hZ2VFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgi
CisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlIDxydW50aW1lL0pTRnVuY3Rpb24uaD4KKyNpbmNs
dWRlIDxydW50aW1lL0pTU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL0dldFB0ci5oPgorI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorCit1c2luZyBu
YW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQYXNzUmVmUHRy
PEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRzKCZKU0Z1bmN0aW9uOjpp
bmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIp
OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNP
YmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6
Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3RhdGljIFBhc3NSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhF
eGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
dmFsdWUpCit7CisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBp
cyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBpZiAodmFsdWUuaXNVbmRlZmlu
ZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoIXZhbHVlLmluaGVyaXRz
KCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgVFlQ
RV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09iamVj
dCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVjdCk7Cit9CisKK3N0YXRpYyBQ
YXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZVJlc2l6ZU9wdGlvbnMoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHZhbHVlKQoreworICAgIFJlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVP
cHRpb25zID0gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCk7CisKKyAgICAvLyBBcmd1bWVudCBpcyBv
cHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2Vk
LgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKSB7CisgICAgICAgIC8vIFVzZSBk
ZWZhdWx0IG9wdGlvbnMuCisgICAgICAgIHJldHVybiByZXNpemVPcHRpb25zLnJlbGVhc2UoKTsK
KyAgICB9CisgICAgSlNPYmplY3QqIG9iamVjdCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisg
ICAgSlNWYWx1ZSB3aWR0aCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgIndp
ZHRoIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKCF3aWR0aC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMt
PnNldFdpZHRoKHdpZHRoLnRvSW50MzIoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIGhl
aWdodCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgImhlaWdodCIpKTsKKyAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICgh
aGVpZ2h0LmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9ucy0+c2V0SGVpZ2h0
KGhlaWdodC50b0ludDMyKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBjb21wcmVzc2lv
bkxldmVsID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY29tcHJlc3Npb25M
ZXZlbCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAw
OworICAgIGlmICghY29tcHJlc3Npb25MZXZlbC5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJl
c2l6ZU9wdGlvbnMtPnNldENvbXByZXNzaW9uTGV2ZWwoY29tcHJlc3Npb25MZXZlbC50b051bWJl
cihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2VydmVBc3BlY3RSYXRpbyA9IG9i
amVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNlcnZlQXNwZWN0UmF0aW8iKSk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBp
ZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVP
cHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVh
bihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50YXRpb24gPSBvYmplY3QtPmdl
dChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghb3JpZW50YXRpb24u
aXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRPcmllbnRhdGlvbk9w
dGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJpbmcoZXhlYykpKTsKKyAgICAg
ICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgpOworfQorCitKU1ZhbHVlIEpT
SFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0YXRlKiBleGVjKQoreworICAg
IEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVz
dHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7CisKKyAgICBS
ZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVh
dGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9i
YWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgx
KSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRl
ZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsKKworICAgIFJlZlB0cjxJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0gY3JlYXRlSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMt
PmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50KDIpKTsKKyAgICBpZiAoZXhl
Yy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAg
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBjcmVhdGVSZXNpemVPcHRpb25z
KGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFTU0VSVChyZXNpemVPcHRpb25z
KTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVs
ZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nl
c3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgpLCByZXNpemVPcHRp
b25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBlYyk7CisgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2Vu
ZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRmMCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTc5LDcgKzIxNzksMTEgQEAg
c3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAgICBmb3JlYWNo
IG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAgIG15ICRwYXJhbU5hbWUgPSAk
cGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAg
IGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAgICAgICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNTdHJpbmcoZXhlYywgJHtwYXJh
bU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3Bh
cmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKICAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9vbCByYWlzZWRFeGNlcHRpb24g
PSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrLmNwcAorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5
LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0o
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAgICBFeGVjU3RhdGUqIGV4ZWMg
PSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBh
cmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3MyUGFyYW0pKTsKLSAgICBhcmdz
LmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4
ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTsKICAgICBt
X2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3lu
Y0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2NCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNpbmNsdWRlICJBc3luY0ltYWdl
UmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgiCisjaW5jbHVkZSAiUmVzaXpl
T3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0
eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVy
PiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0
cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1
Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwg
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9y
aWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6c3RhcnQoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hl
ZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNp
emVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIo
Y2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0
aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3JpcHRFeGVjdXRpb25Db250ZXh0
LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
LCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNp
emVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFs
dWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0
UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorQXN5bmNJ
bWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlw
ZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gc3Vj
Y2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9y
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucykKICAgICA6
IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBl
KQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxiYWNrKQogICAgICwgbV9lcnJv
ckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkK
LSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQotICAgICwgbV9xdWFsaXR5KHF1
YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVjdFJhdGlvT3B0aW9uKQotICAg
ICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlvbikKKyAgICAsIG1fcmVzaXpl
T3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5p
c09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xzIHRoZSBsaWZldGltZSBvZiBB
c3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0luZm8o
dGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdldCgpKTsKICAgICBtX2NhY2hl
ZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDExICs3MSwyMSBAQCB2b2lkIEFz
eW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVz
b3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVz
b3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291cmNlLT5yZW1vdmVDbGllbnQo
dGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZv
KHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChpbWFnZURhdGEsIGNh
bGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9h
c3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikpCisgICAgaWYgKCFJbWFnZVJl
c2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFja0luZm8sIG1fb3V0cHV0VHlw
ZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1fcmVzaXplT3B0aW9ucy0+aGVp
Z2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRp
b25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0
aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2b2lkIEFzeW5jSW1hZ2VSZXNp
emVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikKK3sKKyAgICBtX3N1Y2Nlc3ND
YWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCBibG9iLmdldCgp
KTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplRXJyb3IoKQoreworICAgIGlm
IChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJyb3JDYWxsYmFjay0+aGFuZGxl
RXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBlY3RlZCBlcnJvciB3aGlsZSBy
ZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAv
LyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9Bc3luY0lt
YWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKaW5kZXggM2Vl
ZWVhZC4uMWIzZWFiOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKQEAgLTM1LDEyICszNSwx
NSBAQAogCiAjaW5jbHVkZSAiQmxvYi5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50
LmgiCi0jaW5jbHVkZSAiU2NyaXB0VmFsdWUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBDYWNoZWRJbWFnZTsKK2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s7CitjbGFz
cyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7CiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQ7
CitjbGFzcyBSZXNpemVPcHRpb25zOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIAog
Ly8gQXN5bmNJbWFnZVJlc2l6ZXIgd2FpdHMgZm9yIHRoZSBDYWNoZWRJbWFnZSB0aGF0IGlzIHBh
c3NlZCBpbiB0byBsb2FkIGNvbXBsZXRlbHksCiAvLyB0aGVuIHN0YXJ0cyBhbiBJbWFnZVJlc2l6
ZXJUaHJlYWQgdG8gcmVzaXplIHRoZSBpbWFnZS4gT25jZSBjcmVhdGVkLCBJbWFnZVJlc2l6ZXJU
aHJlYWQKQEAgLTQ4LDU2ICs1MSw0MiBAQCBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQ7CiAvLyBv
Y2N1ciwgYm90aCBvYmplY3RzIGFyZSBkZXN0cm95ZWQuIElmIHRoZSBkb2N1bWVudCBpcyBkZXN0
cm95ZWQgZHVyaW5nIHJlc2l6aW5nLAogLy8gQXN5bmNJbWFnZVJlc2l6ZXIgd2lsbCByZWNlaXZl
IGEgbm90aWZpY2F0aW9uIGFuZCBzdWJzZXF1ZW50bHkgYmxvY2sgdGhlIGNhbGxiYWNrcyBmcm9t
CiAvLyBvY2N1cnJpbmcuCi1jbGFzcyBBc3luY0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNoZWRS
ZXNvdXJjZUNsaWVudCwgcHVibGljIFJlZkNvdW50ZWQ8QXN5bmNJbWFnZVJlc2l6ZXI+IHsKK2Ns
YXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1
YmxpYzoKICAgICBzdHJ1Y3QgQ2FsbGJhY2tJbmZvIHsKLSAgICAgICAgQ2FsbGJhY2tJbmZvKFBh
c3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQorICAgICAgICBD
YWxsYmFja0luZm8oUGFzc093blB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6
ZXIpCiAgICAgICAgICAgICA6IGFzeW5jSW1hZ2VSZXNpemVyKGFzeW5jSW1hZ2VSZXNpemVyKQog
ICAgICAgICAgICAgLCBibG9iKDApCiAgICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFJl
ZlB0cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CisgICAgICAgIE93blB0
cjxBc3luY0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXI7CiAgICAgICAgIFJlZlB0cjxC
bG9iPiBibG9iOwogICAgIH07Ci0gICAgCisKICAgICBlbnVtIE91dHB1dFR5cGUgewogICAgICAg
ICBKUEVHLAogICAgICAgICBQTkcKICAgICB9OwogCi0gICAgZW51bSBBc3BlY3RSYXRpb09wdGlv
biB7Ci0gICAgICAgIFByZXNlcnZlQXNwZWN0UmF0aW8sCi0gICAgICAgIElnbm9yZUFzcGVjdFJh
dGlvCi0gICAgfTsKLQotICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24gewotICAgICAgICBDb3Jy
ZWN0T3JpZW50YXRpb24sCi0gICAgICAgIElnbm9yZU9yaWVudGF0aW9uCi0gICAgfTsKLQotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBjcmVhdGUoQ2FjaGVkSW1hZ2Uq
LCBPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3ND
YWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0
UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBzdGF0aWMgdm9pZCBzdGFydChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVm
UHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAgIH5Bc3luY0lt
YWdlUmVzaXplcigpOwogCi0gICAgLy8gRklYTUU6IEluc2VydCBvdmVycmlkZSBmdW5jdGlvbiBm
b3Igbm90aWZpY2F0aW9uIG9mIGRvY3VtZW50IGRlc3RydWN0aW9uIChjaGFuZ2UgbV9jYWxsYmFj
a3NPaykuCi0KLSAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPikgeyAvKiBGSVhN
RTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQotICAgIHZvaWQgcmVzaXplRXJyb3IoKSB7IC8q
IEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkLiAqLyB9CisgICAgdm9pZCByZXNpemVDb21wbGV0
ZShSZWZQdHI8QmxvYj4pOworICAgIHZvaWQgcmVzaXplRXJyb3IoKTsKIAogcHJpdmF0ZToKLSAg
ICBBc3luY0ltYWdlUmVzaXplcihDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNpemUgZGVz
aXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJv
ckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25P
cHRpb24pOworICAgIEFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBD
YWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0
cjxSZXNpemVPcHRpb25zPik7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hl
ZFJlc291cmNlKik7CiAKICAgICBDYWNoZWRJbWFnZSogbV9jYWNoZWRJbWFnZTsKLSAgICBTY3Jp
cHRWYWx1ZSBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBTY3JpcHRWYWx1ZSBtX2Vycm9yQ2FsbGJh
Y2s7Ci0gICAgCi0gICAgLy8gUGFyYW1ldGVycyB0byBwYXNzIGludG8gSW1hZ2VSZXNpemVyVGhy
ZWFkLgorICAgIENhbGxiYWNrSW5mbyogbV9jYWxsYmFja0luZm87CisgICAgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OworCiAgICAgT3V0cHV0VHlwZSBt
X291dHB1dFR5cGU7Ci0gICAgSW50U2l6ZSBtX2Rlc2lyZWRCb3VuZHM7Ci0gICAgZmxvYXQgbV9x
dWFsaXR5OwotICAgIEFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAg
T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBSZWZQdHI8SW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKKyAgICBSZWZQdHI8SW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gbV9lcnJvckNhbGxiYWNrOworICAgIFJlZlB0cjxSZXNp
emVPcHRpb25zPiBtX3Jlc2l6ZU9wdGlvbnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgYi9XZWJDb3Jl
L2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5kZXggNWQ1OTIzZC4uMmZmNTFmNiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIsOSArMzIsMTcgQEAKICNpbmNsdWRlICJIVE1M
RG9jdW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1M
TmFtZXMuaCIKKyNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCIKICNp
bmNsdWRlICJSZW5kZXJJbWFnZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKICNpbmNs
dWRlICJTY3JpcHRFdmVudExpc3RlbmVyLmgiCiAKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KyNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFj
ZSBzdGQ7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1MSw0ICs0NTksMzQgQEAgdm9pZCBI
VE1MSW1hZ2VFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpCiAgICAgSFRNTEVs
ZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7CiB9CiAKKyNpZiBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKKwordm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZShTdHJp
bmcgbWltZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNj
ZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JD
YWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zLCBFeGNlcHRp
b25Db2RlJiBlYykKK3sKKyAgICBpZiAoIXNyYygpLmlzVmFsaWQoKSkgeworICAgICAgICBlYyA9
IElOVkFMSURfU1RBVEVfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gVGhl
IHRhaW50c0NhbnZhcyBtZXRob2QgYWxzbyBhbGxvd3MgZGF0YSBVUkxzLgorICAgIGlmIChkb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT50YWludHNDYW52YXMoc3JjKCkpKSB7CisgICAgICAg
IGVjID0gU0VDVVJJVFlfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlwZTsKKyAgICBpZiAobWltZVR5cGUgPT0g
ImltYWdlL2pwZWciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OkpQ
RUc7CisgICAgZWxzZSBpZiAobWltZVR5cGUgPT0gImltYWdlL3BuZyIpCisgICAgICAgIG91dHB1
dFR5cGUgPSBBc3luY0ltYWdlUmVzaXplcjo6UE5HOworICAgIGVsc2UgeworICAgICAgICBlYyA9
IE5PVF9TVVBQT1JURURfRVJSOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6OnN0YXJ0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgbV9pbWFnZUxvYWRl
ci5pbWFnZSgpLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ssIHJl
c2l6ZU9wdGlvbnMpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IDYyZDMxNWMuLjQxMWJiYjMgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJ
bWFnZUVsZW1lbnQuaApAQCAtMzEsNiArMzEsOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBIVE1MRm9ybUVsZW1lbnQ7CitjbGFzcyBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s7
CitjbGFzcyBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgUmVzaXplT3B0aW9uczsK
IAogY2xhc3MgSFRNTEltYWdlRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiAgICAgZnJp
ZW5kIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKQEAgLTg5LDYgKzkyLDEyIEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgaGF2ZUZpcmVkTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUxvYWRl
ci5oYXZlRmlyZWRMb2FkRXZlbnQoKTsgfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyAgICB2b2lkIHdlYmtpdEdldEltYWdlKFN0cmluZyBtaW1lVHlwZSwgUGFzc1JlZlB0cjxJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+LCBFeGNlcHRpb25Db2RlJik7CisKKyNl
bmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VF
bGVtZW50LmlkbAppbmRleCAwZmM3MjcxLi5hZTNjNWU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1l
bnQuaWRsCkBAIC00OCw2ICs0OCwxNCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIC8vIE9iamVj
dGl2ZS1DIGV4dGVuc2lvbjoKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBh
bHREaXNwbGF5U3RyaW5nOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgVVJMIGFic29sdXRl
SW1hZ2VVUkw7CisjZWxzZQorCisjaWYgZGVmaW5lZChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJiYg
RU5BQkxFX0lNQUdFX1JFU0laRVIKKyAgICAgICAgLy8gRnVuY3Rpb25zCisgICAgICAgIFtDdXN0
b21dIHZvaWQgd2Via2l0R2V0SW1hZ2UoaW4gRE9NU3RyaW5nIG1pbWVUeXBlLCBpbiBJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBbT3B0aW9uYWxdIGluIEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2sgZXJyb3JDYWxsYmFjaywgW09wdGlvbmFsXSBpbiBSZXNpemVP
cHRpb25zIG9wdGlvbnMpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRp
ZgorCiAjZW5kaWYKICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmZmZjg2Ci0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaApAQCAt
MCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBt
ZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2lmbmRlZiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKKyNkZWZpbmUg
SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikK
KworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsKKworY2xhc3MgSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5JbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBjb25zdCBTdHJpbmcmKSA9IDA7Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFC
TEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlmIC8vIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tf
aApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRs
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2NiZjgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJD
b3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisg
KiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQor
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21v
ZHVsZSBzdG9yYWdlIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1JTUFH
RV9SRVNJWkVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRE9NU3RyaW5nIGVycm9yKTsK
KyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NDAwZjMKLS0tIC9kZXYvbnVsbAor
KysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCAr
MSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKyNkZWZpbmUgSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrX2gKKworI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQor
CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBCbG9iOworY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFN0cmluZzsK
KworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2
ZW50KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKikgPSAwOworfTsKKworfQorCisjZW5k
aWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaWRsIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBmZDg3ZgotLS0gL2Rldi9u
dWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCkBA
IC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAg
Q29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4g
QmxvYiBibG9iKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0ltYWdlUmVz
aXplclRocmVhZC5jcHAgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcAppbmRl
eCAxYmFlNmEwLi42N2FmYzc4IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
VGhyZWFkLmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcApAQCAt
MzYsNiArMzYsNyBAQAogI2luY2x1ZGUgIkJpdG1hcEltYWdlLmgiCiAjaW5jbHVkZSAiSW1hZ2Uu
aCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKwogI2luY2x1ZGUgPHV0aWxpdHk+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDcgKzUxLDcgQEAgc3RhdGljIHZvaWQgcmV0dXJuQmxv
Yk9yRXJyb3Iodm9pZCogY2FsbGJhY2tJbmZvcm1hdGlvbikKICAgICBkZWxldGUgY2FsbGJhY2tJ
bmZvOwogfQogCi1ib29sIEltYWdlUmVzaXplclRocmVhZDo6c3RhcnQoUGFzc1JlZlB0cjxTaGFy
ZWRCdWZmZXI+IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2Fs
bGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3Bl
Y3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6
OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNp
emVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwg
UmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6
ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQogewogICAgIElt
YWdlUmVzaXplclRocmVhZCogaW1hZ2VSZXNpemVyVGhyZWFkID0gbmV3IEltYWdlUmVzaXplclRo
cmVhZChjYWxsYmFja0luZm8sIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMsIHF1YWxpdHksIGFz
cGVjdFJhdGlvT3B0aW9uLCBvcmllbnRhdGlvbk9wdGlvbik7CiAKQEAgLTYyLDcgKzYzLDcgQEAg
Ym9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBp
bWFnZURhdGEsIEFzeW5jSW1hZ2VSZXMKICAgICByZXR1cm4gaW1hZ2VSZXNpemVyVGhyZWFkLT5t
X3RocmVhZElEOwogfQogCi1JbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJh
dGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRp
b25PcHRpb24pCitJbWFnZVJlc2l6ZXJUaHJlYWQ6OkltYWdlUmVzaXplclRocmVhZChBc3luY0lt
YWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVy
OjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1
YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9u
LCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKICAg
ICA6IG1fdGhyZWFkSUQoMCkKICAgICAsIG1fY2FsbGJhY2tJbmZvKGNhbGxiYWNrSW5mbykKICAg
ICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplclRocmVhZC5oIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5oCmlu
ZGV4IGFlNWFkZTUuLjE1YmQzYmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJUaHJlYWQuaAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKQEAgLTM0
LDYgKzM0LDggQEAKICNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKIAogI2luY2x1ZGUgIkFzeW5j
SW1hZ2VSZXNpemVyLmgiCisjaW5jbHVkZSAiSW50U2l6ZS5oIgorI2luY2x1ZGUgIlJlc2l6ZU9w
dGlvbnMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MiwxMSArNDQsMTEgQEAgY2xh
c3MgU2hhcmVkQnVmZmVyOwogCiBjbGFzcyBJbWFnZVJlc2l6ZXJUaHJlYWQgewogcHVibGljOgot
ICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEs
IEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlv
bk9wdGlvbik7CisgICAgc3RhdGljIGJvb2wgc3RhcnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+
IGltYWdlRGF0YSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGRvdWJsZSBxdWFsaXR5
LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50
YXRpb25PcHRpb24pOwogICAgIH5JbWFnZVJlc2l6ZXJUaHJlYWQoKTsKIAogcHJpdmF0ZToKLSAg
ICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFz
eW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0
IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5
bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyosIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRU
eXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGRvdWJsZSBxdWFsaXR5LCBSZXNpemVPcHRpb25z
OjpBc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24pOwog
ICAgIHN0YXRpYyB2b2lkKiBpbWFnZVJlc2l6ZXJUaHJlYWRTdGFydCh2b2lkKik7CiAgICAgdm9p
ZCogaW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAKQEAgLTU4LDkgKzYwLDkgQEAgcHJpdmF0ZToKICAg
ICBSZWZQdHI8Qml0bWFwSW1hZ2U+IG1faW1hZ2U7CiAgICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91
dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwogICAgIEludFNpemUgbV9kZXNpcmVkQm91bmRzOwotICAg
IGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRp
b24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBBc3luY0ltYWdlUmVzaXplcjo6T3JpZW50YXRp
b25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsKKyAgICBkb3VibGUgbV9xdWFsaXR5OworICAg
IFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Cisg
ICAgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gbV9vcmllbnRhdGlvbk9wdGlvbjsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9S
ZXNpemVPcHRpb25zLmNwcCBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZTY0OTY0Ci0tLSAvZGV2L251bGwKKysrIGIv
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwCkBAIC0wLDAgKzEsNzUgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJp
YnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhl
IG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICog
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiUmVzaXplT3B0
aW9ucy5oIgorCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCisvLyBJbmNsdXNpdmUgbGltaXRzOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25z
TG93ZXJMaW1pdCA9IDE7CitzdGF0aWMgY29uc3QgaW50IGRpbWVuc2lvbnNVcHBlckxpbWl0ID0g
MzI3Njc7CitzdGF0aWMgY29uc3QgZG91YmxlIGNvbXByZXNzaW9uTG93ZXJMaW1pdCA9IDAuMDsK
K3N0YXRpYyBjb25zdCBkb3VibGUgY29tcHJlc3Npb25VcHBlckxpbWl0ID0gMS4wOworCitzdGF0
aWMgY29uc3QgZG91YmxlIGRlZmF1bHRDb21wcmVzc2lvbiA9IDAuODU7CisKK1Bhc3NSZWZQdHI8
UmVzaXplT3B0aW9ucz4gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYo
bmV3IFJlc2l6ZU9wdGlvbnMoKSk7IH0KKworUmVzaXplT3B0aW9uczo6UmVzaXplT3B0aW9ucygp
CisgICAgOiBtX3dpZHRoKCkKKyAgICAsIG1faGVpZ2h0KCkKKyAgICAsIG1fY29tcHJlc3Npb25M
ZXZlbCgpCisgICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKElnbm9yZUFzcGVjdFJhdGlvKQorICAg
ICwgbV9vcmllbnRhdGlvbk9wdGlvbihJZ25vcmVPcmllbnRhdGlvbikKK3sKK30KKwordm9pZCBS
ZXNpemVPcHRpb25zOjpzZXRXaWR0aChpbnQgd2lkdGgpIHsgbV93aWR0aCA9IHdpZHRoID49IGRp
bWVuc2lvbnNMb3dlckxpbWl0ICYmIHdpZHRoIDw9IGRpbWVuc2lvbnNVcHBlckxpbWl0ID8gd2lk
dGggOiAwOyB9CitpbnQgUmVzaXplT3B0aW9uczo6d2lkdGgoKSB7IHJldHVybiBtX3dpZHRoOyB9
CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KGludCBoZWlnaHQpIHsgbV9oZWlnaHQg
PSBoZWlnaHQgPj0gZGltZW5zaW9uc0xvd2VyTGltaXQgJiYgaGVpZ2h0IDw9IGRpbWVuc2lvbnNV
cHBlckxpbWl0ID8gaGVpZ2h0IDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OmhlaWdodCgpIHsg
cmV0dXJuIG1faGVpZ2h0OyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25M
ZXZlbChkb3VibGUgY29tcHJlc3Npb25MZXZlbCkgeyBtX2NvbXByZXNzaW9uTGV2ZWwgPSBjb21w
cmVzc2lvbkxldmVsID49IGNvbXByZXNzaW9uTG93ZXJMaW1pdCAmJiBjb21wcmVzc2lvbkxldmVs
IDw9IGNvbXByZXNzaW9uVXBwZXJMaW1pdCA/IGNvbXByZXNzaW9uTGV2ZWwgOiBkZWZhdWx0Q29t
cHJlc3Npb247IH0KK2RvdWJsZSBSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKCkgeyBy
ZXR1cm4gbV9jb21wcmVzc2lvbkxldmVsOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0QXNw
ZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2ZUFzcGVjdFJhdGlvKSB7IG1fYXNwZWN0UmF0aW9P
cHRpb24gPSBwcmVzZXJ2ZUFzcGVjdFJhdGlvID8gUHJlc2VydmVBc3BlY3RSYXRpbyA6IElnbm9y
ZUFzcGVjdFJhdGlvOyB9CitSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBSZXNpemVP
cHRpb25zOjphc3BlY3RSYXRpb09wdGlvbigpIHsgcmV0dXJuIG1fYXNwZWN0UmF0aW9PcHRpb247
IH0KKwordm9pZCBSZXNpemVPcHRpb25zOjpzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3Jp
ZW50YXRpb25PcHRpb24pIHsgbV9vcmllbnRhdGlvbk9wdGlvbiA9IG9yaWVudGF0aW9uT3B0aW9u
ID09ICJhdXRvIiA/IENvcnJlY3RPcmllbnRhdGlvbiA6IElnbm9yZU9yaWVudGF0aW9uOyB9CitS
ZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBSZXNpemVPcHRpb25zOjpvcmllbnRhdGlv
bk9wdGlvbigpIHsgcmV0dXJuIG1fb3JpZW50YXRpb25PcHRpb247IH0KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQg
YS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlv
bnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lODdiMWQxCi0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaApAQCAtMCwwICsxLDg3IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICog
ICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUK
KyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBP
V05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
CisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2lmbmRlZiBSZXNpemVPcHRpb25zX2gKKyNkZWZpbmUgUmVzaXplT3B0aW9uc19oCisKKyNpZiBF
TkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBT
dHJpbmc7CisKK2NsYXNzIFJlc2l6ZU9wdGlvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxSZXNpemVP
cHRpb25zPiB7CitwdWJsaWM6CisgICAgZW51bSBBc3BlY3RSYXRpb09wdGlvbiB7CisgICAgICAg
IFByZXNlcnZlQXNwZWN0UmF0aW8sCisgICAgICAgIElnbm9yZUFzcGVjdFJhdGlvCisgICAgfTsK
KworICAgIGVudW0gT3JpZW50YXRpb25PcHRpb24geworICAgICAgICBDb3JyZWN0T3JpZW50YXRp
b24sCisgICAgICAgIElnbm9yZU9yaWVudGF0aW9uCisgICAgfTsKKworICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZSgpOworCisgICAgdm9pZCBzZXRXaWR0aChpbnQg
d2lkdGgpOworICAgIGludCB3aWR0aCgpOworCisgICAgdm9pZCBzZXRIZWlnaHQoaW50IGhlaWdo
dCk7CisgICAgaW50IGhlaWdodCgpOworCisgICAgdm9pZCBzZXRDb21wcmVzc2lvbkxldmVsKGRv
dWJsZSBjb21wcmVzc2lvbkxldmVsKTsKKyAgICBkb3VibGUgY29tcHJlc3Npb25MZXZlbCgpOwor
CisgICAgdm9pZCBzZXRBc3BlY3RSYXRpb09wdGlvbihib29sIHByZXNlcnZlQXNwZWN0UmF0aW8p
OworICAgIEFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9uKCk7CisKKyAgICB2b2lk
IHNldE9yaWVudGF0aW9uT3B0aW9uKFN0cmluZyBvcmllbnRhdGlvbk9wdGlvbik7CisgICAgT3Jp
ZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24oKTsKKworcHJpdmF0ZToKKyAgICBSZXNp
emVPcHRpb25zKCk7CisKKyAgICAvLyBJZiBtX3dpZHRoIG9yIG1faGVpZ2h0ID09IDAsIHRoYXQg
ZGltZW5zaW9uIHdpbGwgbm90IGNoYW5nZSBleHBsaWNpdGx5IGR1cmluZyByZXNpemluZy4KKyAg
ICBpbnQgbV93aWR0aDsKKyAgICBpbnQgbV9oZWlnaHQ7CisgICAgZG91YmxlIG1fY29tcHJlc3Np
b25MZXZlbDsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0aW9uOworICAg
IE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2VuZGlm
IC8vIFJlc2l6ZU9wdGlvbnNfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59478</attachid>
            <date>2010-06-22 22:27:08 -0700</date>
            <delta_ts>2010-06-23 10:16:52 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>241152</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiZmI5YjUwLi45MWRmNjgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDExOTcgKzEsMjggQEAKLTIwMTAt
MDYtMjIgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgorMjAxMC0wNi0yMSAgU3Rl
cmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CiAKLSAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KLQotICAgICAgICBSRUdSRVNTSU9OOiAocjQ3MjkxKTog
VXBsb2FkIHByb2dyZXNzIGV2ZW50cyBhcmUgbm90IGZpcmVkIGZvciBzaW1wbGUgY3Jvc3Mtc2l0
ZSBYSFIuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
OTAyOQotCi0gICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zaW1wbGUtY3Jvc3Mt
b3JpZ2luLXByb2dyZXNzLWV2ZW50cy1leHBlY3RlZC50eHQ6IFVwZGF0ZSByZXN1bHRzLgotICAg
ICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qvc2ltcGxlLWNyb3NzLW9yaWdpbi1wcm9n
cmVzcy1ldmVudHMuaHRtbDogQWRkIGEgdGVzdCB3aGljaCBhZGRzCi0gICAgICAgICAgYW4gdXBs
b2FkIHByb2dyZXNzIGV2ZW50IGhhbmRsZXIgYmVmb3JlIFhNTEh0dHBSZXF1ZXN0LnNlbmQoKSBp
cyBjYWxsZWQuCi0KLTIwMTAtMDYtMjIgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0u
b3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQuCi0KLSAgICAgICAgVXBkYXRlIHRlc3QgZXhwZWN0
YXRpb25zIGZvciBxdC9ndGsuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9qcy9nbG9i
YWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0
L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgotCi0yMDEwLTA2LTIyICBBbHBo
YSBMYW0gIDxoY2xhbUBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZC4gQnVpbGQg
Zml4LgotCi0gICAgICAgIFJlYmFzZWxpbmUgc29tZSB0ZXN0IHJlc3VsdHMgdG8gbWFrZSBidWls
ZCBib3RzIGdyZWVuIGFnYWluLgotCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zh
c3QvanMvc3dpdGNoLWJlaGF2aW91ci1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCi0gICAgICAgICog
cGxhdGZvcm0vY2hyb21pdW0tbWFjL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWNv
bnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdp
bi9mYXN0L2pzL3N3aXRjaC1iZWhhdmlvdXItZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgotICAgICAg
ICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9pbnNwZWN0b3IvdGltZWxpbmUtcGFyc2UtaHRtbC1l
eHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL3dlYnNvY2tldC90
ZXN0cy9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0OgotICAgICAg
ICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDoKLQotMjAxMC0wNi0y
MiAgS2ludWtvIFlhc3VkYSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGQgQmxvYkJ1aWxkZXIuaWRsIHRvIGV4cG9z
ZSBCbG9iQnVpbGRlciBpbnRlcmZhY2UKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwNTkzCi0KLSAgICAgICAgKFJlc3VibWl0dGluZyB3aXRoIHRoZSBj
b3JyZWN0IGZpbGUgc2V0LikKLQotICAgICAgICBBZGQgbmV3IGxheW91dCB0ZXN0cyB0byB0ZXN0
IEJsb2JCdWlsZGVyIGludGVyZmFjZS4KLSAgICAgICAgQWxzbyB1cGRhdGUgdGVzdCBleHBlY3Rh
dGlvbnMgYWZmZWN0ZWQgYnkgYWRkaW5nIHRoZSBjb25zdHJ1Y3RvcnMgdG8gRE9NV2luZG93Lgot
Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4
dDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3Jz
LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9jb25zdHJ1Y3RlZC1vYmplY3RzLXBy
b3RvdHlwZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL3Byb3RvdHlwZS1pbmhl
cml0YW5jZS0yLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9wcm90b3R5cGUtaW5o
ZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvZ2xvYmFsLWNvbnN0cnVj
dG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3Jlc291
cmNlcy9oeWJyaWQtYmxvYi11dGlsLmpzOiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xv
Y2FsL2Jsb2Ivc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGh0
dHAvdGVzdHMvbG9jYWwvYmxvYi9zY3JpcHQtdGVzdHMvc2VuZC1kYXRhLWJsb2IuanM6IEFkZGVk
LgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zY3JpcHQtdGVzdHMvc2VuZC1oeWJy
aWQtYmxvYi5qczogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3Njcmlw
dC10ZXN0cy9zZW5kLXNsaWNlZC1kYXRhLWJsb2IuanM6IEFkZGVkLgotICAgICAgICAqIGh0dHAv
dGVzdHMvbG9jYWwvYmxvYi9zZW5kLWRhdGEtYmxvYi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAg
ICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWRhdGEtYmxvYi5odG1sOiBBZGRlZC4K
LSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1oeWJyaWQtYmxvYi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWh5YnJp
ZC1ibG9iLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5k
LXNsaWNlZC1kYXRhLWJsb2ItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rl
c3RzL2xvY2FsL2Jsb2Ivc2VuZC1zbGljZWQtZGF0YS1ibG9iLmh0bWw6IEFkZGVkLgotICAgICAg
ICAqIGh0dHAvdGVzdHMvbG9jYWwvcmVzb3VyY2VzL2ZpbGUtZm9yLWRyYWctdG8tc2VuZDIudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9wb3N0LWFuZC12ZXJpZnkt
aHlicmlkLmNnaTogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9kb20v
cHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9n
dGsvU2tpcHBlZDogQWRkZWQgc2VuZC1oeWJyaWQtYmxvYi5odG1sIGFuZCBzZW5kLXNsaWNlZC1k
YXRhLWJsb2IuaHRtbCBiZWNhdXNlIHRoZXkgbmVlZCBldmVudFNlbmRlci5iZWdpbkRyYWdXaXRo
RmlsZXMgYW5kIEJsb2Iuc2xpY2UuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0v
Z3RrL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQu
dHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFu
Y2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6IEFkZGVkIHNl
bmQtaHlicmlkLWJsb2IuaHRtbCBhbmQgc2VuZC1zbGljZWQtZGF0YS1ibG9iLmh0bWwgYmVjYXVz
ZSB0aGV5IG5lZWQgZXZlbnRTZW5kZXIuYmVnaW5EcmFnV2l0aEZpbGVzIGFuZCBCbG9iLnNsaWNl
LgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGll
cy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZv
cm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAg
ICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDogQWRkZWQgc2VuZC1oeWJyaWQtYmxvYi5odG1sIGFu
ZCBzZW5kLXNsaWNlZC1kYXRhLWJsb2IuaHRtbCBiZWNhdXNlIHRoZXkgbmVlZCBldmVudFNlbmRl
ci5iZWdpbkRyYWdXaXRoRmlsZXMgYW5kIEJsb2Iuc2xpY2UuCi0gICAgICAgICogcGxhdGZvcm0v
d2luL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQu
dHh0OgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFu
Y2UtMi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL2Zhc3QvZG9tL3Byb3Rv
dHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0KLTIwMTAtMDYtMjIgIEFkZWxlIFBldGVy
c29uICA8YWRlbGVAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
LgotCi0gICAgICAgIFRlc3QgZm9yIENyYXNoIHdoZW4gdGhlIHJlbmRlcmVyIGZvciB0aGUgYnV0
dG9uIGluIDxpbnB1dCB0eXBlPSJudW1iZXIiPiBnb2VzIGF3YXkgZHVyaW5nIGV2ZW50IGhhbmRs
aW5nCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTAx
MwotCi0gICAgICAgICogZmFzdC9mb3Jtcy9pbnB1dC1udW1iZXItY3Jhc2gtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L2Zvcm1zL2lucHV0LW51bWJlci1jcmFzaC5odG1sOiBB
ZGRlZC4KLQotMjAxMC0wNi0yMiAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAg
ICAgICAgTm8gcmV2aWV3LCBza2lwcGluZyB0ZXN0IGR1ZSB0byByZXZlYWxlZCBidWcgaW4gQ2xp
cGJvYXJkUXQuCi0KLSAgICAgICAgZWRpdGluZy9leGVjQ29tbWFuZC9jb3B5LXdpdGhvdXQtc2Vs
ZWN0aW9uLmh0bWwgZmFpbHMgb24gUXQgYWZ0ZXIgcjYxNjM3Ci0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTAyNQotCi0gICAgICAgIFRoZSBRdCBDbGlw
Ym9hcmQ6OnNldERhdGEgY29kZSB3cm9uZ2x5IHJlaW50ZXJwcmV0X2Nhc3RzIFVDaGFyCi0gICAg
ICAgIGRhdGEgYXMgY2hhciogZGF0YS4gIFRoaXMgd2FzIGV4cG9zZWQgYnkgdGhlIHByZXZpb3Vz
IGNvbW1pdAotICAgICAgICB3aGljaCBubyBsb25nIHN0cmlwcyBcMCBjaGFyYWN0ZXJzIGR1cmlu
ZyBpbm5lckhUTUwuCi0KLSAgICAgICAgU2tpcHBpbmcgdGhlIGFmZmVjdGVkIHRlc3QgdW50aWwg
YSBRdCBwZXJzb24gY2FuIGZpeAotICAgICAgICBwbGF0Zm9ybS9xdC9DbGlwYm9hcmRRdC5jcHAK
LQotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0KLTIwMTAtMDYtMjIgIFRvbnkgR2Vu
dGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmlj
IFNlaWRlbC4KLQotICAgICAgICBBZGQgbGF5b3V0IHRlc3RzIHdoaWNoIHRlc3QgbGluZSBudW1i
ZXJzIGZvciBib3RoIGlubGluZSBhbmQgZXZlbnQgaGFuZGxlcgotICAgICAgICBzY3JpcHRzIGlu
IEhUTUwgZG9jdW1lbnRzLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDA2NDkKLQotICAgICAgICAqIGZhc3QvanMvcmVzb3VyY2VzL3NjcmlwdC1saW5l
LW51bWJlci5qczogQWRkZWQuCi0gICAgICAgIChnZXRMaW5lRnJvbUVycm9yKToKLSAgICAgICAg
KGFzc2VydEVycm9yT25MaW5lKToKLSAgICAgICAgKiBmYXN0L2pzL3NjcmlwdC1saW5lLW51bWJl
ci1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvanMvc2NyaXB0LWxpbmUtbnVt
YmVyLmh0bWw6IEFkZGVkLgotCi0yMDEwLTA2LTIyICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0
Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEZyYWdt
ZW50IHBhcnNpbmcgbmVlZHMgdG8gZ28gdGhyb3VnaCB0aGUgSFRNTDUgUGFyc2VyIGNvZGUgcGF0
aAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA2NDUK
LQotICAgICAgICAqIGZhc3QvY2FudmFzL2NhbnZhcy1nZXRDb250ZXh0LWludmFsaWQtZXhwZWN0
ZWQudHh0OgotICAgICAgICAgLSBcMCBpcyBub3cgY29udmVydGVkIHRvIFx1RkZGRCBwZXIgSFRN
TDUuCi0gICAgICAgICogZmFzdC9qcy9udWxsLWNoYXItaW4tc3RyaW5nLWV4cGVjdGVkLnR4dDog
ZGl0dG8uCi0gICAgICAgICogZmFzdC9qcy9zd2l0Y2gtYmVoYXZpb3VyLWV4cGVjdGVkLnR4dDog
ZGl0dG8uCi0gICAgICAgICogZmFzdC9wYXJzZXIvY29tbWVudC1pbi10ZXh0YXJlYS1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICAtIDx0ZXh0YXJlYT4gaXMgcGFyc2VkIGluIHRoZSBSQ0RBVEEgc3Rh
dGUsIHdoaWNoIG1lYW5zCi0gICAgICAgICAgIHRoYXQgY29tbWVudHMgYXJlIGlnbm9yZWQsIHRo
dXMgdGhlIDwvdGV4dGFyZWE+IGluIHRoZQotICAgICAgICAgICBjb21tZW50IGNvcnJlY3RseSBj
bG9zZXMgdGhlIDx0ZXh0YXJlYT4uICBUaGlzIHRlc3QgaXMgaW52YWxpZC4KLSAgICAgICAgICAg
T3VyIG5ldyBiZWhhdmlvciBtYXRjaGVzIG1pbmVmaWVsZC4KLSAgICAgICAgKiBmYXN0L3Rva2Vu
aXplci9sZXNzdGhhbi10ZXJtaW5hdGVzLXRhZ3MtYW5kLWF0dHJzLWV4cGVjdGVkLnR4dDoKLSAg
ICAgICAgIC0gVGhpcyB0ZXN0IGlzIGludmFsaWQgYW5kIHByb2JhYmx5IHNob3VsZCBqdXN0IGJl
IHJlbW92ZWQuCi0gICAgICAgICAgIFRoaXMgc2FtZSBiZWhhdmlvciBpcyB0ZXN0ZWQgYnkgZmFz
dC9pbnZhbGlkLzAxNi5odG1sLgotICAgICAgICAqIGluc3BlY3Rvci90aW1lbGluZS1wYXJzZS1o
dG1sLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgIC0gVGhlICJleHRyYSIgUGFyc2VIVE1MIGlzIGV4
cGVjdGVkLiAgVGhlIEhUTUw1IFBhcnNlciB0ZWxscyB0aGUKLSAgICAgICAgICAgaW5zcGVjdG9y
IGFib3V0IGV2ZXJ5IHBhcnNlciBwdW1wLCBldmVuIG9uZXMgd2hpY2ggcHVtcCBubyBkYXRhLgot
ICAgICAgICAgICBUaGUgSFRNTDUgcGFyc2VyIHB1bXBzIG9uZSBsYXN0IHRpbWUgaW4gZmluaXNo
KCkgdG8gZmx1c2ggYW55Ci0gICAgICAgICAgIGJ1ZmZlcmVkIGNoYXJhY3RlcnMuICBFdmVudHVh
bGx5IHdlJ2xsIHRlYWNoIHRoZSBpbnNwZWN0b3IgdG8KLSAgICAgICAgICAgZmlsdGVyIG91dCAo
bm90IGRpc3BsYXkpIDAtc2l6ZWQgcHVtcHMuCi0gICAgICAgICogc3RvcmFnZS9kb21zdG9yYWdl
L2NvbXBsZXgtdmFsdWVzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgIC0gXDAgaXMgbm93IGNvbnZl
cnRlZCB0byBcdUZGRkQgcGVyIEhUTUw1Ci0gICAgICAgICogc3ZnL2RvbS9mdXp6LXBhdGgtcGFy
c2VyLWV4cGVjdGVkLnR4dDogZGl0dG8uCi0gICAgICAgICogc3ZnL2RvbS9yZ2ItY29sb3ItcGFy
c2VyLWV4cGVjdGVkLnR4dDogZGl0dG8KLSAgICAgICAgKiB3ZWJzb2NrZXQvdGVzdHMvYmFkLXN1
Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dDogZGl0dG8uCi0KLTIwMTAtMDYt
MjIgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5
IEdlb2ZmcmV5IEdhcmVuLgotCi0gICAgICAgIFR3byBmYXN0L2R5bmFtaWMgdGVzdHMgbmVlZGxl
c3NseSBkZXBlbmQgb24gbGVnYWN5IDx0YWc8dGFnPiBwYXJzaW5nIGJlaGF2aW9yCi0gICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDk0NgotCi0gICAgICAg
IFRoZXNlIHR3byB0ZXN0cyB3b3VsZCBmYWlsIHdoZW4gd2UgdHVybmVkIG9uCi0gICAgICAgIHRo
ZSBIVE1MNSBMZXhlciBjb2RlIHBhdGggZm9yIERvY3VtZW50RnJhZ21lbnQgcGFyc2luZy4KLSAg
ICAgICAgVGhpcyBvbGQgcGFyc2VyIHF1aXJrIGlzIGNvdmVyZWQgYnkgc2V2ZXJhbCBvdGhlciB0
ZXN0cwotICAgICAgICBpbmNsdWRpbmcgZmFzdC9pbnZhbGlkLzAxNi5odG1sLgotCi0gICAgICAg
ICogZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50SFRNTC5odG1sOgotICAgICAgICAqIGZhc3Qv
ZHluYW1pYy9pbnNlcnRBZGphY2VudFRleHQuaHRtbDoKLQotMjAxMC0wNi0yMiAgQ2hyaXMgRmxl
aXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmlu
IEFkbGVyLgotCi0gICAgICAgIEFYOiBJZiBhbiBlbGVtZW50IHRoYXQgaXMgYSBjb250aW51YXRp
b24gaXMgcmVtb3ZlZCwgaXRzIHBhcmVudCB0cmVlIGlzIG5vdCBub3RpZmllZCBhcHByb3ByaWF0
ZWx5IHRoYXQgdGhlaXIgY2hpbGRyZW4gaGF2ZSBjaGFuZ2VkCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTAwMAotCi0gICAgICAgICogYWNjZXNzaWJp
bGl0eS9yZW1vdmVkLWNvbnRpbnVhdGlvbi1lbGVtZW50LWNhdXNlcy1jcmFzaC1leHBlY3RlZC50
eHQ6IEFkZGVkLgotICAgICAgICAqIGFjY2Vzc2liaWxpdHkvcmVtb3ZlZC1jb250aW51YXRpb24t
ZWxlbWVudC1jYXVzZXMtY3Jhc2guaHRtbDogQWRkZWQuCi0KLTIwMTAtMDYtMjIgIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgUGF2
ZWwgRmVsZG1hbi4KLQotICAgICAgICBXZWIgSW5zcGVjdG9yOiBpbnNwZWN0b3IvZWxlbWVudHMt
cGFuZWwtbGltaXRlZC1jaGlsZHJlbi5odG1sIHRlc3QgZmFpbHMKLSAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTI0Ci0KLSAgICAgICAgKiBodHRwL3Rl
c3RzL2luc3BlY3Rvci9pbnNwZWN0b3ItdGVzdC5qczoKLSAgICAgICAgKG9ubG9hZCk6Ci0gICAg
ICAgIChmcm9udGVuZF9zZXR1cFRlc3RFbnZpcm9ubWVudCk6IGFsd2F5cyBzdGFydCBpbnNwZWN0
b3IgdGVzdCB3aXRoIEVsZW1lbnRzIHBhbmVsIGFzIGN1cnJlbnQgb25lLgotICAgICAgICAqIGlu
c3BlY3Rvci9lbGVtZW50cy1wYW5lbC1saW1pdGVkLWNoaWxkcmVuLmh0bWw6Ci0KLTIwMTAtMDYt
MjIgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3
ZWQsIHRlc3QgZXhwZWN0YXRpb24gdXBkYXRlLgotCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21p
dW0tbGludXgvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1jYXBh
Y2l0eS1leHBlY3RlZC5jaGVja3N1bToKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51
eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLWNhcGFjaXR5LWV4
cGVjdGVkLnBuZzoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9I
VE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLXJhdGluZy1yZWxldmFuY3ktZXhwZWN0
ZWQuY2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgvZmFzdC9kb20v
SFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVj
dGVkLnBuZzoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1M
TWV0ZXJFbGVtZW50L21ldGVyLW9wdGltdW1zLWV4cGVjdGVkLmNoZWNrc3VtOgotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXIt
b3B0aW11bXMtZXhwZWN0ZWQucG5nOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4
L2Zhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50cy12cy1wYXJzaW5nLW1vZGUtZXhwZWN0ZWQuY2hl
Y2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvcGFy
c2VyL2Jyb2tlbi1jb21tZW50cy12cy1wYXJzaW5nLW1vZGUtZXhwZWN0ZWQucG5nOiBBZGRlZC4K
LSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVu
dC9tZXRlci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC5jaGVja3N1bToKLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1h
cHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC5wbmc6Ci0gICAgICAgICogcGxhdGZvcm0vY2hy
b21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0
ZWQuY2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hU
TUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0ZWQucG5nOgotICAgICAgICAqIHBs
YXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L3BhcnNlci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2lu
Zy1tb2RlLWV4cGVjdGVkLmNoZWNrc3VtOiBSZW1vdmVkLgotICAgICAgICAqIHBsYXRmb3JtL2No
cm9taXVtLW1hYy9mYXN0L3BhcnNlci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2luZy1tb2RlLWV4
cGVjdGVkLnBuZzogUmVtb3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFz
dC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3Rl
ZC5jaGVja3N1bToKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRN
TE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC5wbmc6Ci0g
ICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQv
bWV0ZXItYXBwZWFyYW5jZXMtcmF0aW5nLXJlbGV2YW5jeS1leHBlY3RlZC5jaGVja3N1bToKLSAg
ICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9t
ZXRlci1hcHBlYXJhbmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVjdGVkLnBuZzoKLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1v
cHRpbXVtcy1leHBlY3RlZC5jaGVja3N1bToKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13
aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1vcHRpbXVtcy1leHBlY3RlZC5wbmc6
Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvcGFyc2VyL2Jyb2tlbi1jb21t
ZW50cy12cy1wYXJzaW5nLW1vZGUtZXhwZWN0ZWQuY2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0td2luL2Zhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50cy12cy1wYXJzaW5nLW1v
ZGUtZXhwZWN0ZWQucG5nOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2luZy1tb2RlLWV4cGVjdGVkLnR4dDogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgotCi0y
MDEwLTA2LTIyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2
aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgVXBvbiBjbG9zZXIgcmVhZGluZyBvZiB0
aGUgc3BlYywgd2UgdGhpbmsgb3VyIGJlaGF2aW9yIGlzIGNvcnJlY3QuCi0gICAgICAgIFdlJ2xs
IGRvdWJsZS1jaGVjayB3aXRoIHRoZSB3b3JraW5nIGdyb3VwLgotCi0gICAgICAgICogZmFzdC90
b2tlbml6ZXIvd3JpdGUtb24tbG9hZC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC90b2tl
bml6ZXIvd3JpdGUtb24tbG9hZC5odG1sOgotCi0yMDEwLTA2LTIwICBNT1JJVEEgSGFqaW1lICA8
bW9ycml0YUBnb29nbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEtlbnQgVGFtdXJhLgot
Ci0gICAgICAgIDxtZXRlcj4gc2hvdWxkIGJlIHllbGxvdyB3aGVuICBtaW4gPCB2YWx1ZSA8IGxv
dyA8IG9wdGltdW0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwODI0CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgogICAgICAgICAK
LSAgICAgICAgVXBkYXRlIG92ZXJsb29rZWQgYnJva2VuIHRlc3QgcmVzdWx0cy4KLQotICAgICAg
ICAqIHBsYXRmb3JtL21hYy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFu
Y2VzLWNhcGFjaXR5LWV4cGVjdGVkLmNoZWNrc3VtOgotICAgICAgICAqIHBsYXRmb3JtL21hYy9m
YXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLWNhcGFjaXR5LWV4cGVj
dGVkLnBuZzoKLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVu
dC9tZXRlci1vcHRpbXVtcy1leHBlY3RlZC5jaGVja3N1bToKLSAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1vcHRpbXVtcy1leHBlY3RlZC5wbmc6
Ci0KLTIwMTAtMDYtMjIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAg
ICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBGb2xsb3cgdGhlIEhUTUw1IHNw
ZWMgbW9yZSBjbG9zZWx5IHcuci50LiB3aGVuIHRvIHNhdmUgdGhlIGluc2VydGlvbiBwb2ludAot
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5NzYKLQot
ICAgICAgICBUaGlzIHRlc3Qgbm8gbG9uZ2VyIGFzc2VydHMuICBUaGUgb3V0cHV0IGlzIGluY29y
cmVjdCwgaG93ZXZlci4gIEknbGwKLSAgICAgICAgZml4IHRoZSBvdXRwdXQgaW4gdGhlIG5leHQg
cGF0Y2guCi0KLSAgICAgICAgKiBmYXN0L3Rva2VuaXplci93cml0ZS1vbi1sb2FkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogZmFzdC90b2tlbml6ZXIvd3JpdGUtb24tbG9hZC5odG1s
OiBBZGRlZC4KLQotMjAxMC0wNi0yMSAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFmZnJhaXhAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgotCi0g
ICAgICAgIFRlc3RzIGZvcjoKLSAgICAgICAgU3BhY2Ugc2hvdWxkIGJlIGFsbG93ZWQgYmV0d2Vl
biAtLSBhbmQgPiBpbiBjb21tZW50IGVuZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjE5NDUKLQotICAgICAgICAqIGZhc3QvY3NzL3dvcmQtc3BhY2Ut
ZXh0cmEuaHRtbDogVHdlYWtlZCB0aGUgY29tbWVudCBhcyAtLSA+IGlzIG5vdwotICAgICAgICBh
IHZhbGlkIGNvbW1lbnQgZW5kLgotCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnQtMS1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1j
b21tZW50LTEuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnQtMi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1j
b21tZW50LTIuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnQtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1j
b21tZW50LTMuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnQtNC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1j
b21tZW50LTQuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnQtNS1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1j
b21tZW50LTUuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnQtNi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1j
b21tZW50LTYuaHRtbDogQWRkZWQuCi0gICAgICAgIFRob3NlIHRlc3QgY2hlY2tzIHRoYXQgYnJv
a2VuIGNvbW1lbnRzIGluIGJvZHkgYXJlIGNvcnJlY3RseSBwYXJzZWQuCi0gICAgICAgICogZmFz
dC9wYXJzZXIvYnJva2VuLWNvbW1lbnQtaW4taGVhZC0xLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0g
ICAgICAgICogZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1lbnQtaW4taGVhZC0xLmh0bWw6IEFkZGVk
LgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQtMi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhl
YWQtMi5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3BhcnNlci9icm9rZW4tY29tbWVudC1p
bi1oZWFkLTMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3BhcnNlci9icm9r
ZW4tY29tbWVudC1pbi1oZWFkLTMuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIv
YnJva2VuLWNvbW1lbnQtaW4taGVhZC00LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
ZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1lbnQtaW4taGVhZC00Lmh0bWw6IEFkZGVkLgotICAgICAg
ICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQtNS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQtNS5odG1s
OiBBZGRlZC4KLSAgICAgICAgVGhvc2UgdGVzdCBjaGVja3MgdGhhdCBicm9rZW4gY29tbWVudHMg
aW4gaGVhZCBhcmUgY29ycmVjdGx5IHBhcnNlZC4KLQotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jy
b2tlbi1jb21tZW50cy12cy1wYXJzaW5nLW1vZGUuaHRtbDogTmVlZGVkIHRvIHdyYXAgdGhlIGJy
b2tlbiBjb21tZW50Ci0gICAgICAgIGluIGEgdGl0bGUgYXMgd2UgbWF0Y2ggRkYgaGVyZSBhbmQg
d291bGQgbm90IHJlY292ZXIgZnJvbSBpdC4KLQotICAgICAgICAqIGZhc3QvcGFyc2VyL2NvbW1l
bnRzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L3BhcnNlci9jb21tZW50cy5odG1sOgot
ICAgICAgICBBZGRlZCBtb3JlIHRlc3RzIGZvciBjb21tZW50IHBhcnNpbmcuIE1hZGUgc3VyZSB0
aGF0IHdlIGNsb3NlIGVtcHR5IGNvbW1lbnRzCi0gICAgICAgIDwhLS0+IGFuZCA8IS0tLT4gYXMg
aXMgc3BlY2lmaWVkIGluIEhUTUw1LgotCi0yMDEwLTA2LTIxICBBZGFtIEJhcnRoICA8YWJhcnRo
QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAg
ICAgU2F2ZSB0aGUgaW5zZXJ0aW9uIHBvaW50IGJlZm9yZSBiZWZvcmVsb2FkIGV2ZW50cwotICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5NzMKLQotICAg
ICAgICBVcGRhdGUgZXhwZWN0ZWQgcmVzdWx0cyB0byBzaG93IHRoZSBwcm9wZXIgZG9jdW1lbnQu
d3JpdGUgb3JkZXIuCi0KLSAgICAgICAgKiBmYXN0L3Rva2VuaXplci93cml0ZS1iZWZvcmUtbG9h
ZC1leHBlY3RlZC50eHQ6Ci0KLTIwMTAtMDYtMjEgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0
Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBkb2N1
bWVudC53cml0ZSBmcm9tIEJlZm9yZUxvYWQgc2hvdWxkIG5vdCBhc3NlcnQKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTcxCi0KLSAgICAgICAgVGVz
dCB3aGF0IGhhcHBlbnMgd2hlbiB3ZSBkb2N1bWVudC53cml0ZSBmcm9tIGEgYmVmb3JlbG9hZCBl
dmVudC4KLSAgICAgICAgTm90aWNlIHRoYXQgdGhlIG9yZGVyIGlzIHdyb25nLiAgSSdsbCBmaXgg
dGhhdCBpbiBhIGZvbGxvd3VwIHBhdGNoLgotCi0gICAgICAgICogZmFzdC90b2tlbml6ZXIvd3Jp
dGUtYmVmb3JlLWxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Rva2Vu
aXplci93cml0ZS1iZWZvcmUtbG9hZC5odG1sOiBBZGRlZC4KLQotMjAxMC0wNi0yMSAgRG1pdHJ5
IFRpdG92ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBza2lw
IG5ldyBtb2RhbCB0ZXN0cyBvbiBUaWdlciBhbmQgdXBkYXRlIGV4cGVjdGVkIHJlc3VsdCBmb3Ig
Q2hyb21pdW0uCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9wcm90b3R5
cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL21hYy10aWdl
ci9Ta2lwcGVkOgotCi0yMDEwLTA2LTIxICBEbWl0cnkgVGl0b3YgIDxkaW1pY2hAY2hyb21pdW0u
b3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIGZpeGluZyBxdC1zcGVjaWZpYyBleHBlY3RlZCBy
ZXN1bHRzIGZvciByNjE1OTkKLQotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQv
ZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLQotMjAxMC0wNi0y
MSAgUHJhc2FkIFRhbW1hbmEgIDxwcmFzYWR0QGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlciwgRG1pdHJ5IFRpdG92LgotCi0gICAgICAgIER1bXBSZW5kZXJU
cmVlIHNob3VsZCBhbGxvdyB0ZXN0cyB3aXRoIG1vZGFsIGRpYWxvZ3MKLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MzUwCi0KLSAgICAgICAgQWRkZWQg
YSBuZXcgdGVzdCBzaG93LW1vZGFsLWRpYWxvZy5odG1sIHRvIGhhcm5lc3MgdGVzdHMgdG8gdmVy
aWZ5IHRoYXQgc2hvd01vZGFsRGlhbG9nIHdvcmtzLgotCi0gICAgICAgIEFkZGVkIGEgbmV3IHRl
c3QsIHNob3ctbW9kYWwtZGlhbG9nLW9uYmx1ci1vbmZvY3VzLmh0bWwsIHRoYXQgdGFrZXMgYWR2
YW50YWdlIG9mIHRoZSBzaG93TW9kYWxEaWFsb2cKLSAgICAgICAgZnVuY3Rpb25hbGl0eSBhZGRl
ZCB0byBVSURlbGVnYXRlLm1tLiAgVGhlIHRlc3QgaXMgb25seSBlbmFibGVkIG9uIG1hYyBmb3Ig
bm93LiAgVGhpcyB0ZXN0IHdpbGwgY2F0Y2gKLSAgICAgICAgcmVncmVzc2lvbnMgb24gdGhlIGJ1
ZyBmaXggZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzk2Mi4K
LQotICAgICAgICBTdXBwb3J0IGZvciBzaG93TW9kYWxEaWFsb2cgYWZmZWN0ZWQgdGhlIGV4cGVj
dGVkIG91dHB1dCBmb3IgbWFueSB0ZXN0cyB0aGF0IG9wZXJhdGUgdW5kZXIgdGhlIGFzc3VtcHRp
b24KLSAgICAgICAgdGhhdCB0aGUgbWV0aG9kIGlzIHVuZGVmaW5lZC4gIE1vZGlmaWVkIHRoZSB0
ZXN0cyBhY2NvcmRpbmdseSwgaW4gc29tZSBjYXNlcyBkaXNhYmxlZCBzaG93TW9kYWxEaWFsb2cg
KG5vdAotICAgICAgICBjdXJyZW50bHkgdGVzdGVkIGFueXdheS4gIE9wZW5lZCBhIGJ1ZyB0byBh
ZGQgc2hvd01vZGFsRGlhbG9nIHNwZWNpZmljIHRlc3RzIHdoZXJlIGFwcHJvcHJpYXRlIC0gQnVn
IyAzOTg5Ny4KLQotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctZnVuY3Rpb24tZnJh
bWUtZ2V0dGVyLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL1dp
bmRvdy93aW5kb3ctZnVuY3Rpb24tZnJhbWUtZ2V0dGVyLXByZWNlZGVuY2UuaHRtbDoKLSAgICAg
ICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLW5hbWUtZ2V0dGVyLXByZWNlZGVu
Y2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctZnVuY3Rp
b24tbmFtZS1nZXR0ZXItcHJlY2VkZW5jZS5odG1sOgotICAgICAgICAqIGZhc3QvZG9tL1dpbmRv
dy93aW5kb3ctbG9va3VwLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3Qv
ZG9tL1dpbmRvdy93aW5kb3ctbG9va3VwLXByZWNlZGVuY2UuaHRtbDoKLSAgICAgICAgKiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZh
c3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sOgotICAgICAgICAqIGZhc3QvZG9t
L3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5oZXJpdGFuY2UuanM6Ci0gICAgICAgIFR3ZWFrIHRl
c3RzIHNvIHRoYXQgc2hvd01vZGFsRGlhbG9nIHBhcnQgZ2V0cyBleGVyY2lzZWQgb25seSBpZiBp
dHMgZGVmaW5lZCB0byBrZWVwIG91dHB1dCBjb25zaXN0ZW50IGFjcm9zcyBwbGF0Zm9ybXMuCi0g
ICAgICAgIFdoZXJlIGl0cyBub3QgcG9zc2libGUsIHNraXAgdGhlIHRlc3QgZm9yIHNob3dNb2Rh
bERpYWxvZywgd2hpY2ggaXMgbm90IGN1cnJlbnRseSBleGVyY2lzZWQgYW55d2F5LgotCi0gICAg
ICAgICogZmFzdC9ldmVudHMvcmVzb3VyY2VzL21vZGFsLWRpYWxvZy5odG1sOiBBZGRlZC4KLSAg
ICAgICAgKiBmYXN0L2V2ZW50cy9zaG93LW1vZGFsLWRpYWxvZy1vbmJsdXItb25mb2N1cy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvZXZlbnRzL3Nob3ctbW9kYWwtZGlhbG9n
LW9uYmx1ci1vbmZvY3VzLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvaGFybmVzcy9yZXNv
dXJjZXMvbW9kYWwtZGlhbG9nLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvaGFybmVzcy9z
aG93LW1vZGFsLWRpYWxvZy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvaGFy
bmVzcy9zaG93LW1vZGFsLWRpYWxvZy5odG1sOiBBZGRlZC4KLSAgICAgICAgTmV3IHRlc3RzIHRo
YXQgdGFrZSBhZHZhbnRhZ2Ugb2Ygc2hvd01vZGFsRGlhbG9nIGluIERSVC4KLQotICAgICAgICAq
IGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9F
bnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEu
MV9UMS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNl
LzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0
LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1QxMC1leHBlY3RlZC50eHQ6Ci0gICAgICAg
ICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4y
X0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9B
MS4xX1QxMS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1h
bmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250
ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1QyLWV4cGVjdGVkLnR4dDoKLSAgICAg
ICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEw
LjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4y
X0ExLjFfVDMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3Jt
YW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29u
dGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UNC1leHBlY3RlZC50eHQ6Ci0gICAg
ICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8x
MC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIu
Ml9BMS4xX1Q1LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9y
bWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0Nv
bnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDYtZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMv
MTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4y
LjJfQTEuMV9UNy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZv
cm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9D
b250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1Q4LWV4cGVjdGVkLnR4dDoKLSAg
ICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRz
LzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAu
Mi4yX0ExLjFfVDktZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25m
b3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25f
Q29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UMS1leHBlY3RlZC50eHQ6Ci0g
ICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0
cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEw
LjIuMl9BMS4yX1QxMC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0Nv
bmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlv
bl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1QxMS1leHBlY3RlZC50eHQ6
Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250
ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUv
UzEwLjIuMl9BMS4yX1QyLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsv
Q29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0
aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDMtZXhwZWN0ZWQudHh0
OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29u
dGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2Rl
L1MxMC4yLjJfQTEuMl9UNC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlr
L0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1
dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1Q1LWV4cGVjdGVkLnR4
dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0Nv
bnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29k
ZS9TMTAuMi4yX0ExLjJfVDYtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5p
ay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVj
dXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UNy1leHBlY3RlZC50
eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9D
b250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0Nv
ZGUvUzEwLjIuMl9BMS4yX1Q4LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRu
aWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhl
Y3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDktZXhwZWN0ZWQu
dHh0OgotICAgICAgICBVcGRhdGUgdGhlIGV4cGVjdGVkIG91dHB1dCB0byByZWZsZWN0IHRoZSBm
YWN0IHRoYXQgdGhlc2UgdGVzdHMgcGFzcyBub3cuICBTa2lwIHRoZSB0ZXN0cyBvbiBndGssIHF0
IGFuZCB3aW4uICBUaGV5IHdlcmUgYWxsIGV4cGVjdGVkCi0gICAgICAgIHRvIGZhaWwgYW55d2F5
LiAgU28gbm8gY292ZXJhZ2UgbG9zdC4KLQotICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkv
Y3Jvc3MtZnJhbWUtYWNjZXNzLWNhbGwtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLWNhbGwuaHRtbDoKLSAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1nZXQtZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLWdldC5odG1sOgot
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLXB1dC1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgIFNraXAgc2hvd01vZGFsRGlhbG9nIHRvIG1ha2UgdGVzdCBwYXNz
IGZvciBhbGwgcGxhdGZvcm1zLiAgQWRkZWQgYSBGSVhNRSB3aXRoIGJ1ZyAjIHRvIGFkZCBhIHRl
c3Qgc3BlY2lmaWNhbGx5IGZvciBzaG93TW9kYWxEaWFsb2cuCi0KLSAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L3Jlc291cmNlcy9jcm9zcy1mcmFtZS1pZnJhbWUtZm9yLXB1dC10ZXN0Lmh0
bWw6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL1dpbmRvdy93aW5k
b3ctZnVuY3Rpb24tZnJhbWUtZ2V0dGVyLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVk
LgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LWZ1bmN0aW9uLW5hbWUtZ2V0dGVyLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgot
ICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1hYy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3Nz
LWZyYW1lLWFjY2Vzcy1nZXQtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtLXdpbi9mYXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLWZyYW1lLWdldHRlci1wcmVj
ZWRlbmNlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS13aW4vZmFzdC9kb20vV2luZG93L3dpbmRvdy1mdW5jdGlvbi1uYW1lLWdldHRlci1wcmVjZWRl
bmNlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13
aW4vZmFzdC9kb20vV2luZG93L3dpbmRvdy1sb29rdXAtcHJlY2VkZW5jZS1leHBlY3RlZC50eHQ6
Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jv
c3MtZnJhbWUtYWNjZXNzLWdldC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vY2hy
b21pdW0td2luL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLXB1dC1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9zZWN1cml0
eS9jcm9zcy1mcmFtZS1hY2Nlc3MtY2FsbC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9Ta2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0gICAgICAgICogcGxh
dGZvcm0vcXQvZmFzdC9kb20vV2luZG93L3dpbmRvdy1mdW5jdGlvbi1mcmFtZS1nZXR0ZXItcHJl
Y2VkZW5jZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCi0gICAgICAgICogcGxhdGZvcm0vcXQvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1mdW5jdGlvbi1uYW1lLWdldHRlci1wcmVjZWRlbmNlLWV4cGVj
dGVkLnR4dDogUmVtb3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2RvbS9XaW5kb3cv
d2luZG93LWxvb2t1cC1wcmVjZWRlbmNlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KLSAgICAgICAg
VXBkYWF0ZSBleHBlY3RlZCBvdXRwdXQgdG8gcmVmbGVjdCB0ZXN0IGNoYW5nZXMuICBSZW1vdmVk
IHNvbWUgcGxhdGZvcm0gc3BlY2lmaWMgZmlsZXMgd2hlcmUgdGhlIG9ubHkgcmVhc29uIHRoZXkn
cmUgZGlmZmVyZW50IGlzCi0gICAgICAgIGJlY2F1c2Ugb2Ygc2hvd01vZGFsRGlhbG9nLgotCi0g
ICAgICAgICogcGxhdGZvcm0vcXQvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nl
c3MtY2FsbC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtZ2V0LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBw
bGF0Zm9ybS93aW4vU2tpcHBlZDoKLSAgICAgICAgU2tpcCBmYWlsaW5nIHRlc3RzLiAgTm90ZSB0
aGF0IHRoZXJlIGlzIG5vIHRlc3QgZnVuY3Rpb25hbGl0eSBsb3N0LiAgVGhlc2UgYXJlIGVpdGhl
ciBuZXcgdGVzdHMgb3IgdGVzdHMgdGhhdCB3ZXJlIGR5c2Z1bmN0aW9uYWwgYW55d2F5Ci0gICAg
ICAgIGluIHRoZSBhYnNlbmNlIG9mIHNob3dNb2RhbERpYWxvZyBpbiBEUlQuCi0KLTIwMTAtMDYt
MjEgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBCZXRoIERha2luLgotCi0gICAgICAgIEFYOiBWb2ljZU92ZXIgZG9lcyBub3QgYW5u
b3VuY2UgV0FJLUFSSUEgc3RhdGUgY2hhbmdlIG9mIGFyaWEtZXhwYW5kZWQKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTI3Ci0KLSAgICAgICAgKiBw
bGF0Zm9ybS9tYWMtbGVvcGFyZC9Ta2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL21hYy10aWdl
ci9Ta2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtZXhw
YW5kZWQtbm90aWZpY2F0aW9ucy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtZXhwYW5kZWQtbm90aWZpY2F0aW9ucy5odG1sOiBB
ZGRlZC4KLQotMjAxMC0wNi0yMSAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFp
bC5jb20+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjYxNTg1LgotICAgICAg
ICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC82MTU4NQotICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5NTAKLQotICAgICAgICBJdCBicm9r
ZSBidWlsZHMgKFJlcXVlc3RlZCBieSBraW51a28gb24gI3dlYmtpdCkuCi0KLSAgICAgICAgKiBm
YXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAq
IGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0
OgotICAgICAgICAqIGZhc3QvZG9tL2NvbnN0cnVjdGVkLW9iamVjdHMtcHJvdG90eXBlcy1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhw
ZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVk
LnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9wcm90b3R5cGUtaW5o
ZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
ZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAg
ICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9t
L1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZv
cm0vcXQvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRh
bmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDoKLSAgICAg
ICAgKiBwbGF0Zm9ybS93aW4vZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlw
dG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL2Zhc3QvZG9tL3Byb3Rv
dHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS93aW4v
ZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLQotMjAxMC0wNi0y
MSAgS2ludWtvIFlhc3VkYSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGQgQmxvYkJ1aWxkZXIuaWRsIHRvIGV4cG9z
ZSBCbG9iQnVpbGRlciBpbnRlcmZhY2UKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwNTkzCi0KLSAgICAgICAgQWRkIG5ldyBsYXlvdXQgdGVzdHMgdG8g
dGVzdCBCbG9iQnVpbGRlciBpbnRlcmZhY2UuCi0gICAgICAgIEFsc28gdXBkYXRlIHRlc3QgZXhw
ZWN0YXRpb25zIGFmZmVjdGVkIGJ5IGFkZGluZyB0aGUgY29uc3RydWN0b3JzIHRvIERPTVdpbmRv
dy4KLQotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlw
dG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vY29uc3RydWN0ZWQtb2JqZWN0
cy1wcm90b3R5cGVzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9wcm90b3R5cGUt
aW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vcHJvdG90eXBl
LWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL2dsb2JhbC1jb25z
dHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9y
ZXNvdXJjZXMvaHlicmlkLWJsb2ItdXRpbC5qczogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0
cy9sb2NhbC9ibG9iL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sOiBBZGRlZC4KLSAgICAgICAg
KiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2NyaXB0LXRlc3RzL3NlbmQtZGF0YS1ibG9iLmpzOiBB
ZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2NyaXB0LXRlc3RzL3NlbmQt
aHlicmlkLWJsb2IuanM6IEFkZGVkLgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9z
Y3JpcHQtdGVzdHMvc2VuZC1zbGljZWQtZGF0YS1ibG9iLmpzOiBBZGRlZC4KLSAgICAgICAgKiBo
dHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1kYXRhLWJsb2ItZXhwZWN0ZWQudHh0OiBBZGRlZC4K
LSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1kYXRhLWJsb2IuaHRtbDogQWRk
ZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtaHlicmlkLWJsb2ItZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1o
eWJyaWQtYmxvYi5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Iv
c2VuZC1zbGljZWQtZGF0YS1ibG9iLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogaHR0
cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtc2xpY2VkLWRhdGEtYmxvYi5odG1sOiBBZGRlZC4KLSAg
ICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL3Jlc291cmNlcy9maWxlLWZvci1kcmFnLXRvLXNlbmQy
LnR4dDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9zdC1hbmQtdmVy
aWZ5LWh5YnJpZC5jZ2k6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3Qv
ZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZv
cm0vZ3RrL1NraXBwZWQ6IEFkZGVkIHNlbmQtaHlicmlkLWJsb2IuaHRtbCBhbmQgc2VuZC1zbGlj
ZWQtZGF0YS1ibG9iLmh0bWwgYmVjYXVzZSB0aGV5IG5lZWQgZXZlbnRTZW5kZXIuYmVnaW5EcmFn
V2l0aEZpbGVzIEJsb2Iuc2xpY2UuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0v
Z3RrL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQu
dHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFu
Y2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6IEFkZGVkIHNl
bmQtaHlicmlkLWJsb2IuaHRtbCBhbmQgc2VuZC1zbGljZWQtZGF0YS1ibG9iLmh0bWwgYmVjYXVz
ZSB0aGV5IG5lZWQgZXZlbnRTZW5kZXIuYmVnaW5EcmFnV2l0aEZpbGVzIEJsb2Iuc2xpY2UuCi0g
ICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4
cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9x
dC9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAq
IHBsYXRmb3JtL3dpbi9Ta2lwcGVkOiBBZGRlZCBzZW5kLWh5YnJpZC1ibG9iLmh0bWwgYW5kIHNl
bmQtc2xpY2VkLWRhdGEtYmxvYi5odG1sIGJlY2F1c2UgdGhleSBuZWVkIGV2ZW50U2VuZGVyLmJl
Z2luRHJhZ1dpdGhGaWxlcyBCbG9iLnNsaWNlLgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9mYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVkLnR4dDoKLSAg
ICAgICAgKiBwbGF0Zm9ybS93aW4vZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhw
ZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9mYXN0L2RvbS9wcm90b3R5cGUtaW5o
ZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotCi0yMDEwLTA2LTIxICBSb2JlcnQgSG9nYW4gIDxyb2Jl
cnRAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlz
dGlhbnNlbi4KLQotICAgICAgICBbUXRdIFVuc2tpcCBwbHVnaW5zL2dldC11cmwtdGhhdC10aGUt
cmVzb3VyY2UtbG9hZC1kZWxlZ2F0ZS13aWxsLWRpc2FsbG93Lmh0bWwKLQotICAgICAgICBJdCdz
IGEgTWFjLXNwZWNpZmljIHRlc3Qgc28ganVzdCBhZGQgdGhlIHJlcXVpcmVkIExheW91dFRlc3RD
b250cm9sbGVyCi0gICAgICAgIGZ1bmN0aW9uIGFzIGEgbm8tb3AgdG8gYXZvaWQgZmFpbGluZy4g
U2ltaWxhciBhcHByb2FjaCBhZG9wdGVkIGJ5IG90aGVyCi0gICAgICAgIHBvcnRzLgotCi0gICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzM0NAotCi0gICAg
ICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKLQotMjAxMC0wNi0yMSAgUm9iZXJ0IEhvZ2FuICA8
cm9iZXJ0QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBD
aHJpc3RpYW5zZW4uCi0KLSAgICAgICAgW1F0XSBNaXNzaW5nIGZvcndhcmQgZW50cmllcyB3aGVu
IGR1bXBpbmcgYmFjay9mb3J3YXJkIGxpc3QKLQotICAgICAgICBUaGVzZSBub3cgcGFzcy4KLSAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNDcwCi0KLSAg
ICAgICAgaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2R5bmFtaWMtaWZyYW1lLWR5bmFtaWMtZm9ybS1i
YWNrLWVudHJ5Lmh0bWwKLSAgICAgICAgaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3BhcnNlZC1pZnJh
bWUtZHluYW1pYy1mb3JtLWJhY2stZW50cnkuaHRtbAotCi0gICAgICAgICogcGxhdGZvcm0vcXQv
U2tpcHBlZDoKLQotMjAxMC0wNi0yMSAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21p
dW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIGV4cGVjdGF0aW9ucyB1cGRhdGUuCi0KLSAg
ICAgICAgTWFyayBoeXBoZW5hdGlvbiB0ZXN0cyBhcyBmYWlsaW5nIG9uIENocm9taXVtCi0gICAg
ICAgIEh5cGhlbmF0aW9uIGxhbmRlZCBpbiBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNl
dC82MTU0OC4KLQotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25z
LnR4dDogQWRkZWQgZmFpbGluZyB0ZXN0cy4KLQotMjAxMC0wNi0yMSAgRHVtaXRydSBEYW5pbGl1
YyAgPGR1bWlAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIGZpeGluZyBhIHRl
c3QgZXhwZWN0YXRpb25zIG9uIFdpbmRvd3MuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS93aW4vZmFz
dC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLQotMjAxMC0wNi0yMSAg
RHJldyBXaWxzb24gIDxhdHdpbHNvbkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdl
ZCByb2xsYmFjay4KLQotICAgICAgICBSb2xsaW5nIGJhY2sgNjE1NTEgYW5kIDYxNTU1IGR1ZSB0
byB0ZXN0IGZhaWx1cmVzIG9uIExpbnV4L1dpbi4KLQotICAgICAgICAqIGZhc3QvZG9tL1dpbmRv
dy93aW5kb3ctZnVuY3Rpb24tZnJhbWUtZ2V0dGVyLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0Ogot
ICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctZnVuY3Rpb24tZnJhbWUtZ2V0dGVyLXBy
ZWNlZGVuY2UuaHRtbDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9u
LW5hbWUtZ2V0dGVyLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9t
L1dpbmRvdy93aW5kb3ctZnVuY3Rpb24tbmFtZS1nZXR0ZXItcHJlY2VkZW5jZS5odG1sOgotICAg
ICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctbG9va3VwLXByZWNlZGVuY2UtZXhwZWN0ZWQu
dHh0OgotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctbG9va3VwLXByZWNlZGVuY2Uu
aHRtbDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0
ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1s
OgotICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5oZXJpdGFuY2Uu
anM6Ci0gICAgICAgICogZmFzdC9ldmVudHMvcmVzb3VyY2VzL21vZGFsLWRpYWxvZy5odG1sOiBS
ZW1vdmVkLgotICAgICAgICAqIGZhc3QvZXZlbnRzL3Nob3ctbW9kYWwtZGlhbG9nLW9uYmx1ci1v
bmZvY3VzLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KLSAgICAgICAgKiBmYXN0L2V2ZW50cy9zaG93
LW1vZGFsLWRpYWxvZy1vbmJsdXItb25mb2N1cy5odG1sOiBSZW1vdmVkLgotICAgICAgICAqIGZh
c3QvaGFybmVzcy9yZXNvdXJjZXMvbW9kYWwtZGlhbG9nLmh0bWw6IFJlbW92ZWQuCi0gICAgICAg
ICogZmFzdC9oYXJuZXNzL3Nob3ctbW9kYWwtZGlhbG9nLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4K
LSAgICAgICAgKiBmYXN0L2hhcm5lc3Mvc2hvdy1tb2RhbC1kaWFsb2cuaHRtbDogUmVtb3ZlZC4K
LSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRl
eHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9T
MTAuMi4yX0ExLjFfVDEtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9D
b25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRp
b25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UMTAtZXhwZWN0ZWQudHh0
OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29u
dGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2Rl
L1MxMC4yLjJfQTEuMV9UMTEtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5p
ay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVj
dXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UMi1leHBlY3RlZC50
eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9D
b250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0Nv
ZGUvUzEwLjIuMl9BMS4xX1QzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRu
aWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhl
Y3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDQtZXhwZWN0ZWQu
dHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25f
Q29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9D
b2RlL1MxMC4yLjJfQTEuMV9UNS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0
bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4
ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1Q2LWV4cGVjdGVk
LnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9u
X0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxf
Q29kZS9TMTAuMi4yX0ExLjFfVDctZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1
dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9F
eGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UOC1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlv
bl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFs
X0NvZGUvUzEwLjIuMl9BMS4xX1Q5LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3Nw
dXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5f
RXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDEtZXhwZWN0
ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRp
b25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZh
bF9Db2RlL1MxMC4yLjJfQTEuMl9UMTAtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMv
c3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19B
bl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UMTEtZXhw
ZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVj
dXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJf
RXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UMi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9q
cy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5n
X0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1QzLWV4
cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhl
Y3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4y
X0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDQtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3Qv
anMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmlu
Z19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UNS1l
eHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4
ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIu
Ml9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1Q2LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0
L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJp
bmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDct
ZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9F
eGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4y
LjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UOC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFz
dC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVy
aW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1Q5
LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1l
LWFjY2Vzcy1jYWxsLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2Nyb3NzLWZyYW1lLWFjY2Vzcy1jYWxsLmh0bWw6Ci0gICAgICAgICogaHR0cC90ZXN0cy9zZWN1
cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtZ2V0LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1nZXQuaHRtbDoKLSAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1wdXQtZXhwZWN0ZWQudHh0Ogot
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2Nyb3NzLWZyYW1lLWlmcmFt
ZS1mb3ItcHV0LXRlc3QuaHRtbDoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4
cGVjdGF0aW9ucy50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6Ci0gICAgICAg
ICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDoK
LQotMjAxMC0wNi0yMSAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgot
Ci0gICAgICAgIFVucmV2aWV3ZWQsIGV4cGVjdGF0aW9ucyB0d2Vhay4KLQotICAgICAgICBVc2Ug
QysrLXN0eWxlIGNvbW1lbnRzIHJhdGhlciB0aGFuIFB5dGhvbi1zdHlsZS4KLQotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDogVHdlYWtlZCBjb21tZW50
IHN0eWxlLgotCi0yMDEwLTA2LTIxICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+Ci0K
LSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAgQWRkZWQgdGVzdHMg
Zm9yIHRoZSAnaHlwaGVucycgYW5kICdoeXBoZW5hdGUtY2hhcmFjdGVyJyBwcm9wZXJ0aWVzCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDIyOAotCi0g
ICAgICAgICogZmFzdC90ZXh0L2h5cGhlbmF0ZS1jaGFyYWN0ZXIuaHRtbDogQWRkZWQuCi0gICAg
ICAgICogZmFzdC90ZXh0L2h5cGhlbnMuaHRtbDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0v
Z3RrL1NraXBwZWQ6Ci0gICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvdGV4dC9oeXBoZW5hdGUt
Y2hhcmFjdGVyLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvZmFzdC90ZXh0L2h5cGhlbmF0ZS1jaGFyYWN0ZXItZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2h5cGhlbmF0ZS1jaGFyYWN0ZXItZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2h5cGhlbnMt
ZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L3Rl
eHQvaHlwaGVucy1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21hYy9m
YXN0L3RleHQvaHlwaGVucy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3Jt
L3F0L1NraXBwZWQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL1NraXBwZWQ6Ci0KLTIwMTAtMDYt
MjEgIER1bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJl
dmlld2VkLCBmaXhpbmcgZXhwZWN0YXRpb25zLgotCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zh
c3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0Ogot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0
ZWQudHh0OgotCi0yMDEwLTA2LTIwICBEdW1pdHJ1IERhbmlsaXVjICA8ZHVtaUBjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGRpbmcg
dGhlIFNRTEV4Y2VwdGlvbiBjbGFzcyB3aGljaCB3aWxsIGJlIHVzZWQgdG8gcmVwb3J0IHN5bmMg
REIgZXJyb3JzLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDA2MDcKLQotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1l
eHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1k
ZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlLWlu
aGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9t
L3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0v
Z3RrL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAg
ICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9w
ZXJ0aWVzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2RvbS9XaW5k
b3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBw
bGF0Zm9ybS9xdC9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0Ogot
ICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9m
YXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgotCi0yMDEwLTA2LTIwICBI
YXlhdG8gSXRvICA8aGF5YXRvQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBL
ZW50IFRhbXVyYS4KLQotICAgICAgICBBZGQgdGVzdHMgZm9yIENTUzMgUGFnZWQgTWVkaWEgdG8g
bWFrZSBzdXJlIHBhZ2UgYnJlYWtzIHNob3VsZCBoYXBwZW4gYXQgcmlnaHQgcGxhY2VzLgotICAg
ICAgICBUd28gdGVzdHMgKGFsbG93ZWQtcGFnZS1icmVhayBhbmQgcGFnZS1icmVhay1tYXJnaW4t
Y29sbGFwc2VkKSBhcmUgZXhwZWN0ZWQgdG8gZmFpbAotICAgICAgICBkdWUgdG8gbGFjayBvZiBz
dXBwb3J0LgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MDc3MAotCi0gICAgICAgICogcHJpbnRpbmcvYWxsb3dlZC1wYWdlLWJyZWFrcy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL2FsbG93ZWQtcGFnZS1icmVha3MuaHRt
bDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvbm8tY29udGVudC1lbXB0eS1wYWdlcy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL25vLWNvbnRlbnQtZW1wdHktcGFn
ZXMuaHRtbDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay1kaXNwbGF5LW5v
bmUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLWRp
c3BsYXktbm9uZS5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLW1h
cmdpbi1jb2xsYXBzZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9w
YWdlLWJyZWFrLW1hcmdpbi1jb2xsYXBzZWQuaHRtbDogQWRkZWQuCi0gICAgICAgICogcHJpbnRp
bmcvc2NyaXB0LXRlc3RzL2FsbG93ZWQtcGFnZS1icmVha3MuanM6IEFkZGVkLgotICAgICAgICAo
dGVzdCk6Ci0gICAgICAgICogcHJpbnRpbmcvc2NyaXB0LXRlc3RzL25vLWNvbnRlbnQtZW1wdHkt
cGFnZXMuanM6IEFkZGVkLgotICAgICAgICAodGVzdCk6Ci0gICAgICAgICogcHJpbnRpbmcvc2Ny
aXB0LXRlc3RzL3BhZ2UtYnJlYWstZGlzcGxheS1ub25lLmpzOiBBZGRlZC4KLSAgICAgICAgKHRl
c3QpOgotICAgICAgICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFrLW1hcmdpbi1j
b2xsYXBzZWQuanM6IEFkZGVkLgotICAgICAgICAodGVzdCk6Ci0KLTIwMTAtMDYtMjAgIEtlbnQg
VGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHRlc3Qg
ZXhwZWN0YXRpb24gdXBkYXRlLgotCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9l
eHBlY3RhdGlvbnMudHh0OgotICAgICAgICAgIFVwZGF0ZSBmb3Igb3RoZXIgPG1ldGVyPiB0ZXN0
cyBhbmQgZmxha3kvc2xvdyB0ZXN0cwotCi0yMDEwLTA2LTIwICBUb255IEdlbnRpbGNvcmUgIDx0
b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0K
LSAgICAgICAgVGVzdCB0byBtYWtlIHN1cmUgcGFyc2luZyBvZiBhc3luYyBhdHRyaWJ1dGUgd29y
a3MgZm9yIEhUTUwgc2NyaXB0IHRhZ3MKLSAgICAgICAgYW5kIHRlc3QgdG8gbWFrZSBzdXJlIHRo
YXQgYXN5bmMgaXMgbm90IHBhcnNlZCBmb3IgU1ZHIHNjcmlwdCB0YWdzLgotICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkwMjYKLQotICAgICAgICAqIGZh
c3QvZG9tL0hUTUxTY3JpcHRFbGVtZW50L3NjcmlwdC1hc3luYy1hdHRyLWV4cGVjdGVkLnR4dDog
QWRkZWQuCi0gICAgICAgICogZmFzdC9kb20vSFRNTFNjcmlwdEVsZW1lbnQvc2NyaXB0LWFzeW5j
LWF0dHIuaHRtbDogQWRkZWQuCi0gICAgICAgICogc3ZnL2RvbS9TVkdTY3JpcHRFbGVtZW50L3Nj
cmlwdC1hc3luYy1hdHRyLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogc3ZnL2RvbS9T
VkdTY3JpcHRFbGVtZW50L3NjcmlwdC1hc3luYy1hdHRyLnN2ZzogQWRkZWQuCi0KLTIwMTAtMDYt
MjAgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KLQotICAgICAgICBOb3QgcmV2aWV3
ZWQsIGp1c3QgY2xlYW5pbmcgdXAgc3ZuLgotCi0gICAgICAgIFJlbW92aW5nIHBsYXRmb3JtL21h
Yy1zbm93bGVvcGFyZC9lZGl0aW5nIHNpbmNlIGl0J3MgZW1wdHkuICBUaGUgdGVzdAotICAgICAg
ICByZXN1bHRzIHdlcmUgbW92ZWQgaW4gcjYwNjkzLgotCi0gICAgICAgICogcGxhdGZvcm0vbWFj
LXNub3dsZW9wYXJkL2VkaXRpbmc6IFJlbW92ZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjLXNu
b3dsZW9wYXJkL2VkaXRpbmcvc3BlbGxpbmc6IFJlbW92ZWQuCi0KLTIwMTAtMDYtMjAgIFJvYmVy
dCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IFNpbW9u
IEhhdXNtYW5uLgotCi0gICAgICAgIFtRdF0gTlBQX1NldFdpbmRvdyBzZWVtcyB0byBub3QgYmUg
Y2FsbGVkIHdoZW4gVGVzdE5ldHNjYXBlUGx1Z2luIGlzIG1vdmVkCi0KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2NzAyCi0KLSAgICAgICAgc2V0TlBX
aW5kb3dJZk5lZWRlZCgpIGlzIGNhbGxlZCBvbiBwYWludCgpIGluIFBsdWdpblZpZXdRdCwgd2hp
Y2ggZG9lc24ndAotICAgICAgICB3b3JrIGZvciBEUlQuIFNvIGNhbGwgaXQgaWYgd2UgYXJlIGlu
IERSVCBtb2RlIGFuZCB0aGUgd2luZG93IGdlb21ldHJ5Ci0gICAgICAgIGhhcyBjaGFuZ2VkLgot
Ci0gICAgICAgIFVuc2tpcHMgcGx1Z2lucy9yZWVudHJhbnQtdXBkYXRlLXdpZGdldC1wb3NpdGlv
bnMuaHRtbAotCi0gICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKLQotMjAxMC0wNi0xOSAg
SGF5YXRvIEl0byAgPGhheWF0b0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkg
QWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGQgdGVzdHMgZm9yIENTUyAnb3JwaGFucycgYW5kICd3
aWRvd3MnIHByb3BlcnRpZXMuCi0gICAgICAgIEFsbCB0ZXN0cyBhcmUgZXhwZWN0ZWQgdG8gZmFp
bCBkdWUgdG8gbGFjayBvZiBpbXBsZW1lbnRhdGlvbnMuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODIxCi0KLSAgICAgICAgKiBwcmludGluZy9w
YWdlLWJyZWFrLW9ycGhhbnMtYW5kLXdpZG93cy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAg
ICAqIHByaW50aW5nL3BhZ2UtYnJlYWstb3JwaGFucy1hbmQtd2lkb3dzLmh0bWw6IEFkZGVkLgot
ICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJlYWstb3JwaGFucy1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJlYWstb3JwaGFucy5odG1sOiBBZGRlZC4KLSAg
ICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLXdpZG93cy1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJlYWstd2lkb3dzLmh0bWw6IEFkZGVkLgotICAgICAg
ICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFrLW9ycGhhbnMtYW5kLXdpZG93cy5q
czogQWRkZWQuCi0gICAgICAgICh0ZXN0KToKLSAgICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVz
dHMvcGFnZS1icmVhay1vcnBoYW5zLmpzOiBBZGRlZC4KLSAgICAgICAgKHRlc3QpOgotICAgICAg
ICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFrLXdpZG93cy5qczogQWRkZWQuCi0g
ICAgICAgICh0ZXN0KToKLQotMjAxMC0wNi0xOSAgSGF5YXRvIEl0byAgPGhheWF0b0BjaHJvbWl1
bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGQg
dGVzdHMgZm9yICdwYWdlLWJyZWFrLXtiZWZvcmUsYWZ0ZXJ9OiBhdm9pZCcuCi0gICAgICAgIEFs
bCB0ZXN0cyBhcmUgZXhwZWN0ZWQgdG8gZmFpbCBkdWUgdG8gbGFjayBvZiBpbXBsZW1lbnRhdGlv
bnMuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQw
ODE0Ci0KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLWFmdGVyLWF2b2lkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay1hZnRlci1hdm9pZC5o
dG1sOiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLWF2b2lkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay1hdm9pZC5odG1sOiBB
ZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLWJlZm9yZS1hdm9pZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJlYWstYmVmb3JlLWF2b2lk
Lmh0bWw6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFr
LWFmdGVyLWF2b2lkLmpzOiBBZGRlZC4KLSAgICAgICAgKHRlc3QpOgotICAgICAgICAqIHByaW50
aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFrLWF2b2lkLmpzOiBBZGRlZC4KLSAgICAgICAgKHRl
c3QpOgotICAgICAgICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFrLWJlZm9yZS1h
dm9pZC5qczogQWRkZWQuCi0gICAgICAgICh0ZXN0KToKLQotMjAxMC0wNi0xOSAgVG9ueSBHZW50
aWxjb3JlICA8dG9ueWdAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0g
QmFydGguCi0KLSAgICAgICAgUGVyc2lzdCBWOCdzIFNjcmlwdERhdGEgdG8gdGhlIG1lbW9yeSBj
YWNoZS4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4
NjYxCi0KLSAgICAgICAgV2hlbiBWOCBTY3JpcHREYXRhIGNhY2hpbmcgd2FzIG9yaWdpbmFsbHkg
c3VibWl0dGVkIGl0IGNhdXNlcyBjcmFzaGVzCi0gICAgICAgIGluIGV4dGVybmFsIHNjcmlwdHMg
d2l0aCBoaWdoLWJ5dGUgY2hhcmFjdGVycy4gVGhpcyBuZXcgdGVzdCBjcmFzaGVzIG9uCi0gICAg
ICAgIHRoZSBvcmlnaW5hbCBjb2RlLCBidXQgbm93IHBhc3Nlcy4KLQotICAgICAgICAqIGZhc3Qv
anMvcGFyc2VyLWhpZ2gtYnl0ZS1jaGFyYWN0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAg
ICAgKiBmYXN0L2pzL3BhcnNlci1oaWdoLWJ5dGUtY2hhcmFjdGVyLmh0bWw6IEFkZGVkLgotICAg
ICAgICAqIGZhc3QvanMvc2NyaXB0LXRlc3RzL3BhcnNlci1oaWdoLWJ5dGUtY2hhcmFjdGVyLmpz
OiBBZGRlZC4KLSAgICAgICAgKHJ1blRlc3QpOgotCi0yMDEwLTA2LTE5ICBEaW1pdHJpIEdsYXpr
b3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgZXhwZWN0
YXRpb25zIHVwZGF0ZS4KLQotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0
YXRpb25zLnR4dDogVHVuZWQgZXhwZWN0YXRpb25zIGFjY29yZGluZyB0byB0aGUgYm90IHJlc3Vs
dCBydW5zLgotCi0yMDEwLTA2LTE5ICBUb255IEdlbnRpbGNvcmUgIDx0b255Z0BjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgQWRkIExh
eW91dFRlc3QgdG8gZW5zdXJlIHJlc291cmNlcyB3aXRoaW4gPG5vc2NyaXB0PiBhcmUgbm90IHBy
ZWxvYWRlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA4NDkKLQotICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL25vc2NyaXB0LWV4cGVjdGVkLnR4dDog
QWRkZWQuCi0gICAgICAgICogZmFzdC9wcmVsb2FkZXIvbm9zY3JpcHQuaHRtbDogQWRkZWQuCi0g
ICAgICAgICogZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL25vc2NyaXB0LWltYWdlMS5wbmc6IENv
cGllZCBmcm9tIEJ1Z3NTaXRlL2RhdGEvbWFpbC4KLSAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9y
ZXNvdXJjZXMvbm9zY3JpcHQtaW1hZ2UyLnBuZzogQ29waWVkIGZyb20gQnVnc1NpdGUvZGF0YS9t
YWlsLgotCi0yMDEwLTA2LTE5ICBOaWtpdGEgVmFzaWx5ZXYgIDxtZUBlbHYxcy5ydT4KLQotICAg
ICAgICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgotCi0gICAgICAgIFdlYiBJbnNwZWN0b3I6
IHN1YnRpdGxlRWxlbWVudC50ZXh0Q29udGVudCBpcyBhbHdheXMgZW1wdHkuIFVzZSBzdWJ0aXRs
ZUFzVGV4dCBtZXRob2QgaW5zdGVhZC4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwNDIwCi0KLSAgICAgICAgKiBpbnNwZWN0b3IvZWxlbWVudHMtdGVz
dHMuanM6Ci0gICAgICAgIChmcm9udGVuZF9nZXRTZWxlY3RlZEVsZW1lbnRTdHlsZXMpOgotCi0y
MDEwLTA2LTE5ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAg
ICAgICAgVW5yZXZpZXdlZCwgZXhwZWN0YXRpb25zIHVwZGF0ZQotCi0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OiBBZGRlZCBhIGZsYWt5IGNyYXNoLgot
Ci0yMDEwLTA2LTE5ICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KLQotICAgICAg
ICBVbnJldmlld2VkLCB0ZXN0IGV4cGVjdGF0aW9uIHVwZGF0ZS4KLQotICAgICAgICAqIHBsYXRm
b3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDoKLSAgICAgICAgICAtIHByb2dyZXNz
LWVsZW1lbnQuaHRtbCBpcyBlc3NlbnRpYWxseSBmbGFreSBvbiBNYWMuCi0gICAgICAgICAgLSB1
c2UtY2xpcHBlZC1oaXQuc3ZnIHBhc3NlcyByZWNlbnRseS4KLQotMjAxMC0wNi0xOSAgS2VudCBU
YW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgdGVzdCBl
eHBlY3RhdGlvbiB1cGRhdGUuCi0KLSAgICAgICAgQWRkIGV4cGVjdGF0aW9ucyBmb3IgPG1ldGVy
PiBhbmQgPHByb2dyZXNzPi4KLQotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zh
c3QvZG9tL0hUTUxNZXRlckVsZW1lbnQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2Fw
YWNpdHktZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2Fw
YWNpdHktZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1s
aW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLXJhdGluZy1y
ZWxldmFuY3ktZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2No
cm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMt
cmF0aW5nLXJlbGV2YW5jeS1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3Jt
L2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMt
ZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxp
bnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0ZWQucG5n
OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1M
TWV0ZXJFbGVtZW50L21ldGVyLXN0eWxlcy1jaGFuZ2luZy1wc2V1ZG8tZXhwZWN0ZWQuY2hlY2tz
dW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hU
TUxNZXRlckVsZW1lbnQvbWV0ZXItc3R5bGVzLWNoYW5naW5nLXBzZXVkby1leHBlY3RlZC5wbmc6
IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxN
ZXRlckVsZW1lbnQvbWV0ZXItc3R5bGVzLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAg
ICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21l
dGVyLXN0eWxlcy1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJv
Z3Jlc3MtZWxlbWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0tbGludXgvZmFzdC9kb20vSFRNTFByb2dyZXNzRWxlbWVudC9wcm9ncmVzcy1l
bGVtZW50LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0t
bWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3Jt
L2Nocm9taXVtLW1hYy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2Vz
LWNhcGFjaXR5LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1j
YXBhY2l0eS1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
LW1hYy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLXJhdGluZy1y
ZWxldmFuY3ktZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2No
cm9taXVtLW1hYy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLXJh
dGluZy1yZWxldmFuY3ktZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1lbGVtZW50LWV4cGVj
dGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFz
dC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1vcHRpbXVtcy1leHBlY3RlZC5jaGVja3N1bTog
QWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRl
ckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHls
ZXMtY2hhbmdpbmctcHNldWRvLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHls
ZXMtZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
LW1hYy9mYXN0L2RvbS9IVE1MUHJvZ3Jlc3NFbGVtZW50OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTFByb2dyZXNzRWxlbWVudC9wcm9ncmVzcy1l
bGVtZW50LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS1tYWMvZmFzdC9kb20vSFRNTFByb2dyZXNzRWxlbWVudC9wcm9ncmVzcy1lbGVtZW50LWV4
cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3Qv
ZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJvZ3Jlc3MtZWxlbWVudC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9IVE1MTWV0ZXJF
bGVtZW50OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20v
SFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC5jaGVj
a3N1bTogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hU
TUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2FwYWNpdHktZXhwZWN0ZWQucG5nOiBB
ZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVy
RWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50
L21ldGVyLWFwcGVhcmFuY2VzLXJhdGluZy1yZWxldmFuY3ktZXhwZWN0ZWQuY2hlY2tzdW06IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9IVE1MTWV0ZXJF
bGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLXJhdGluZy1yZWxldmFuY3ktZXhwZWN0ZWQucG5nOiBB
ZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVy
RWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVjdGVkLnR4dDog
QWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRl
ckVsZW1lbnQvbWV0ZXItZWxlbWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXIt
ZWxlbWVudC1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
LXdpbi9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1l
dGVyRWxlbWVudC9tZXRlci1vcHRpbXVtcy1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAg
ICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0
ZXItb3B0aW11bXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1vcHRpbXVtcy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9I
VE1MTWV0ZXJFbGVtZW50L21ldGVyLXN0eWxlcy1jaGFuZ2luZy1wc2V1ZG8tZXhwZWN0ZWQuY2hl
Y2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9I
VE1MTWV0ZXJFbGVtZW50L21ldGVyLXN0eWxlcy1jaGFuZ2luZy1wc2V1ZG8tZXhwZWN0ZWQucG5n
OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1l
dGVyRWxlbWVudC9tZXRlci1zdHlsZXMtY2hhbmdpbmctcHNldWRvLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVs
ZW1lbnQvbWV0ZXItc3R5bGVzLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHls
ZXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4v
ZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHlsZXMtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTFByb2dyZXNz
RWxlbWVudDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9t
L0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJvZ3Jlc3MtYmFyLXZhbHVlLXBzZXVkby1lbGVtZW50LWV4
cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4v
ZmFzdC9kb20vSFRNTFByb2dyZXNzRWxlbWVudC9wcm9ncmVzcy1iYXItdmFsdWUtcHNldWRvLWVs
ZW1lbnQtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13
aW4vZmFzdC9kb20vSFRNTFByb2dyZXNzRWxlbWVudC9wcm9ncmVzcy1lbGVtZW50LWV4cGVjdGVk
LmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9k
b20vSFRNTFByb2dyZXNzRWxlbWVudC9wcm9ncmVzcy1lbGVtZW50LWV4cGVjdGVkLnBuZzogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxQcm9ncmVz
c0VsZW1lbnQvcHJvZ3Jlc3MtZWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0
OgotCi0yMDEwLTA2LTAyICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KLQotICAg
ICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIFtRdF0gU3VwcG9ydCBldmFs
dWF0ZVNjcmlwdEluSXNvbGF0ZWRXb3JsZCgpCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMDc5Ci0KLSAgICAgICAgVGhpcyBpbml0aWFsIGltcGxl
bWVudGF0aW9uIHBhc3NlcyAyNSBvZiB0aGUgMjcgdGVzdHMgaW4KLSAgICAgICAgaHR0cC90ZXN0
cy9pc29sYXRlZHdvcmxkIGFzIHdlbGwgYXMgZm91ciBvdGhlcnMgdGhhdCB1c2UgdGhlCi0gICAg
ICAgIGNhbGwgaW4gTGF5b3V0VGVzdHMuCi0KLSAgICAgICAgRnVydGhlciB3b3JrL2ludmVzdGln
YXRpb24gaXMgcmVxdWlyZWQgdG8gc3VwcG9ydCB0aGUgdHdvCi0gICAgICAgIHJlbWFpbmluZyB0
ZXN0cy4KLQotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0KLTIwMTAtMDYtMTkgIEtl
bnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHRl
c3QgZXhwZWN0YXRpb24gdXBkYXRlLgotCi0gICAgICAgIFJlYmFzZWxpbmUgZm9yIHRldERlY29y
YXRpb24uc3ZnLgotCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgvc3ZnL2JhdGlr
L3RleHQvdGV4dERlY29yYXRpb24tZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L3N2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0aW9uLWV4
cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL3N2Zy9i
YXRpay90ZXh0L3RleHREZWNvcmF0aW9uLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAg
ICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vc3ZnL2JhdGlrL3RleHQvdGV4dERlY29yYXRpb24t
ZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vc3Zn
L2JhdGlrL3RleHQvdGV4dERlY29yYXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6Ci0KLTIwMTAtMDYtMTkg
IFpoZW55YW8gTW8gIDx6bW9AZ29vZ2xlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEaW1p
dHJpIEdsYXprb3YuCi0KLSAgICAgICAgZmFzdC9jYW52YXMvd2ViZ2wvZ2V0LWFjdGl2ZS10ZXN0
Lmh0bWwgZmFpbGVkIGluIENocm9tZSBNYWMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwNDk2Ci0KLSAgICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9n
ZXQtYWN0aXZlLXRlc3QtZXhwZWN0ZWQudHh0OiBUZXN0IG9mIHR3byBjb250ZXh0cyBhbmQgdHdv
IHByb2dyYW1zLCBhbHNvIHRlc3QgdGhlIHVuaWZvcm0gYXJyYXkgbmFtZSBlbmRzIHdpdGggIlsw
XSIuCi0gICAgICAgICogZmFzdC9jYW52YXMvd2ViZ2wvc2NyaXB0LXRlc3RzL2dldC1hY3RpdmUt
dGVzdC5qczogRGl0dG8uCi0KLTIwMTAtMDYtMTggIFJvYiBCdWlzICA8cndsYnVpc0BnbWFpbC5j
b20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTc1Ci0gICAgICAgIGxheW91dCB0
ZXN0IHN2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0aW9uLnN2ZyBoYW5ncwotCi0gICAgICAgIFJl
ZW5hYmxlIHRoaXMgdGVzdCBzaW5jZSBjcmFzaCBpcyBnb25lICh0ZXN0ZWQgb24gT1MgWCAxMC41
LjgpLgotCi0gICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0
aW9uLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3Zn
L2JhdGlrL3RleHQvdGV4dERlY29yYXRpb24tZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvc3ZnL2JhdGlrL3RleHQvdGV4dERlY29yYXRpb24tZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBzdmcvYmF0aWsvdGV4dC90ZXh0RGVjb3JhdGlvbi5zdmc6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9zdmcvYmF0aWsvdGV4dC90ZXh0RGVjb3JhdGlvbi5zdmct
ZGlzYWJsZWQuCi0KLTIwMTAtMDYtMTggIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5j
b20+Ci0KLSAgICAgICAgVGVzdCBieSBDaHJpcyBCcmljaGZvcmQuCi0KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NzU5Ci0gICAgICAgIENoaWxkTm9k
ZUxpc3QgZm9yIGFuIGF0dHJpYnV0ZSBub2RlIGlzIG5vdCBwcm9wZXJseSBpbnZhbGlkYXRlZCBh
ZnRlciBhcHBlbmRpbmcgYSBjaGlsZAotCi0gICAgICAgIFRoaXMgaXNzdWUgaGFzIGJlZW4gZml4
ZWQgaW4gYW5vdGhlciBidWcsIGp1c3QgbGFuZGluZyBhbiBhZGRpdGlvbmFsIHRlc3QuCi0KLSAg
ICAgICAgKiBmYXN0L2RvbS9BdHRyL2NoaWxkLW5vZGVzLWxlbmd0aC1jYWNoZS1leHBlY3RlZC50
eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvZG9tL0F0dHIvY2hpbGQtbm9kZXMtbGVuZ3RoLWNh
Y2hlLmh0bWw6IEFkZGVkLgotCi0yMDEwLTA2LTE4ICBBYmhpc2hlayBBcnlhICA8aW5mZXJub0Bj
aHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAg
ICBUZXN0cyB0aGF0IHdlIGRvIG5vdCBjcmFzaCB3aGlsZSByZW5kZXJpbmcgYSBmaXhlZCB0YWJs
ZSBsYXlvdXQuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MDgxMgotCi0gICAgICAgICogZmFzdC90YWJsZS96ZXJvLWNvbHNwYW4tY3Jhc2gtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3RhYmxlL3plcm8tY29sc3Bhbi1jcmFzaC5o
dG1sOiBBZGRlZC4KLQotMjAxMC0wNi0xOCAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29t
PgotCi0gICAgICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgotCi0gICAgICAgIEluY29y
cmVjdCBoYW5kbGluZyBvZiBtdWx0aXBsZSBCT01zIHNjYXR0ZXJlZCB0aHJvdWdoIGEgZmlsZS4K
LSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODY1Ci0K
LSAgICAgICAgUHV0IGEgZmV3IG1vcmUgQk9NcyBpbnRvIHRoaXMgdGVzdGNhc2Ugc28gdGhhdCBp
dCBoaXRzIHRoZSBvdGhlciBjYXNlcwotICAgICAgICB0aGF0IHdlcmUgbWlzc2VkIGJlZm9yZS4K
LQotICAgICAgICAqIGZhc3QvanMvcmVzb3VyY2VzL2JvbS1pbi1maWxlLXJldGFpbnMtY29ycmVj
dC1vZmZzZXQuanM6Ci0gICAgICAgIChnLmYpOgotICAgICAgICAoZyk6Ci0KLTIwMTAtMDYtMTgg
IERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJl
dmlld2VkLCBleHBlY3RhdGlvbnMgdXBkYXRlLgotCi0gICAgICAgIFVwZGF0ZSBhIGZldyBtb3Jl
IGNocm9taXVtLXdpbiBiYXNlbGluZXMgYWZ0ZXIgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFu
Z2VzZXQvNjEzOTMuCi0KLTIwMTAtMDYtMTggIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNo
cm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBleHBlY3RhdGlvbnMgdXBkYXRlLgot
Ci0gICAgICAgIFVwZGF0ZSBhIGZldyBtb3JlIGNocm9taXVtLW1hYyBiYXNlbGluZXMgYWZ0ZXIg
aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjEzOTMuCi0KLTIwMTAtMDYtMTggIE1h
cnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgotCi0gICAgICAgIFVucmV2aWV3
ZWQuCi0KLSAgICAgICAgU2tpcHBlZCBzb21lIGZhaWxpbmcgdGVzdHMgYW5kIGNvbmdsb21lcmF0
ZWQgYSBza2lwcGVkIHRlc3QgaW50byBhbm90aGVyIGdyb3VwLgotCi0gICAgICAgICogcGxhdGZv
cm0vZ3RrL1NraXBwZWQ6IENsZWFudXBzIGFuZCB0aHJlZSBtb3JlIHNraXBwZWQgdGVzdHMuCi0K
LTIwMTAtMDYtMTggIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KLQot
ICAgICAgICBVbnJldmlld2VkLCBleHBlY3RhdGlvbnMgdXBkYXRlLgotCi0gICAgICAgIFVwZGF0
ZSBjaHJvbWl1bSBiYXNlbGluZXMgYWZ0ZXIgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvNjE0MTguCi0KLTIwMTAtMDYtMTggIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9t
aXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBleHBlY3RhdGlvbnMgdXBkYXRlLgotCi0g
ICAgICAgIFVwZGF0ZSBjaHJvbWl1bS1saW51eCBiYXNlbGluZXMgYWZ0ZXIgaHR0cDovL3RyYWMu
d2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjEzOTMuCi0KLTIwMTAtMDYtMTggIERpbWl0cmkgR2xhemtv
diAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBleHBlY3Rh
dGlvbnMgdXBkYXRlLgotCi0gICAgICAgIFVwZGF0ZSBjaHJvbWl1bS13aW4gYmFzZWxpbmVzIGFm
dGVyIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzYxMzkzLgotCi0yMDEwLTA2LTE4
ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KLQotICAgICAgICBVbnJl
dmlld2VkLgotCi0gICAgICAgIEFkZGluZyBiYXNlbGluZXMgZm9yIG5ldyB0ZXN0cyBhbmQgY29y
cmVjdGluZyBvbmUgaW5jb3JyZWN0IGJhc2VsaW5lLgotCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L21lZGlhL3ZpZGVvLXJlcGxhY2VzLXBvc3Rlci1leHBlY3RlZC50eHQ6IENvcnJldGluZyB0aGlz
IGluY29ycmVjdCBiYXNlbGluZS4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2hpeGllL3Rl
eHQvMDAxLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90
ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3F1ZWV6ZS0xLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNw
YWNpbmctc3F1ZWV6ZS0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0v
Z3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3F1ZWV6ZS0zLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0
TGVuZ3RoLXNwYWNpbmctc3F1ZWV6ZS00LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3RyZXRjaC0x
LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3Nl
bGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3RyZXRjaC0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0g
ICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmct
c3RyZXRjaC0zLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2
Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3RyZXRjaC00LWV4cGVjdGVkLnR4dDog
QWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3Ro
LXNwYWNpbmdBbmRHbHlwaHMtc3F1ZWV6ZS0xLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmdBbmRHbHlw
aHMtc3F1ZWV6ZS0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmdBbmRHbHlwaHMtc3F1ZWV6ZS0zLWV4
cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVj
dC10ZXh0TGVuZ3RoLXNwYWNpbmdBbmRHbHlwaHMtc3F1ZWV6ZS00LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNw
YWNpbmdBbmRHbHlwaHMtc3RyZXRjaC0xLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmdBbmRHbHlwaHMt
c3RyZXRjaC0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2
Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmdBbmRHbHlwaHMtc3RyZXRjaC0zLWV4cGVj
dGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC10
ZXh0TGVuZ3RoLXNwYWNpbmdBbmRHbHlwaHMtc3RyZXRjaC00LWV4cGVjdGVkLnR4dDogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC14LWxpc3QtMS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QteC1s
aXN0LTItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3Rl
eHQvc2VsZWN0LXgtbGlzdC0zLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZv
cm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC14LWxpc3QtNC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QteC1saXN0LXdpdGgtdHNwYW5zLTEt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3RleHQvc2Vs
ZWN0LXgtbGlzdC13aXRoLXRzcGFucy0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC14LWxpc3Qtd2l0aC10c3BhbnMtMy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QteC1s
aXN0LXdpdGgtdHNwYW5zLTQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLQotMjAxMC0wNi0xOCAgUm9i
ZXJ0IEhvZ2FuICA8cm9iZXJ0QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgS2Vu
bmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCi0KLSAgICAgICAgW1F0XSBwYXNzIHBsdWdpbnMvb3Bl
bi1hbmQtY2xvc2Utd2luZG93LXdpdGgtcGx1Z2luLmh0bWwgb24gUXQKLQotICAgICAgICBDYXB0
dXJlIGxvZ0Rlc3Ryb3kgbWVzc2FnZXMgZnJvbSB0aGUgdGVzdCBwbHVnaW4uIERSVCdzIFdlYlBh
Z2UKLSAgICAgICAgaXMgYWxyZWFkeSBkZXN0cm95ZWQgYnkgdGhlIHRpbWUgdGhleSBhcmUgZW1p
dHRlZC4KLQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzMzMzMKLQotICAgICAgICBVbnNraXA6Ci0gICAgICAgIHBsdWdpbnMvb3Blbi1hbmQtY2xvc2Ut
d2luZG93LXdpdGgtcGx1Z2luLmh0bWwKLSAgICAgICAgcGx1Z2lucy9nZXR1cmxub3RpZnktZHVy
aW5nLWRvY3VtZW50LXRlYXJkb3duLmh0bWwKLQotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBw
ZWQ6Ci0KLTIwMTAtMDYtMTggIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29t
PgotCi0gICAgICAgIFVucmV2aWV3ZWQuCi0KLSAgICAgICAgQWRkaW5nIGJhc2VsaW5lcyBmb3Ig
bmV3IHRlc3RzLiBTb21lIHRlc3RzIHRoYXQgZmFpbCBoYXZlIGJlZW4gbGFiZWxlZAotICAgICAg
ICB3aXRoIGJ1ZyBudW1iZXJzLiBBbHNvIHJlbW92ZWQgYSBuZXdseSBkZWZ1bmN0IHRlc3QgZnJv
bSB0aGUgc2tpcHBlZCBsaXN0LgotCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6IFJl
bW92ZWQgbmV3bHkgYmFzZWxpbmVkIHRlc3RzIGFuZCBvbmUgZGVmdW5jdCB0ZXN0LgotICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3QtdGV4dC1vdmVyZmxvdy1l
bGxpcHNpcy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0
L2JhY2tncm91bmRzL3F1aXJrcy1tb2RlLWxpbmUtYm94LWJhY2tncm91bmRzLWV4cGVjdGVkLnR4
dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvY3NzL2NzczMtc3BhY2UtaW4t
bnRoLWFuZC1sYW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L2Zhc3QvY3NzL2lubGluZS1lbGVtZW50LWxpbmUtYnJlYWstZXhwZWN0ZWQudHh0OiBBZGRlZC4K
LSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9jc3Mvbm9uLXN0YW5kYXJkLWNoZWNrYm94LXNp
emUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9jc3Mv
cHNldWRvLWVsZW1lbnQtbGluZS1icmVhay1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9mYXN0L2xpc3RzL3czLWNzczMtbGlzdC1zdHlsZXMtYWxwaGFiZXRpYy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L211bHRpY29s
L3NpbmdsZS1saW5lLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L2Zhc3QvcmVwYWludC9ibG9jay1uby1pbmZsb3ctY2hpbGRyZW4tZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9yZXBhaW50L21vdmluZy1zaGFkb3ctb24t
Y29udGFpbmVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zh
c3QvcmVwYWludC9tb3Zpbmctc2hhZG93LW9uLXBhdGgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAg
ICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC90YWJsZS9maXhlZC10YWJsZS13aXRoLXBlcmNlbnQt
aW5zaWRlLXBlcmNlbnQtdGFibGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvZmFzdC90YWJsZS9maXhlZC10YWJsZS13aXRoLXBlcmNlbnQtd2lkdGgtaW5zaWRl
LWF1dG8tdGFibGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsv
ZmFzdC90YWJsZS9maXhlZC10YWJsZS13aXRoLXBlcmNlbnQtd2lkdGgtaW5zaWRlLWRpdi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L3RhYmxlL2ZpeGVk
LXRhYmxlLXdpdGgtcGVyY2VudC13aWR0aC1pbnNpZGUtZXh0cmEtbGFyZ2UtZGl2LWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvdGFibGUvZml4ZWQtdGFi
bGUtd2l0aC1wZXJjZW50LXdpZHRoLWluc2lkZS1maXhlZC13aWR0aC10YWJsZS1leHBlY3RlZC50
eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L3RhYmxlL2ZpeGVkLXRhYmxl
LXdpdGgtc21hbGwtcGVyY2VudC13aWR0aC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9tZWRpYS92aWRlby1yZXBsYWNlcy1wb3N0ZXItZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2Nzcy9zaGFkb3ctYW5kLW9wYWNpdHkt
ZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2Nz
cy9zaGFkb3ctYW5kLW9wYWNpdHktZXhwZWN0ZWQudHh0LgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9zdmcvY3VzdG9tL2VtcHR5LW1hc2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9qcy1yZXBhaW50LXJlY3Qtb24tcGF0aC13aXRoLXN0cm9r
ZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcv
Y3VzdG9tL2pzLXJlcGFpbnQtcmVjdC1vbi1wYXRoLXdpdGgtc3Ryb2tlLWV4cGVjdGVkLnR4dC4K
LSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9tYXJrZXItb3BhY2l0eS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvY3VzdG9tL21hcmtlci1y
ZWZlcmVuY2VQb2ludC1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvY3VzdG9tL21hcmtlci1yZWZlcmVuY2VQb2ludC1leHBlY3RlZC50eHQuCi0g
ICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9jdXN0b20vbWFzay1pbnZhbGlkYXRpb24tZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9wYXR0ZXJu
LWV4Y2Vzc2l2ZS1tYWxsb2MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvc3ZnL2N1c3RvbS9wYXR0ZXJuLXNpemUtYmlnZ2VyLXRoYW4tdGFyZ2V0LXNpemUtZXhw
ZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9wYXR0ZXJuLXNpemUtYmlnZ2VyLXRoYW4tdGFyZ2V0LXNpemUtZXhwZWN0ZWQudHh0LgotICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvY3VzdG9tL3BhdHRlcm4tc2tldy10cmFuc2Zvcm1lZC1l
eHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3Vz
dG9tL3BhdHRlcm4tc2tldy10cmFuc2Zvcm1lZC1leHBlY3RlZC50eHQuCi0gICAgICAgICogcGxh
dGZvcm0vZ3RrL3N2Zy9jdXN0b20vcmVsYXRpdmUtc2l6ZWQtY29udGVudC1leHBlY3RlZC50eHQ6
IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVk
LWRlZXAtc2hhZG93LXRyZWUtY29udGVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLXNoYWRvdy10cmVlLWNvbnRl
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3Rv
bS9zdHJva2Utd2lkdGgtbGFyZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvc3ZnL2N1c3RvbS90ZXh0LXh5LXVwZGF0ZXMtU1ZHTGlzdC1leHBlY3RlZC50eHQ6
IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvZmlsdGVycy9mZURpc3BsYWNlbWVu
dE1hcC1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9z
dmcvZmlsdGVycy9mZURpc3BsYWNlbWVudE1hcC1leHBlY3RlZC50eHQuCi0gICAgICAgICogcGxh
dGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1mb3JlaWduT2JqZWN0LWV4cGVjdGVk
LnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9vdmVyZmxvdy9v
dmVyZmxvdy1vbi1mb3JlaWduT2JqZWN0LWV4cGVjdGVkLnR4dC4KLSAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvc3ZnL292ZXJmbG93L292ZXJmbG93LW9uLWlubmVyLXN2Zy1lbGVtZW50LWRlZmF1bHRz
LWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9v
dmVyZmxvdy9vdmVyZmxvdy1vbi1pbm5lci1zdmctZWxlbWVudC1kZWZhdWx0cy1leHBlY3RlZC50
eHQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1pbm5l
ci1zdmctZWxlbWVudC1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24taW5uZXItc3ZnLWVsZW1lbnQtZXhwZWN0
ZWQudHh0LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24t
b3V0ZXJtb3N0LXN2Zy1lbGVtZW50LWRlZmF1bHRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAg
ICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3Zn
LWVsZW1lbnQtaWdub3JlLWF0dHJpYnV0ZS0xLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3ZnLWVs
ZW1lbnQtaWdub3JlLWF0dHJpYnV0ZS0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3ZnLWVsZW1l
bnQtaWdub3JlLWF0dHJpYnV0ZS0zLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxh
dGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3ZnLWVsZW1lbnQt
aW4teGh0bWwtYXV0by1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0ZXJtb3N0LXN2Zy1lbGVtZW50LWluLXhodG1s
LWRlZmF1bHRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2
Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3ZnLWVsZW1lbnQtaW4teGh0bWwtaGlk
ZGVuLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9vdmVy
Zmxvdy9vdmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3ZnLWVsZW1lbnQtaW4teGh0bWwtc2Nyb2xsLWV4
cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9v
dmVyZmxvdy1vbi1vdXRlcm1vc3Qtc3ZnLWVsZW1lbnQtaW4teGh0bWwtdmlzaWJsZS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9mb3JlaWduT2Jq
ZWN0LXRleHQtY2xpcHBpbmctYnVnLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxh
dGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWV4cGVjdGVkLnR4
dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdGlvbi1kb3Vi
bGVjbGljay1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcv
dGV4dC9zZWxlY3Rpb24tc3R5bGVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxh
dGZvcm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdGlvbi10cmlwbGVjbGljay1leHBlY3RlZC50eHQ6IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS9wYWdlL2Fic29sdXRlLXNpemVk
LWRvY3VtZW50LW5vLXNjcm9sbGJhcnMtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL3pvb20vcGFnZS9hYnNvbHV0ZS1zaXplZC1kb2N1bWVudC1u
by1zY3JvbGxiYXJzLWV4cGVjdGVkLnR4dC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pv
b20vcGFnZS9hYnNvbHV0ZS1zaXplZC1kb2N1bWVudC1zY3JvbGxiYXJzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3BhZ2UvcmVsYXRpdmUtc2l6
ZWQtZG9jdW1lbnQtc2Nyb2xsYmFycy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL2d0ay9zdmcvem9vbS9wYWdlL3pvb20tY29vcmRzLXZpZXdhdHRyLTAxLWItZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pvb20vcGFnZS96b29t
LWZvcmVpZ25PYmplY3QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9n
dGsvc3ZnL3pvb20vcGFnZS96b29tLWhpeGllLW1peGVkLTAwOC1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS9wYWdlL3pvb20taGl4aWUtbWl4ZWQt
MDA5LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29t
L3BhZ2Uvem9vbS1oaXhpZS1yZW5kZXJpbmctbW9kZWwtMDA0LWV4cGVjdGVkLnR4dDogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3BhZ2Uvem9vbS1zdmctZmxvYXQtYm9y
ZGVyLXBhZGRpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsv
c3ZnL3pvb20vdGV4dC9hYnNvbHV0ZS1zaXplZC1kb2N1bWVudC1uby1zY3JvbGxiYXJzLWV4cGVj
dGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy96b29tL3Rl
eHQvYWJzb2x1dGUtc2l6ZWQtZG9jdW1lbnQtbm8tc2Nyb2xsYmFycy1leHBlY3RlZC50eHQuCi0g
ICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3RleHQvYWJzb2x1dGUtc2l6ZWQtZG9jdW1l
bnQtc2Nyb2xsYmFycy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvem9vbS90ZXh0L2Fic29sdXRlLXNpemVkLWRvY3VtZW50LXNjcm9sbGJhcnMt
ZXhwZWN0ZWQudHh0LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS90ZXh0L3JlbGF0
aXZlLXNpemVkLWRvY3VtZW50LXNjcm9sbGJhcnMtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL3pvb20vdGV4dC9yZWxhdGl2ZS1zaXplZC1kb2N1
bWVudC1zY3JvbGxiYXJzLWV4cGVjdGVkLnR4dC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3Zn
L3pvb20vdGV4dC96b29tLWNvb3Jkcy12aWV3YXR0ci0wMS1iLWV4cGVjdGVkLnR4dDogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3RleHQvem9vbS1mb3JlaWduT2JqZWN0
LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3Rl
eHQvem9vbS1oaXhpZS1taXhlZC0wMDgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9ndGsvc3ZnL3pvb20vdGV4dC96b29tLWhpeGllLXJlbmRlcmluZy1tb2RlbC0wMDQt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pvb20vdGV4
dC96b29tLXN2Zy1mbG9hdC1ib3JkZXItcGFkZGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAg
ICAgICAqIHBsYXRmb3JtL2d0ay90cmFuc2Zvcm1zLzJkL2hpbmRpLXJvdGF0ZWQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KLQotMjAxMC0wNi0xOCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBw
bGUuY29tPgotCi0gICAgICAgIE5vIHJldmlldy4gRml4IFRpZ2VyIGFuZCBMZW9wYXJkcyB0ZXN0
cy4KLQotICAgICAgICBBWDogcHJlc2VudGF0aW9uYWwgcm9sZSBuZWVkcyB0byBiZSBpbmhlcml0
ZWQgYnkgcmVxdWlyZWQgZWxlbWVudHMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwMTMyCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMtbGVvcGFyZC9T
a2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL21hYy10aWdlci9Ta2lwcGVkOgotCi0yMDEwLTA2
LTE3ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBi
eSBEYW4gQmVybnN0ZWluLgotCi0gICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MDkxMzg1PiBUZXN0
IHRoYXQgcmVtb3ZpbmcgYSBzdHlsZXNoZWV0IGxpbmsgZWxlbWVudCBpbiBhIGxpc3RlbmVyIHRv
IGl0cwotICAgICAgICBiZWZvcmVsb2FkIGV2ZW50IGRvZXMgbm90IGNyYXNoIFdlYkNvcmUuCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDc0MgotCi0g
ICAgICAgICogZmFzdC9kb20vYmVmb3JlbG9hZC9yZW1vdmUtbGluay1pbi1iZWZvcmVsb2FkLWxp
c3RlbmVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogZmFzdC9kb20vYmVmb3JlbG9h
ZC9yZW1vdmUtbGluay1pbi1iZWZvcmVsb2FkLWxpc3RlbmVyLmh0bWw6IEFkZGVkLgotCi0yMDEw
LTA2LTE4ICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
VW5yZXZpZXdlZC4gVXBkYXRlIFF0IHNwZWNpZmljIGV4cGVjdGVkIGZpbGVzIGFmdGVyIHI2MTQx
OC4KLQotICAgICAgICAqIHBsYXRmb3JtL3F0L2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0
LTAwNS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLXRleHQtMDA2LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9l
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDctZXhwZWN0ZWQudHh0OgotICAgICAgICAq
IHBsYXRmb3JtL3F0L2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LTAxNC1leHBlY3RlZC50
eHQ6Ci0KLTIwMTAtMDYtMTggIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4K
LQotICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBLaWx6ZXIuCi0KLSAgICAgICAgQVg6IHByZXNl
bnRhdGlvbmFsIHJvbGUgbmVlZHMgdG8gYmUgaW5oZXJpdGVkIGJ5IHJlcXVpcmVkIGVsZW1lbnRz
Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDEzMgot
Ci0gICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvaW5oZXJpdGVkLXByZXNlbnRh
dGlvbmFsLWxpc3RzLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFj
L2FjY2Vzc2liaWxpdHkvaW5oZXJpdGVkLXByZXNlbnRhdGlvbmFsLWxpc3RzLmh0bWw6IEFkZGVk
LgorICAgICAgICBFeHBvc2VkIHRoZSBpbWFnZSByZXNpemluZyBBUEkgdG8gSlNDLCBidXQgaXQg
aXMgZnVuY3Rpb25hbGx5IGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBmYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1z
b3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNhYmxlZDog
QWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFm
dGVyLXVubG9hZC5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBl
cy5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qczogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1v
ay13ZWJraXRHZXRJbWFnZS5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanM6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
dGVzdC1jYWxsYmFja3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJs
ZWQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFn
ZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZDog
QWRkZWQuCiAKIDIwMTAtMDYtMTggIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxl
LmNvbT4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZDdlYTg1
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVu
dC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MDYgQEAKK1Rlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1bWVudHMgdG8gdGhlIElt
YWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9N
SVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UodW5k
ZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKG51bGwpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL2pwZWciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB1bmRlZmluZWQpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHt9KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVf
TUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvYm1wIiwg
ZW1wdHlGdW5jdGlvbikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBOT1RfU1VQUE9SVEVEX0VSUjog
RE9NIEV4Y2VwdGlvbiA5LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVl
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCA0MikgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBF
X01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgInN0cmluZyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRD
SF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG51bGwpIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5RnVuY3Rpb24pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB0cnVlKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCA0MikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01B
VENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIC1JbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgInN0cmluZyIpIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdW5k
ZWZpbmVkKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBudWxsKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgb2JqZWN0
VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogd2lkdGggZ2V0dGVyIGV4
Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCBlbXB0eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB0cnVlKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0MikgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIC1J
bmZpbml0eSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgInN0cmluZyIpIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnVuZGVmaW5lZH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om51bGx9KSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6ZW1wdHlGdW5jdGlvbn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OnRydWV9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOm51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2JqZWN0VGhyb3dpbmdF
eGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9u
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHt3aWR0aDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6NDJ9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6SW5maW5pdHl9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3dpZHRoOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2hlaWdodDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Om51bGx9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Ont9fSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2hlaWdodDplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2hlaWdodDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDo0Mn0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9u
TGV2ZWw6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21w
cmVzc2lvbkxldmVsOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJl
c3Npb25MZXZlbDo0Mn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOkluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNz
aW9uTGV2ZWw6LUluZmluaXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXBy
ZXNzaW9uTGV2ZWw6InN0cmluZyJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJl
c2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86e319KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rpb259
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp0cnVl
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpJbmZp
bml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlv
Oi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0
aW9uOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlv
bjpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnt9fSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93aW5n
RXhjZXB0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVt
cHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246
dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjo0Mn0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjotSW5maW5pdHl9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246InN0cmluZyJ9KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5
cGVzLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzU5
NmI1NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMuaHRtbC1kaXNhYmxlZApAQCAtMCww
ICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxw
IGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2lt
YWdlLWhhcy1uby1zb3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjhmNjhmNWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1Rlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBz
b3VyY2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIEV4Y2VwdGlvbiB3YXMgY29ycmVjdGx5IHRo
cm93bjogRXJyb3I6IElOVkFMSURfU1RBVEVfRVJSOiBET00gRXhjZXB0aW9uIDExCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFn
ZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UuaHRtbC1kaXNh
YmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNjhmMWUzCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwxMyBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVz
Y3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNj
cmlwdC10ZXN0cy9pbWFnZS1oYXMtbm8tc291cmNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
bm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5kODFkMTNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRl
ci11bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK21haW4gZnJhbWUgLSBoYXMg
MSBvbnVubG9hZCBoYW5kbGVyKHMpCitFbnN1cmVzIHRoYXQgdGhlIGNhbGxiYWNrcyB3aWxsIG5v
dCBleGVjdXRlIGFmdGVyIG9udW5sb2FkLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyBObyBjYWxsYmFja3MgY2FsbGVkIGFmdGVyIHVubG9hZAorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2st
YWZ0ZXItdW5sb2FkLmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRp
c2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMxMGFhM2UKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJzY3JpcHQtdGVzdHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1h
Z2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWU4MmM2OAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
b3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAK
K1RoaXMgZW5zdXJlcyB0aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGgg
YW5vdGhlciBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIDQy
IGlzIG5vbi16ZXJvLgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxl
ZCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
b3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44OTZmOWM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13
ZWJraXRHZXRJbWFnZS5odG1sLWRpc2FibGVkCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBI
VE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0
eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvb3Zl
cnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBM
QVRFLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTNkZTNjNgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKQEAgLTAsMCArMSwxMyBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9IllPVVJf
SlNfRklMRV9IRVJFIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTUzNjc5MQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3VtZW50LXR5cGVzLmpzCkBAIC0wLDAgKzEsMTQ2IEBACitk
ZXNjcmlwdGlvbigiVGVzdHMgdGhlIGFjY2VwdGFibGUgdHlwZXMgZm9yIGFyZ3VtZW50cyB0byB0
aGUgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgbWV0aG9kLiIpOworCitmdW5jdGlvbiBzaG91bGROb3RU
aHJvdyhleHByZXNzaW9uKSB7CisgIHRyeSB7CisgICAgZXZhbChleHByZXNzaW9uKTsKKyAgICB0
ZXN0UGFzc2VkKGV4cHJlc3Npb24gKyAiIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLiIpOworICB9
IGNhdGNoKGUpIHsKKyAgICB0ZXN0RmFpbGVkKGV4cHJlc3Npb24gKyAiIHNob3VsZCBub3QgdGhy
b3cgZXhjZXB0aW9uLiBUaHJldyBleGNlcHRpb24gIiArIGUpOworICB9Cit9CisKK2Z1bmN0aW9u
IHRlc3QoZXhwcmVzc2lvbiwgZXhwcmVzc2lvblNob3VsZFRocm93LCBleHBlY3RlZEV4Y2VwdGlv
bikgeworICAgIGlmIChleHByZXNzaW9uU2hvdWxkVGhyb3cpIHsKKyAgICAgICAgaWYgKGV4cGVj
dGVkRXhjZXB0aW9uKQorICAgICAgICAgICAgc2hvdWxkVGhyb3coZXhwcmVzc2lvbiwgJyhmdW5j
dGlvbigpIHsgcmV0dXJuICInICsgZXhwZWN0ZWRFeGNlcHRpb24gKyAnIjsgfSkoKTsnKTsKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgc2hvdWxkVGhyb3coZXhwcmVzc2lvbiwgJyhmdW5jdGlv
bigpIHsgcmV0dXJuICJFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTci
OyB9KSgpOycpOworICAgIH0gZWxzZSB7CisgICAgICAgIHNob3VsZE5vdFRocm93KGV4cHJlc3Np
b24pOworICAgIH0KK30KKwordmFyIGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9OworCitm
dW5jdGlvbiBPYmplY3RUaHJvd2luZ0V4Y2VwdGlvbigpIHt9OworT2JqZWN0VGhyb3dpbmdFeGNl
cHRpb24ucHJvdG90eXBlLnZhbHVlT2YgPSBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRXJy
b3IoJ3ZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit9CitPYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bi5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygid2lkdGgiLCBmdW5jdGlvbigpIHsKKyAgICB0
aHJvdyBuZXcgRXJyb3IoJ3dpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK30pOwordmFyIG9iamVj
dFRocm93aW5nRXhjZXB0aW9uID0gbmV3IE9iamVjdFRocm93aW5nRXhjZXB0aW9uKCk7CisKK3Zh
ciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9yZWN0LmpwZyI7
CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoKScsIHRydWUpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKHVuZGVmaW5lZCknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UobnVsbCkn
LCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciKScsIHRydWUpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5kZWZpbmVkKScsIHRydWUpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgbnVsbCknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIHt9KScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKScsIGZhbHNl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pJywg
dHJ1ZSwgJ0Vycm9yOiBOT1RfU1VQUE9SVEVEX0VSUjogRE9NIEV4Y2VwdGlvbiA5Jyk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB0cnVlKScsIHRydWUpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIC1JbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKScsIHRydWUpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpJywgZmFsc2UpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgbnVsbCkn
LCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgZW1wdHlGdW5jdGlvbikn
LCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB0cnVlKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgNDIpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBJbmZpbml0eSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIC1JbmZpbml0eSknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJp
bmciKScsIHRydWUpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHVuZGVmaW5lZCknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG51bGwpJywg
ZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9u
KScsIHRydWUsICdFcnJvcjogd2lkdGggZ2V0dGVyIGV4Y2VwdGlvbicpOwordGVzdCgnaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBlbXB0eUZ1
bmN0aW9uKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgdHJ1ZSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIDQyKScsIGZhbHNl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwgSW5maW5pdHkpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCAtSW5maW5pdHkpJywgZmFsc2UpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCAic3RyaW5nIiknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dW5kZWZpbmVk
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Om51bGx9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2R1bW15UHJvcGVydHk6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6b2JqZWN0
VGhyb3dpbmdFeGNlcHRpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6ZW1wdHlG
dW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVlfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtkdW1teVByb3BlcnR5OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OkluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pJywg
ZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eToic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm51bGx9KScsIGZhbHNl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3dpZHRoOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbn0pJywgdHJ1ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6dHJ1ZX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmlu
aXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp1bmRlZmluZWR9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2hlaWdodDpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6e319
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgdHJ1
ZSwgJ0Vycm9yOiB2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OmVtcHR5
RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtoZWlnaHQ6NDJ9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDpJbmZpbml0eX0pJywgZmFsc2Up
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7aGVpZ2h0Oi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJp
bmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOm51bGx9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2Nv
bXByZXNzaW9uTGV2ZWw6e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2Jq
ZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNl
cHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6ZW1wdHlGdW5jdGlvbn0pJywgZmFsc2Up
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOkluZmluaXR5
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pJywgZmFsc2Up
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtw
cmVzZXJ2ZUFzcGVjdFJhdGlvOnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOm9iamVjdFRocm93aW5nRXhj
ZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOmVtcHR5RnVuY3Rp
b259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dHJ1ZX0pJywgZmFsc2Up
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2Vy
dmVBc3BlY3RSYXRpbzpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RS
YXRpbzotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86InN0
cmluZyJ9KScsIGZhbHNlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246dW5kZWZpbmVkfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtvcmllbnRhdGlvbjpudWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlv
bjp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOmVtcHR5RnVuY3Rpb259KScsIGZhbHNl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge29yaWVudGF0aW9uOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9u
OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpJbmZpbml0eX0pJywgZmFsc2UpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlv
bjoic3RyaW5nIn0pJywgZmFsc2UpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9p
bWFnZS1oYXMtbm8tc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYWQ5NTc3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9zY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcwpAQCAtMCwwICsxLDIwIEBACitk
ZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBhbiBpbWFnZSB3aXRoIG5vIHNvdXJjZSB3aWxsIHRocm93
IGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2Uo
KTsKK2kuc3JjID0gbnVsbDsKKwordmFyIGVtcHR5RnVuY3Rpb24gPSBmdW5jdGlvbigpIHt9Owor
Citkb2N1bWVudC5ib2R5Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgeworCXRyeSB7CisJCWkud2Via2l0
R2V0SW1hZ2UoImltYWdlL2pwZWciLCBlbXB0eUZ1bmN0aW9uKTsKKwkJdGVzdEZhaWxlZCgiU2hv
dWxkIGhhdmUgdGhyb3duIGV4Y2VwdGlvbi4gTm8gZXhjZXB0aW9uIHdhcyB0aHJvd24uLi4iKTsK
KwkJZmluaXNoSlNUZXN0KCk7CisJfSBjYXRjaChlKSB7CisJCXRlc3RQYXNzZWQoIkV4Y2VwdGlv
biB3YXMgY29ycmVjdGx5IHRocm93bjogIiArIGUpOworCQlmaW5pc2hKU1Rlc3QoKTsKKwl9Cit9
OworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFy
c2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9h
ZC5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi41YTg2ZGYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLmpzCkBAIC0wLDAgKzEsMjUgQEAKK2Rlc2NyaXB0
aW9uKCJFbnN1cmVzIHRoYXQgdGhlIGNhbGxiYWNrcyB3aWxsIG5vdCBleGVjdXRlIGFmdGVyIG9u
dW5sb2FkLiIpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2Vz
L2JsdWVfcmVjdC5qcGciOworCitkb2N1bWVudC5ib2R5Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgewor
ICAgIHdpbmRvdy5zZXRUaW1lb3V0KCd0ZXN0UGFzc2VkKCJObyBjYWxsYmFja3MgY2FsbGVkIGFm
dGVyIHVubG9hZCIpOyBmaW5pc2hKU1Rlc3QoKTsnLCAxMDApOworfQorCitkb2N1bWVudC5ib2R5
Lm9udW5sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgaS53ZWJraXRHZXRJbWFnZSgKKyAgICAgICAg
ImltYWdlL3BuZyIsCisgICAgICAgIGZ1bmN0aW9uKGJsb2IpIHsKKyAgICAgICAgICAgIHRlc3RG
YWlsZWQoIlVuZXhwZWN0ZWQgd2Via2l0R2V0SW1hZ2Ugc3VjY2VzcyBjYWxsYmFjay4iKTsKKyAg
ICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9LAorICAgICAgICBmdW5jdGlvbihl
cnJvcikgeworICAgICAgICAgICAgdGVzdEZhaWxlZCgiVW5leHBlY3RlZCB3ZWJraXRHZXRJbWFn
ZSBlcnJvciBjYWxsYmFjazogIiArIGVycm9yKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgp
OworICAgICAgICB9CisgICAgKTsKK30KKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9v
dmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtp
dEdldEltYWdlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1ZWZmOTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS5q
cwpAQCAtMCwwICsxLDEyIEBACitkZXNjcmlwdGlvbigiVGhpcyBlbnN1cmVzIHRoYXQgd2Via2l0
R2V0SW1hZ2UgbWF5IGJlIG92ZXJyaWRkZW4gd2l0aCBhbm90aGVyIG1ldGhvZC4iKTsKKwordmFy
IGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gIi4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsK
KworaS53ZWJraXRHZXRJbWFnZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gNDI7IH0KK3ZhciByZXN1
bHQgPSBpLndlYmtpdEdldEltYWdlKCk7CisKK3Nob3VsZEJlTm9uWmVybyhyZXN1bHQpOworCit3
aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNlOword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3Rz
L3Rlc3QtY2FsbGJhY2tzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2
NjRmM2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpAQCAt
MCwwICsxLDIwIEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LiIpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3Vy
Y2VzL2JsdWVfcmVjdC5qcGciOworCit2YXIgc3VjY2Vzc0NhbGxiYWNrID0gZnVuY3Rpb24oYmxv
YikgeworICAgIHRlc3RGYWlsZWQoIlN1Y2Nlc3MgY2FsbGJhY2sgd2FzIGluY29ycmVjdGx5IGNh
bGxlZCIpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKwordmFyIGVycm9yQ2FsbGJhY2sgPSBm
dW5jdGlvbihlcnJvcikgeworICAgIHRlc3RQYXNzZWQoIkVycm9yIGNhbGxiYWNrIHdhcyBjb3Jy
ZWN0bHkgY2FsbGVkIHdpdGggb3V0cHV0OiAiICsgZXJyb3IpOworICAgIGZpbmlzaEpTVGVzdCgp
OworfTsKKworLy8gT25seSB0aGUgZXJyb3IgY2FsbGJhY2sgd2lsbCBjdXJyZW50bHkgbmV2ZXIg
YmUgY2FsbGVkIGluIHRoaXMgcGF0Y2gsIHNvIHRlc3QgdGhhdCBpdCB3b3JrcyBmb3Igbm93Citp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxi
YWNrKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1j
YWxsYmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjhjMDE4MzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEwIEBACitUZXN0cyB0aGF0IHRoZSBjYWxsYmFja3Mgd29yayBjb3JyZWN0bHkuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIEVycm9yIGNhbGxiYWNrIHdhcyBj
b3JyZWN0bHkgY2FsbGVkIHdpdGggb3V0cHV0OiBVbmV4cGVjdGVkIGVycm9yIHdoaWxlIHJlc2l6
aW5nIGltYWdlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5o
dG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMyNjUwMmIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLmh0bWwtZGlzYWJsZWQKQEAgLTAsMCArMSwx
MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9
InNjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzQ4ZWY4OAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1Rlc3RzIHRo
YXQgSW1hZ2Uud2Via2l0R2V0SW1hZ2UgY2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpbWFnZSBvZiBy
ZW1vdGUgb3JpZ2luLgorCisKK1BBU1M6IFRocmV3IGV4Y2VwdGlvbjogRXJyb3I6IFNFQ1VSSVRZ
X0VSUjogRE9NIEV4Y2VwdGlvbiAxOAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi5odG1sLWRpc2FibGVk
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90
ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4yZTFjNTU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNj
L2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRtbC1kaXNhYmxlZApAQCAtMCww
ICsxLDMxIEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxvZyhtc2cpCit7
CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpLmFwcGVuZENoaWxkKGRvY3VtZW50
LmNyZWF0ZVRleHROb2RlKG1zZyArICJcbiIpKTsKK30KKwordmFyIGVtcHR5Q2FsbGJhY2sgPSBm
dW5jdGlvbigpIHsgfTsKKword2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKworICAgIHRyeSB7CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0SW1hZ2UiKS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlDYWxsYmFj
ayk7CisgICAgICAgIGxvZygiRkFJTDogRGlkIG5vdCB0aHJvdyBleGNlcHRpb24iKTsKKyAgICB9
IGNhdGNoIChlKSB7CisgICAgICAgIGxvZyAoIlBBU1M6IFRocmV3IGV4Y2VwdGlvbjogIiArIGUp
OworICAgIH0KKworICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKK30KKzwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5UZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldElt
YWdlIGNhbm5vdCBiZSBjYWxsZWQgb24gYW4gaW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi48L3A+Cis8
aW1nIGlkPSJ0ZXN0SW1hZ2UiIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwLy4uLy4uL2Zhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvcmVzb3VyY2VzL2JsdWVfcmVjdC5qcGciIC8+Cis8cHJlIGlk
PSJsb2ciPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dCBiL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNWY0ZmNiMi4uMThmZTEx
MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0yNjMsNiArMjYzLDggQEAgU0VUKFdlYkNvcmVfSURMX0ZJTEVTCiAgICAg
aHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGwK
ICAgICBodG1sL0ltYWdlRGF0YS5pZGwKKyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJh
Y2suaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCiAgICAgaHRt
bC9NZWRpYUVycm9yLmlkbAogICAgIGh0bWwvVGV4dE1ldHJpY3MuaWRsCiAgICAgaHRtbC9WYWxp
ZGl0eVN0YXRlLmlkbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxMWFmMTNkLi43Y2IwNjhmIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwxODI1ICsxLDY0IEBACi0yMDEwLTA2
LTIyICBEYXZpZCBMZXZpbiAgPGxldmluQGNocm9taXVtLm9yZz4KKzIwMTAtMDYtMjEgIFN0ZXJs
aW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgogCi0gICAgICAgIFJldmlld2VkIGJ5
IEFsZXhleSBQcm9za3VyeWFrb3YuCi0KLSAgICAgICAgUkVHUkVTU0lPTjogKHI0NzI5MSk6IFVw
bG9hZCBwcm9ncmVzcyBldmVudHMgYXJlIG5vdCBmaXJlZCBmb3Igc2ltcGxlIGNyb3NzLXNpdGUg
WEhSLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzkw
MjkKLQotICAgICAgICBTcGVjaWZpY2FsbHksIFdlYktpdCBzaG91bGQgZmlyZSB1cGxvYWQgZXZl
bnRzIGlmIG9uZSBvciBtb3JlIGV2ZW50IGxpc3RlbmVycyBhcmUKLSAgICAgICAgcmVnaXN0ZXJl
ZCBvbiB0aGUgWE1MSHR0cFJlcXVlc3RVcGxvYWQgb2JqZWN0IHdoZW4gc2VuZCBpcyBjYWxsZWQg
aW4gYW4gYXN5bmMgbWFubmVyLgotCi0gICAgICAgICogeG1sL1hNTEh0dHBSZXF1ZXN0LmNwcDoK
LSAgICAgICAgKFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0OjpjcmVhdGVSZXF1ZXN0KTogQWxsb3cg
dXBsb2FkIGV2ZW50cyB0byBiZSBmaXJlZCB3aGVuIHRoZXJlIGFyZQotICAgICAgICBoYW5kbGVy
cyBmb3IgdGhlbSBpbiB0aGUgY3Jvc3Mtb3JpZ2luIHNpbXBsZSByZXF1ZXN0IGNhc2UuCi0KLTIw
MTAtMDYtMjIgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgRml4IHVuaW5pdGlhbGl6ZWQgU3ViZnJh
bWVMb2FkZXI6Om1fY29udGFpbnNQbHVnaW5zCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MTAzNQotCi0gICAgICAgICogbG9hZGVyL1N1YmZyYW1lTG9h
ZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpTdWJmcmFtZUxvYWRl
cik6Ci0gICAgICAgICBJbml0aWFsaXplIG1fY29udGFpbnNQbHVnaW5zIHdpdGggZmFsc2UuCi0K
LTIwMTAtMDYtMjIgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgotCi0gICAg
ICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgQWRkIEJsb2JCdWlsZGVyLmlk
bCB0byBleHBvc2UgQmxvYkJ1aWxkZXIgaW50ZXJmYWNlCi0gICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDU5MwotCi0gICAgICAgIChSZXN1Ym1pdHRpbmcg
d2l0aCB0aGUgY29ycmVjdCBmaWxlIHNldC4pCi0KLSAgICAgICAgQmxvYkJ1aWxkZXIgaXMgZGVm
aW5lZCBpbiBGaWxlQVBJJ3MgRmlsZVdyaXRlciBzcGVjLgotICAgICAgICAoaHR0cDovL2Rldi53
My5vcmcvMjAwOS9kYXAvZmlsZS1zeXN0ZW0vZmlsZS13cml0ZXIuaHRtbCkKLQotICAgICAgICBB
bHNvIHJlbW92ZXMgdGhlIEVOQUJMRV9GSUxFX1dSSVRFUiBpZmRlZiBndWFyZCBmb3IgQmxvYkJ1
aWxkZXIuCi0KLSAgICAgICAgVGVzdHM6IGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWRhdGEt
YmxvYi5odG1sCi0gICAgICAgICAgICAgICBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1oeWJy
aWQtYmxvYi5odG1sCi0gICAgICAgICAgICAgICBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1z
bGljZWQtZGF0YS1ibG9iLmh0bWwKLQotICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC5qc2NiaW5k
aW5ncy5tazoKLSAgICAgICAgKiBBbmRyb2lkLmRlcml2ZWQudjhiaW5kaW5ncy5tazoKLSAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5jcHA6Ci0gICAg
ICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKLSAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKLSAg
ICAgICAgKiBXZWJDb3JlLmd5cGk6Ci0gICAgICAgICogV2ViQ29yZS5wcmk6Ci0gICAgICAgICog
V2ViQ29yZS5wcm86Ci0gICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6Ci0g
ICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgotICAgICAgICAqIGh0
bWwvQmxvYkJ1aWxkZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6QmxvYkJ1aWxkZXI6OmFwcGVu
ZCk6Ci0gICAgICAgICogaHRtbC9CbG9iQnVpbGRlci5oOgotICAgICAgICAqIGh0bWwvQmxvYkJ1
aWxkZXIuaWRsOiBBZGRlZC4KLSAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6Ci0KLTIwMTAt
MDYtMjIgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2
aWV3ZWQsIGJ1aWxkIGZpeCBmb3IgcjYxNjQ4LgotCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvR3JhcGhpY3NDb250ZXh0M0QuaDoKLQotMjAxMC0wNi0yMiAgVmFuZ2VsaXMgS29ra2V2aXMg
IDx2YW5nZWxpc0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgS2VudCBUYW11
cmEuCi0KLSAgICAgICAgRGVmaW5lIEdyYXBoaWNzQ29udGV4dDNEOjpwbGF0Zm9ybUxheWVyKCkg
Zm9yIGFsbCByZW1haW5pbmcgKG5vbiBQTEFURk9STShNQUMpKQotICAgICAgICBwb3J0cyB0byBn
ZXQgUmVuZGVyTGF5ZXJCYWNraW5nLmNwcCBjb21waWxpbmcgYWdhaW4uCi0gICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTAyNgotCi0gICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaDoKLSAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dDNEOjpwbGF0Zm9ybUxheWVyKToKLQotMjAxMC0wNi0yMiAgRXJpYyBTZWlk
ZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZC4gIFJvbGxpbmcgb3V0
IGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzYxNjM4Ci0gICAgICAgIG1hZGUgYSBm
ZXcgdGVzdHMgY3Jhc2guCi0KLSAgICAgICAgTWFrZSBQZW5kaW5nU2NyaXB0IGhvbGQgYSBDYWNo
ZWRSZXNvdXJjZUNsaWVudCBvcGVuIGZvciBpdHMgbGlmZXRpbWUKLSAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTY4Ci0KLSAgICAgICAgKiBodG1sL0hU
TUw1RG9jdW1lbnRQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBh
cnNlcjo6d2F0Y2hGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJz
ZXI6Om5vdGlmeUZpbmlzaGVkKToKLSAgICAgICAgKiBodG1sL0hUTUw1U2NyaXB0UnVubmVyLmNw
cDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjp+SFRNTDVTY3JpcHRSdW5u
ZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnNvdXJjZUZyb21QZW5k
aW5nU2NyaXB0KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjppc1BlbmRp
bmdTY3JpcHRSZWFkeSk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6ZXhl
Y3V0ZVBlbmRpbmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6
Omhhc1NjcmlwdHNXYWl0aW5nRm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlw
dFJ1bm5lcjo6d2F0Y2hGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVu
bmVyOjpzdG9wV2F0Y2hpbmdGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0
UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUw1U2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JTdHlsZXNoZWV0cyk6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6cmVxdWVzdFNjcmlwdCk6Ci0g
ICAgICAgICogaHRtbC9IVE1MNVNjcmlwdFJ1bm5lci5oOgotICAgICAgICAoV2ViQ29yZTo6SFRN
TDVTY3JpcHRSdW5uZXI6OlBlbmRpbmdTY3JpcHQ6Oik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1M
NVNjcmlwdFJ1bm5lcjo6UGVuZGluZ1NjcmlwdDo6UGVuZGluZ1NjcmlwdCk6Ci0gICAgICAgIChX
ZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6UGVuZGluZ1NjcmlwdDo6d2F0Y2hpbmdGb3JMb2Fk
KToKLSAgICAgICAgKiBodG1sL0hUTUw1U2NyaXB0UnVubmVySG9zdC5oOgotCi0yMDEwLTA2LTIy
ICBBZGVsZSBQZXRlcnNvbiAgPGFkZWxlQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KLQotICAgICAgICBGaXggZm9yIENyYXNoIHdoZW4gdGhlIHJlbmRlcmVy
IGZvciB0aGUgYnV0dG9uIGluIDxpbnB1dCB0eXBlPSJudW1iZXIiPiBnb2VzIGF3YXkgZHVyaW5n
IGV2ZW50IGhhbmRsaW5nCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD00MTAxMwotCi0gICAgICAgIFRlc3Q6IGZhc3QvZm9ybXMvaW5wdXQtbnVtYmVyLWNy
YXNoLmh0bWwKLQotICAgICAgICAqIHJlbmRlcmluZy9UZXh0Q29udHJvbElubmVyRWxlbWVudHMu
Y3BwOiAoV2ViQ29yZTo6U3BpbkJ1dHRvbkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgot
ICAgICAgICBOaWwgY2hlY2sgdGhlIFJlbmRlckJveCBzaW5jZSBpdHMgcG9zc2libGUgdGhlIHJl
bmRlcmVyIGhhcyBnb25lIGF3YXkgZHVyaW5nIGV2ZW50IGhhbmRsaW5nLgotCi0yMDEwLTA2LTIy
ICBUb255IEdlbnRpbGNvcmUgIDx0b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgUHVsbCBzY3JpcHQgbGluZSBudW1iZXIgZnJv
bSBEb2N1bWVudFBhcnNlciBpbnN0ZWFkIG9mIHB1c2hpbmcgaXQgdG8gU2NyaXB0Q29udHJvbGxl
cgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA2NDkK
LQotICAgICAgICBUaGlzIGFwcHJvYWNoIGlzIGNsZWFuZXIgYW5kIGltcHJvdmVzIFdlYkNvcmUv
YmVuY2htYXJrcy9wYXJzZXIvaHRtbC1wYXJzZXIuaHRtbCBieSB+MiUuCi0KLSAgICAgICAgVGVz
dHM6IGZhc3QvanMvc2NyaXB0LWxpbmUtbnVtYmVyLmh0bWwKLQotICAgICAgICAqIGJpbmRpbmdz
L2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJv
bGxlcjo6U2NyaXB0Q29udHJvbGxlcik6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHRDb250cm9s
bGVyOjpldmVudEhhbmRsZXJMaW5lTnVtYmVyKToKLSAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3Jp
cHRDb250cm9sbGVyLmg6Ci0gICAgICAgICogYmluZGluZ3MvdjgvU2NyaXB0Q29udHJvbGxlci5j
cHA6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHRDb250cm9sbGVyOjpldmVudEhhbmRsZXJMaW5l
TnVtYmVyKToKLSAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OmV2ZW50SGFuZGxl
ckNvbHVtbk51bWJlcik6Ci0gICAgICAgICogYmluZGluZ3MvdjgvU2NyaXB0Q29udHJvbGxlci5o
OgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjcmlwdEV2ZW50TGlzdGVuZXIuY3BwOgotICAgICAg
ICAoV2ViQ29yZTo6Y3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5lcik6Ci0gICAgICAgICogYmlu
ZGluZ3MvdjgvVjhQcm94eS5oOgotICAgICAgICAqIGRvbS9YTUxEb2N1bWVudFBhcnNlckxpYnht
bDIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6WE1MRG9jdW1lbnRQYXJzZXI6OnN0YXJ0RWxlbWVu
dE5zKToKLSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIuY3BwOgotICAgICAgICAo
V2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6cHVtcExleGVyKToKLSAgICAgICAgKiBodG1s
L0hUTUxEb2N1bWVudFBhcnNlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQ
YXJzZXI6OnByb2Nlc3NUb2tlbik6Ci0KLTIwMTAtMDYtMjIgIFRvbnkgR2VudGlsY29yZSAgPHRv
bnlnQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQot
ICAgICAgICBNYWtlIFBlbmRpbmdTY3JpcHQgaG9sZCBhIENhY2hlZFJlc291cmNlQ2xpZW50IG9w
ZW4gZm9yIGl0cyBsaWZldGltZQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDA5NjgKLQotICAgICAgICBUaGlzIHJlcGxhY2VzIHRoZSBtZWNoYW5pc20g
aW50cm9kdWNlZCBpbiByNjEzNzQgd2l0aCBhIHNpbXBsZXIKLSAgICAgICAgYXBwcm9hY2ggZnJv
bSBwcmV2ZW50aW5nIHVuZXhwZWN0ZWQgcHVyZ2VzOyBhbHdheXMga2VlcCBhIGNsaWVudCBvcGVu
LgotICAgICAgICBUaGlzIHdpbGwgYXBwcm9hY2ggd2lsbCBhbGxvdyBkZWZlcnJlZCBzY3JpcHRz
IHRvIGFkZCBhIGNsaWVudCBhZnRlcgotICAgICAgICB0aGUgcmVzb3VyY2UgbWF5IGhhdmUgYWxy
ZWFkeSBiZWVuIGxvYWRlZCB3aXRob3V0IGhhdmluZyB0byB3b3JyeSBhYm91dAotICAgICAgICB0
aGUgYnVmZmVyIGJlaW5nIHB1cmdlZCBpbiB0aGUgbWVhbnRpbWUuCi0KLSAgICAgICAgTm8gbmV3
IHRlc3RzIGJlY2F1c2UgbWFraW5nIGEgQ2FjaGVkUmVzb3VyY2UgcHVyZ2UgaXRzZWxmIGlzIG5v
dAotICAgICAgICB0ZXN0YWJsZSBmcm9tIGEgTGF5b3V0VGVzdC4KLQotICAgICAgICAqIGh0bWwv
SFRNTDVEb2N1bWVudFBhcnNlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50
UGFyc2VyOjp3YXRjaEZvckxvYWQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBh
cnNlcjo6bm90aWZ5RmluaXNoZWQpOgotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5uZXIu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6On5IVE1MNVNjcmlwdFJ1
bm5lcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6c291cmNlRnJvbVBl
bmRpbmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OmlzUGVu
ZGluZ1NjcmlwdFJlYWR5KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpl
eGVjdXRlUGVuZGluZ1NjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5l
cjo6d2F0Y2hGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpz
dG9wV2F0Y2hpbmdGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVy
OjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1
U2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JTdHlsZXNoZWV0cyk6Ci0gICAg
ICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6cmVxdWVzdFNjcmlwdCk6Ci0gICAgICAg
ICogaHRtbC9IVE1MNVNjcmlwdFJ1bm5lci5oOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3Jp
cHRSdW5uZXI6OlBlbmRpbmdTY3JpcHQ6OlBlbmRpbmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTDVTY3JpcHRSdW5uZXI6OlBlbmRpbmdTY3JpcHQ6On5QZW5kaW5nU2NyaXB0KToKLSAg
ICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpQZW5kaW5nU2NyaXB0OjpzZXRDYWNo
ZWRTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OlBlbmRpbmdT
Y3JpcHQ6OmNhY2hlZFNjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5l
cjo6UGVuZGluZ1NjcmlwdDo6bm90aWZ5RmluaXNoZWQpOgotICAgICAgICAqIGh0bWwvSFRNTDVT
Y3JpcHRSdW5uZXJIb3N0Lmg6Ci0KLTIwMTAtMDYtMjIgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJr
aXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgRnJh
Z21lbnQgcGFyc2luZyBuZWVkcyB0byBnbyB0aHJvdWdoIHRoZSBIVE1MNSBQYXJzZXIgY29kZSBw
YXRoCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDY0
NQotCi0gICAgICAgIEFkZGVkIGEgbmV3IEhUTUw1RG9jdW1lbnRQYXJzZXI6OnBhcnNlSFRNTERv
Y3VtZW50RnJhZ21lbnQKLSAgICAgICAgY29kZXBhdGggd2hpY2ggb3B0aW9uYWxseSBjYWxscyB0
aHJvdWdoIHRvIHRoZSBvbGQgZnJhZ21lbnQKLSAgICAgICAgcGFyc2luZyBwYXRoLCBub3cgcmVu
YW1lZCBwYXJzZUxlZ2FjeUhUTUxEb2N1bWVudEZyYWdtZW50LgotCi0gICAgICAgICogZG9tL0Vs
ZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Y3JlYXRlQ29udGV4dHVhbEZy
YWdtZW50KToKLSAgICAgICAgIC0gVXNlIGRvY3VtZW50KCktPmNyZWF0ZURvY3VtZW50RnJhZ21l
bnQoKSBpbnN0ZWFkCi0gICAgICAgICAgIG9mIERvY3VtZW50RnJhZ21lbnQ6OmNyZWF0ZSgpIHRv
IG1hdGNoIG90aGVyIGNhbGxlcnMKLSAgICAgICAgICAgKGFuZCBub3QgZGVwZW5kIG9uIERvY3Vt
ZW50RnJhZ21lbnQuaCkuCi0gICAgICAgICAtIFVwZGF0ZSBjYWxsIHRvIHBhcnNlSFRNTERvY3Vt
ZW50RnJhZ21lbnQgdG8gdXNlIHRoZSBuZXcKLSAgICAgICAgICAgSFRNTDUgcGFyc2VyIGNvZGVw
YXRoLgotICAgICAgICAqIGRvbS9NYXBwZWRBdHRyaWJ1dGVFbnRyeS5oOgotICAgICAgICAgLSBB
ZGQgYSBGSVhNRSBhYm91dCB0aGlzIGhvcnJpYmxlIGVudW0gcGxhY2VtZW50LgotICAgICAgICAg
ICBTYWRseSB0aGlzIHdpbGwgY2F1c2UgYSB3b3JsZC1yZWJ1aWxkIGZvciBldmVyeW9uZS4KLSAg
ICAgICAgKiBodG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6
SFRNTDVEb2N1bWVudFBhcnNlcjo6SFRNTDVEb2N1bWVudFBhcnNlcik6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpydW5TY3JpcHRzRm9yUGF1c2VkVHJlZUNvbnN0cnVj
dG9yKToKLSAgICAgICAgIC0gVGhlIG1haW4gcHVtcExleGVyIGZ1bmN0aW9uIGhhcyBnb3R0ZW4g
dG8gbGFyZ2UuICBNb3ZlIHRoZSBzY3JpcHQKLSAgICAgICAgICAgcnVubmluZyBsb2dpYyBpbnRv
IHRoaXMgbmV3IGZ1bmN0aW9uLgotICAgICAgICAgLSBIYW5kbGUgdGhlIGNhc2Ugd2hlcmUgd2Ug
aGF2ZSBubyBtX3NjcmlwdFJ1bm5lciAoZnJhZ21lbnQgY2FzZSkuCi0gICAgICAgIChXZWJDb3Jl
OjpIVE1MNURvY3VtZW50UGFyc2VyOjpwdW1wTGV4ZXIpOgotICAgICAgICAgLSBVc2UgbmV3IHJ1
blNjcmlwdHNGb3JQYXVzZWRUcmVlQ29uc3RydWN0b3IoKS4KLSAgICAgICAgKFdlYkNvcmU6OkhU
TUw1RG9jdW1lbnRQYXJzZXI6OmV4ZWN1dGluZ1NjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpI
VE1MNURvY3VtZW50UGFyc2VyOjppblNjcmlwdEV4ZWN1dGlvbik6Ci0gICAgICAgICAtIE5ldyBm
dW5jdGlvbiB0byBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgbV9zY3JpcHRSdW5uZXIgaXMgbnVsbC4K
LSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OnJlc3VtZVBhcnNpbmdBZnRl
clNjcmlwdEV4ZWN1dGlvbik6Ci0gICAgICAgICAtIFVzZSBpblNjcmlwdEV4ZWN1dGlvbigpIGlu
c3RlYWQgb2YgbV9zY3JpcHRSdW5uZXItPmluU2NyaXB0RXhlY3V0aW9uKCkuCi0gICAgICAgIChX
ZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpleGVjdXRlU2NyaXB0KTogZGl0dG8uCi0gICAg
ICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpub3RpZnlGaW5pc2hlZCk6IGRpdHRv
LgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6ZXhlY3V0ZVNjcmlwdHNX
YWl0aW5nRm9yU3R5bGVzaGVldHMpOiBkaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OnNob3VsZFVz
ZUxlZ2FjeVBhcnNlcik6Ci0gICAgICAgICAtIEhlbHBlciBmdW5jdGlvbiB0byBjaGVjayB0aGUg
aHRtbDVQYXJzZXJFbmFibGVkKCkgc2V0dGluZy4KLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9j
dW1lbnRQYXJzZXI6OnBhcnNlSFRNTERvY3VtZW50RnJhZ21lbnQpOgotICAgICAgICAgLSBSdW4g
SFRNTDVEb2N1bWVudFBhcnNlciBpbiBmcmFnbWVudCBtb2RlLCBvciBvcHRpb25hbGx5IHJ1bgot
ICAgICAgICAgICB0aGUgbGVnYWN5IHBhcnNlciBpZiAhaHRtbDVQYXJzZXJFbmFibGVkKCkuCi0g
ICAgICAgICogaHRtbC9IVE1MNURvY3VtZW50UGFyc2VyLmg6Ci0gICAgICAgICogaHRtbC9IVE1M
NVRyZWVCdWlsZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1VHJlZUJ1aWxkZXI6OkhU
TUw1VHJlZUJ1aWxkZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVUcmVlQnVpbGRlcjo6cGFz
c1Rva2VuVG9MZWdhY3lQYXJzZXIpOgotICAgICAgICAgLSBJbXBsZW1lbnQgdGhlIEZyYWdtZW50
U2NyaXB0aW5nTm90QWxsb3dlZCBoYWNrIGZvciBwbGF0Zm9ybS9QYXN0ZWJvYXJkLgotICAgICAg
ICAqIGh0bWwvSFRNTDVUcmVlQnVpbGRlci5oOgotICAgICAgICAqIGh0bWwvSFRNTERvY3VtZW50
UGFyc2VyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OnBhcnNlTGVnYWN5SFRNTERvY3VtZW50RnJh
Z21lbnQpOgotICAgICAgICAgLSBSZW5hbWVkIGZyb20gcGFyc2VIVE1MRG9jdW1lbnRGcmFnbWVu
dAotICAgICAgICAqIGh0bWwvSFRNTERvY3VtZW50UGFyc2VyLmg6Ci0gICAgICAgICogaHRtbC9I
VE1MRWxlbWVudC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6aW5zZXJ0QWRq
YWNlbnRIVE1MKToKLSAgICAgICAgIC0gQ2FsbCBIVE1MNURvY3VtZW50UGFyc2VyOjpwYXJzZUhU
TUxEb2N1bWVudEZyYWdtZW50LgotICAgICAgICAqIHBsYXRmb3JtL21hYy9QYXN0ZWJvYXJkTWFj
Lm1tOgotICAgICAgICAoV2ViQ29yZTo6UGFzdGVib2FyZDo6ZG9jdW1lbnRGcmFnbWVudCk6IGRp
dHRvLgotICAgICAgICAqIHhtbC9YU0xUUHJvY2Vzc29yLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6
OmNyZWF0ZUZyYWdtZW50RnJvbVNvdXJjZSk6IGRpdHRvLgotCi0yMDEwLTA2LTIyICBDaHJpcyBN
YXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBG
cmFzZXIuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTQwNjQzCi0gICAgICAgIAotICAgICAgICBGaW5hbCBwaGFzZSBvZiBtb3Zpbmcgb3duZXJzaGlw
IG9mIFdlYkdMTGF5ZXIgdG8gR3JhcGhpY3NDb250ZXh0M0QuCi0gICAgICAgIEFzIGl0IHR1cm5z
IG91dCwgSSBzdGlsbCBoYXZlIHRvIGhhdmUgYSBzZXBhcmF0ZSBDR0xDb250ZXh0T2JqIGZvcgot
ICAgICAgICByZW5kZXJpbmcgYmVjYXVzZSBDb3JlIEFuaW1hdGlvbiBjb21wb3NpdGVzIGluIGEg
c2VwYXJhdGUgdGhyZWFkLAotICAgICAgICBzbyB3ZSBuZWVkIHRvIGRpc2Nvbm5lY3QgV2ViR0wg
cmVuZGVyaW5nIGZyb20gQ0EgY29tcG9zaXRpbmcuIEJ1dAotICAgICAgICB0aGlzIGNoYW5nZSBp
cyBzdGlsbCB3b3J0aHdoaWxlIGJlY2F1c2UgaXQgcmVkdWNlcyBkZXBlbmRlbmNpZXMKLSAgICAg
ICAgYW5kIG1ha2VzIGl0IGVhc2llciB0byBwb3J0IFdlYkdMIHRvIG90aGVyIHBsYXRmb3Jtcy4K
LSAgICAgICAgCi0gICAgICAgIE5vIG5ldyB0ZXN0cyBzaW5jZSB0aGlzIGlzIGp1c3QgcmVzdHJ1
Y3R1cmluZyBhbmQgdGhlIGN1cnJlbnQgdGVzdHMKLSAgICAgICAgYXJlIGFsbCBzdGlsbCB2YWxp
ZCBhbmQgZG8gYSBzdWZmaWNpZW50IHRlc3Qgb2YgV2ViR0wgZnVuY3Rpb25hbGl0eS4KLQotICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6Ci0gICAgICAgIChX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6cGxhdGZvcm1MYXllcik6Ci0gICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllci5oOgotICAgICAgICAoV2ViQ29yZTo6R3JhcGhp
Y3NMYXllcjo6c2V0Q29udGVudHNUb1dlYkdMKToKLSAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXI6OnNldFdlYkdMTmVlZHNEaXNwbGF5KToKLSAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvR3JhcGhpY3NDb250ZXh0M0RNYWMubW06IEFkZCBjcmVhdGlvbiBvZiBXZWJHTExheWVy
Ci0gICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0Qp
OgotICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9HcmFwaGljc0xheWVyQ0EuaDoKLSAg
ICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJDQTo6KToKLSAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9tYWMvR3JhcGhpY3NMYXllckNBLm1tOiBIYW5kbGUgc2V0dGluZyBvZiBXZWJHTExh
eWVyIGFzIGNvbnRlbnQgdGhlIHNhbWUgYXMgZm9yIE1lZGlhTGF5ZXIuIEFsc28gY2hhbmdlZCBX
ZWJHTCByZWxhdGVkIG5hbWVzIGZvciBjbGFyaXR5Ci0gICAgICAgIChXZWJDb3JlOjpHcmFwaGlj
c0xheWVyQ0E6OkdyYXBoaWNzTGF5ZXJDQSk6Ci0gICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xh
eWVyQ0E6OmNvbW1pdExheWVyQ2hhbmdlc0JlZm9yZVN1YmxheWVycyk6Ci0gICAgICAgIChXZWJD
b3JlOjpHcmFwaGljc0xheWVyQ0E6OnVwZGF0ZUNvbnRlbnRzV2ViR0xMYXllcik6Ci0gICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ0E6OnNldENvbnRlbnRzVG9XZWJHTCk6Ci0gICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ0E6OnNldFdlYkdMTmVlZHNEaXNwbGF5KToKLSAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvV2ViR0xMYXllci5oOgotICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL21hYy9XZWJHTExheWVyLm1tOiBHb3QgcmlkIG9mIHN0b3JhZ2UgZm9yIGNv
bnRleHQgYW5kIHRleHR1cmUsIG5vdyBqdXN0IHN0b3JlIEdyYXBoaWNzQ29udGV4dDNEIGFuZCBn
ZXQgdGhlbSBmcm9tIHRoZXJlIHdoZW4gbmVlZGVkCi0gICAgICAgICgtW1dlYkdMTGF5ZXIgY29w
eUNHTFBpeGVsRm9ybWF0Rm9yRGlzcGxheU1hc2s6XSk6Ci0gICAgICAgICgtW1dlYkdMTGF5ZXIg
Y29weUNHTENvbnRleHRGb3JQaXhlbEZvcm1hdDpdKToKLSAgICAgICAgKC1bV2ViR0xMYXllciBk
cmF3SW5DR0xDb250ZXh0OnBpeGVsRm9ybWF0OmZvckxheWVyVGltZTpkaXNwbGF5VGltZTpdKToK
LSAgICAgICAgKC1bV2ViR0xMYXllciBjb3B5SW1hZ2VTbmFwc2hvdFdpdGhDb2xvclNwYWNlOl0p
OgotICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwOiBDaGFuZ2VkIGlu
aXQgb2YgV2ViR0wgY29udGVudHNMYXllciB0byBwYXNzIFdlYkdMTGF5ZXIgcmF0aGVyIHRoYW4g
R3JhcGhpY3NDb250ZXh0M0QKLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2luZzo6
dXBkYXRlR3JhcGhpY3NMYXllckNvbmZpZ3VyYXRpb24pOgotICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXJCYWNraW5nOjpyZW5kZXJlckNvbnRlbnRDaGFuZ2VkKToKLQotMjAxMC0wNi0yMiAg
RGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGF2
ZSBIeWF0dC4KLQotICAgICAgICAqIGh0bWwvSFRNTFRhYmxlQ2VsbEVsZW1lbnQuY3BwOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTFRhYmxlQ2VsbEVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRl
KTogUmVtb3ZlZCBpbmNvcnJlY3QgRklYTUUgY29tbWVudHMuCi0KLTIwMTAtMDYtMjIgIERhbiBC
ZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMg
Q2FybHNzb24uCi0KLSAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgxMTk0MDM+IFJFR1JFU1NJT04g
KHI2MTU0OCk6IFBMVCBpcyBhbG1vc3QgMS41JSBzbG93ZXIsIEdvb2dsZSBwYWdlIGN5Y2xlciBz
bG93ZXIKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQx
MDEyCi0KLSAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcDoKLSAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpjb21wdXRlSG9yaXpvbnRhbFBvc2l0aW9uc0Zv
ckxpbmUpOiBSZW1vdmVkIGEgcmVkdW5kYW50IHN0YXRlbWVudCB0aGF0IHdhcwotICAgICAgICBs
ZWZ0IG92ZXIgaW4gdGhlIG9yaWdpbmFsIHBhdGNoIGFuZCByZXN1bHRlZCBpbiBkb3VibGUgdGhl
IGNhbGxzIHRvIFJlbmRlclRleHQ6OndpZHRoKCkgaGVyZS4KLSAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckJsb2NrOjpmaW5kTmV4dExpbmVCcmVhayk6IENoYW5nZWQgdGhlIG9yZGVyIG9mIGV2YWx1
YXRpbmcgY29uZGl0aW9ucyBmb3IgYQotICAgICAgICBwb3RlbnRpYWwgc3BlZWR1cC4KLQotMjAx
MC0wNi0yMiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KLQotICAgICAgICBBbGV4ZXkgYXNrZWQgbWUgdG8g
dGFrZSBvdXQgdGhlIGF1dG9yZWxlYXNlIHBvb2xzIGJlY2F1c2UgaGUgYmVsaWV2ZXMKLSAgICAg
ICAgdGhhdCB0aGVyZSBpcyBubyBjb2RlIHRoYXQgc2hvdWxkIGJlIHJ1bm5pbmcgdXNpbmcgT2Jq
ZWN0aXZlLUMKLSAgICAgICAgYXV0b3JlbGVhc2UuIE1vc3QgbGlrZWx5LCB0aGUgY29kZSB0aGF0
IGlzIHRyaWdnZXJpbmcgdGhlc2Ugc3RkZXJyCi0gICAgICAgIG1lc3NhZ2VzIGlzIGluY29ycmVj
dCwgYW5kIHRoYXQgYnVnIHNob3VsZCBiZSBmaXhlZCBpbnN0ZWFkLgotCi0gICAgICAgICogd29y
a2Vycy9Xb3JrZXJSdW5Mb29wLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6
OnJ1bik6IFJvbGwgb3V0IHVzZSBvZiBBdXRvZHJhaW5lZFBvb2wuCi0KLTIwMTAtMDYtMjIgIERh
cmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEJyYWR5
IEVpZHNvbi4KLQotICAgICAgICBGaXggYXV0b3JlbGVhc2UgcHJvYmxlbSBzZWVuIHdoZW4gcnVu
bmluZyB3b3JrZXIgcmVncmVzc2lvbiB0ZXN0cy4KLSAgICAgICAgV2Ugd2VyZSBzZWVpbmcgbG9n
cyB0byBzdGRlcnIgc2F5aW5nIGF1dG9yZWxlYXNlIHdhcyB1c2VkIHdpdGhvdXQKLSAgICAgICAg
YW4gYXV0b3JlbGVhc2UgcG9vbCBiZWluZyBzZXQgdXAuCi0KLSAgICAgICAgKiB3b3JrZXJzL1dv
cmtlclJ1bkxvb3AuY3BwOgotICAgICAgICAoV2ViQ29yZTo6V29ya2VyUnVuTG9vcDo6cnVuKTog
VXNlIGFuIEF1dG9kcmFpbmVkUG9vbCBhcyB0aGUgZmlsZQotICAgICAgICB0aHJlYWQsIGljb24g
ZGF0YWJhc2UsIGFuZCBkYXRhYmFzZSB0aHJlYWQgZG8uIE5vIGVmZmVjdCBvbiBwbGF0Zm9ybXMK
LSAgICAgICAgb3RoZXIgdGhhbiBNYWMuCi0KLTIwMTAtMDYtMjIgIENocmlzIEZsZWl6YWNoICA8
Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4K
LQotICAgICAgICBBWDogSWYgYW4gZWxlbWVudCB0aGF0IGlzIGEgY29udGludWF0aW9uIGlzIHJl
bW92ZWQsIGl0cyBwYXJlbnQgdHJlZSBpcyBub3Qgbm90aWZpZWQgYXBwcm9wcmlhdGVseSB0aGF0
IHRoZWlyIGNoaWxkcmVuIGhhdmUgY2hhbmdlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwMDAKLQotICAgICAgICBUZXN0OiBhY2Nlc3NpYmlsaXR5
L3JlbW92ZWQtY29udGludWF0aW9uLWVsZW1lbnQtY2F1c2VzLWNyYXNoLmh0bWwKLQotICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oOgotICAgICAgICAoV2ViQ29y
ZTo6QWNjZXNzaWJpbGl0eU9iamVjdDo6dXBkYXRlQ2hpbGRyZW5JZk5lY2Vzc2FyeSk6Ci0gICAg
ICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcDoKLSAgICAg
ICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmNoaWxkcmVuQ2hhbmdlZCk6
Ci0gICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphZGRDaGlsZHJl
bik6Ci0gICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Lmg6
Ci0KLTIwMTAtMDYtMjIgIFBldGVyIEthc3RpbmcgIDxwa2FzdGluZ0Bnb29nbGUuY29tPgotCi0g
ICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgT3ZlcnJpZGUgc2V0RmFp
bGVkKCkgaW4gZWFjaCBpbWFnZSBkZWNvZGVyIHRvIGNsZWFuIHVwIGFueSB0ZW1wb3JhcnkKLSAg
ICAgICAgb2JqZWN0cy4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTM1NDExCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgogICAgICAg
ICAKLSAgICAgICAgSW4gYSBmZXcgY2FzZXMsIHdlIG5lZWQgdG8gYmUgY2FyZWZ1bCB0byBhdm9p
ZCBkZWxldGluZyBvYmplY3RzIHVudGlsCi0gICAgICAgIGFmdGVyIHRoZXkncmUgbm8gbG9uZ2Vy
IG5lZWRlZC4gIFRoZXNlIGNhc2VzIHVzdWFsbHkgbWVhbiBzb21lIGp1bXBpbmcKLSAgICAgICAg
dGhyb3VnaCBob29wcywgdG8gdGhlIGRldHJpbWVudCBvZiBjb2RlIHNpbXBsaWNpdHkuCi0KLSAg
ICAgICAgTm8gbGF5b3V0IHRlc3RzIGJlY2F1c2UgdGhpcyBkb2VzIG5vdCBjaGFuZ2UgdGhlIHZp
c2libGUgb3V0cHV0IG9mCi0gICAgICAgIGRlY29kaW5nIGluIGFueSB3YXkuCi0KLSAgICAgICAg
KiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuaDoKLSAgICAgICAgKFdlYkNv
cmU6OkltYWdlRGVjb2Rlcjo6c2V0RGF0YSk6Ci0gICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpCTVBJbWFn
ZURlY29kZXI6OnNldEZhaWxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpCTVBJbWFnZURlY29kZXI6
OmRlY29kZSk6Ci0gICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdl
RGVjb2Rlci5oOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFn
ZVJlYWRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpCTVBJbWFnZVJlYWRlcjo6ZGVjb2RlQk1Q
KToKLSAgICAgICAgKFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjpyZWFkSW5mb0hlYWRlclNpemUp
OgotICAgICAgICAoV2ViQ29yZTo6Qk1QSW1hZ2VSZWFkZXI6OnByb2Nlc3NJbmZvSGVhZGVyKToK
LSAgICAgICAgKFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjpyZWFkSW5mb0hlYWRlcik6Ci0gICAg
ICAgIChXZWJDb3JlOjpCTVBJbWFnZVJlYWRlcjo6cHJvY2Vzc0JpdG1hc2tzKToKLSAgICAgICAg
KFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjpwcm9jZXNzQ29sb3JUYWJsZSk6Ci0gICAgICAgIChX
ZWJDb3JlOjpCTVBJbWFnZVJlYWRlcjo6cHJvY2Vzc1JMRURhdGEpOgotICAgICAgICAoV2ViQ29y
ZTo6Qk1QSW1hZ2VSZWFkZXI6OnByb2Nlc3NOb25STEVEYXRhKToKLSAgICAgICAgKiBwbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6
OkJNUEltYWdlUmVhZGVyOjopOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dp
Zi9HSUZJbWFnZURlY29kZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6R0lGSW1hZ2VEZWNvZGVy
OjpzZXRGYWlsZWQpOgotICAgICAgICAoV2ViQ29yZTo6R0lGSW1hZ2VEZWNvZGVyOjpkZWNvZGUp
OgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIu
aDoKLSAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVy
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OklDT0ltYWdlRGVjb2Rlcjo6c2V0RmFpbGVkKToKLSAg
ICAgICAgKFdlYkNvcmU6OklDT0ltYWdlRGVjb2Rlcjo6ZGVjb2RlKToKLSAgICAgICAgKiBwbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVyLmg6Ci0gICAgICAgICogcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcDoKLSAgICAgICAg
KFdlYkNvcmU6OkpQRUdJbWFnZVJlYWRlcjo6ZGVjb2RlKToKLSAgICAgICAgKFdlYkNvcmU6OkpQ
RUdJbWFnZURlY29kZXI6OnNldEZhaWxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpKUEVHSW1hZ2VE
ZWNvZGVyOjpkZWNvZGUpOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcv
SlBFR0ltYWdlRGVjb2Rlci5oOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3Bu
Zy9QTkdJbWFnZURlY29kZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6UE5HSW1hZ2VSZWFkZXI6
OmRlY29kZSk6Ci0gICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OlBOR0ltYWdlRGVj
b2Rlcik6Ci0gICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OnNldEZhaWxlZCk6Ci0g
ICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OmhlYWRlckF2YWlsYWJsZSk6Ci0gICAg
ICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OmRlY29kZSk6Ci0gICAgICAgICogcGxhdGZv
cm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5oOgotCi0yMDEwLTA2LTA0ICBE
aW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAgUmVtb3ZlIHNpZGUgZWZmZWN0cyBvZiBmb3Jt
IHN1Ym1pc3Npb24gYW5kIHByZXBhcmUgRm9ybURhdGFCdWlsZGVyIGZvciBzcGxpdHRpbmcgdXAu
Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDE4NAot
Ci0gICAgICAgIFJlZmFjdG9yaW5nLCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgotCi0gICAg
ICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEZv
cm1FbGVtZW50OjpwcmVwYXJlRm9ybVN1Ym1pc3Npb24pOgotICAgICAgICAgICAgKiBDaGFuZ2Vk
IHRvIHVzZSBuZXcgYWNjZXNzb3JzIG9uIEZvcm1EYXRhQnVpbGRlcjsKLSAgICAgICAgICAgICog
U2ltcGxpZmllZCB0aGUgbG9naWMgYXJvdW5kIGFjdGlvbiBVUkw7Ci0gICAgICAgICAgICAqIFJl
bW92ZWQgZm9ybSBzdWJtaXNzaW9uIHNpZGUgZWZmZWN0IG9mIGVsZW1lbnQncyBlbmN0eXBlIHBy
b3BlcnR5IGJlaW5nIHVwZGF0ZWQgd2hlbgotICAgICAgICAgICAgICAgIHN1Ym1pdHRpbmcgYSBt
YWlsdG8gZm9ybTsKLSAgICAgICAgICAgICogUmVtb3ZlZCB1bm5lY2Vzc2FyeSB1cGRhdGluZyBv
ZiBhY3Rpb24gVVJMIGZvciBtYWlsdG8gZm9ybXMuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MRm9y
bUVsZW1lbnQ6OnN1Ym1pdCk6IE1vdmVkIGFjdGlvbiBVUkwgY2hlY2sgaW50byBwcmVwYXJlRm9y
bVN1Ym1pc3Npb24uCi0gICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6OnBhcnNlTWFw
cGVkQXR0cmlidXRlKTogVXBkYXRlZCB0byB1c2UgbmV3IG1ldGhvZHMgb24gRm9ybURhdGFCdWls
ZGVyLgotICAgICAgICAqIGh0bWwvSFRNTEZvcm1FbGVtZW50Lmg6IFJlbW92ZWQgZGVjbHMgZm9y
IGlzTWFpbHRvRm9ybSBhbmQgZGF0YUVuY29kaW5nIG1ldGhvZHM7Ci0gICAgICAgICAgICBtb3Zl
ZCBtX3RhcmdldCBhbmQgbV91cmwgdG8gRm9ybURhdGFCdWlsZGVyLgotICAgICAgICAqIHBsYXRm
b3JtL25ldHdvcmsvRm9ybURhdGEuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Rm9ybURhdGE6OmFw
cGVuZERPTUZvcm1EYXRhKTogUmVtb3ZlZCB1bm5lY2Vzc2FyeSBpbnN0YW50aWF0aW9uIG9mIEZv
cm1EYXRhQnVpbGRlci4KLSAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhQnVpbGRl
ci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YUJ1aWxkZXI6OnBhcnNlQWN0aW9uKTog
TW92ZWQgZnJvbSBIVE1MRm9ybUNvbnRyb2wuCi0gICAgICAgICogcGxhdGZvcm0vbmV0d29yay9G
b3JtRGF0YUJ1aWxkZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkZvcm1EYXRhQnVpbGRlcjo6YWN0
aW9uKTogRGl0dG8uCi0gICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YUJ1aWxkZXI6OnRhcmdldCk6
IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6Rm9ybURhdGFCdWlsZGVyOjpzZXRUYXJnZXQpOiBE
aXR0by4KLQotMjAxMC0wNi0yMiAgWXV0YSBLaXRhbXVyYSAgPHl1dGFrQGNocm9taXVtLm9yZz4K
LQotICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgotCi0gICAgICAgIEZp
eCBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0IHNvIHRoYXQgaXQgZml0cyB0aGUgbmV3IGhhbmRz
aGFrZSBwcm90b2NvbC4KLQotICAgICAgICBUaGUgbmV3IFdlYlNvY2tldCBzcGVjaWZpY2F0aW9u
IChkcmFmdCA3NiBhbmQgbGF0ZXIpIGFsbG93cyBhIGJyb3dzZXIgdG8KLSAgICAgICAgc2VuZCBo
ZWFkZXIgZmllbGRzIGluIGFyYml0cmFyeSBvcmRlci4gVGh1cyB3ZSBjYW4gdXNlIGEgSFRUUEhl
YWRlck1hcCB0bwotICAgICAgICBzdG9yZSBoZWFkZXIgZmllbGRzIGluc3RlYWQgb2YgVmVjdG9y
IG9mIHBhaXJzIG9mIGEgZmllbGQgbmFtZSBhbmQKLSAgICAgICAgYSBmaWVsZCB2YWx1ZS4KLQot
ICAgICAgICBUaGlzIHBhdGNoIGFsc28gZG9lcyByZWZhY3RvcmluZyBvZiBXZWJTb2NrZXRIYW5k
c2hha2VSZXF1ZXN0IGNsYXNzCi0gICAgICAgIHRvIG1ha2UgaXQgc2ltcGxlciBhbmQgZWFzaWVy
IHRvIHVzZS4KLQotICAgICAgICBGaXggV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCBzbyB0aGF0
IGl0IGZpdHMgdGhlIG5ldyBoYW5kc2hha2UgcHJvdG9jb2wKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5ODY0Ci0KLSAgICAgICAgTm8gbmV3IHRlc3Rz
LCBiZWNhdXNlIHRoZXJlIGlzIG5vIGZ1bmN0aW9uYWwgY2hhbmdlLgotCi0gICAgICAgICogd2Vi
c29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuY3BwOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29j
a2V0SGFuZHNoYWtlOjpjbGllbnRIYW5kc2hha2VSZXF1ZXN0KToKLSAgICAgICAgKiB3ZWJzb2Nr
ZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwOgotICAgICAgICAoV2ViQ29yZTo6V2Vi
U29ja2V0SGFuZHNoYWtlUmVxdWVzdDo6S2V5Mzo6S2V5Myk6Ci0gICAgICAgIChXZWJDb3JlOjpX
ZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpLZXkzOjpzZXQpOgotICAgICAgICAoV2ViQ29yZTo6
V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdDo6V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCk6Ci0g
ICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpyZXF1ZXN0TWV0aG9k
KToKLSAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3Q6OnVybCk6Ci0g
ICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjphZGRIZWFkZXJGaWVs
ZCk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpoZWFkZXJG
aWVsZHMpOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdDo6a2V5
Myk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpzZXRLZXkz
KToKLSAgICAgICAgKiB3ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuaDoKLQot
MjAxMC0wNi0yMCAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KLQotICAgICAg
ICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KLQotICAgICAgICA8bWV0ZXI+IHNob3VsZCBiZSB5
ZWxsb3cgd2hlbiAgbWluIDwgdmFsdWUgPCBsb3cgPCBvcHRpbXVtCi0gICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDgyNAotICAgICAgICAKLSAgICAgICAg
Rml4ZWQgYSB3cm9uZyBjb25kaXRpb25hbCBvbiBIVE1MTWV0ZXJFbGVtZW50OjpnYXVnZVJlZ2lv
bigpLgotICAgICAgICAKLSAgICAgICAgKiBodG1sL0hUTUxNZXRlckVsZW1lbnQuY3BwOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTE1ldGVyRWxlbWVudDo6Z2F1Z2VSZWdpb24pOgotCi0gICAgICAg
IFRlc3RzOiBmYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLWNhcGFj
aXR5Lmh0bWwKLSAgICAgICAgICAgICAgIGZhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXIt
b3B0aW11bXMuaHRtbAotCi0yMDEwLTA2LTIyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgRm9sbG93
IHRoZSBIVE1MNSBzcGVjIG1vcmUgY2xvc2VseSB3LnIudC4gd2hlbiB0byBzYXZlIHRoZSBpbnNl
cnRpb24gcG9pbnQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwOTc2Ci0KLSAgICAgICAgVGhlIHNwZWMgYWx3YXlzIGluY3JlbWVudHMgdGhlIG5lc3Rp
bmcgbGV2ZWwgYW5kIHNhdmVzIHRoZSBpbnNlcnRpb24KLSAgICAgICAgcG9pbnQgYXQgdGhlIHNh
bWUgdGltZS4gIEluIHRoaXMgcGF0Y2gsIHdlIG5vdyBkbyB0aG9zZSBvcGVyYXRpb25zCi0gICAg
ICAgIHBhY2thZ2VkIGFzIGEgUkFJSS4KLQotICAgICAgICBBcyBhIHNpZGUgZWZmZWN0LCB0aGUg
dGVzdCBjYXNlIGJlbG93IG5vIGxvbmdlciBBU1NFUlRzLiAgKFRoZSBvdXRwdXQKLSAgICAgICAg
aXMgd3JvbmcsIGJ1dCB3ZSdsbCBnZXQgdG8gdGhhdCBuZXh0LikKLQotICAgICAgICBUZXN0OiBm
YXN0L3Rva2VuaXplci93cml0ZS1vbi1sb2FkLmh0bWwKLQotICAgICAgICAqIGh0bWwvSFRNTDVT
Y3JpcHRSdW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6TmVzdFNjcmlwdDo6TmVzdFNjcmlw
dCk6Ci0gICAgICAgIChXZWJDb3JlOjpOZXN0U2NyaXB0Ojp+TmVzdFNjcmlwdCk6Ci0gICAgICAg
IChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRpbmdTY3JpcHQpOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OmV4ZWN1dGVTY3JpcHQpOgotICAgICAg
ICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVlc3RTY3JpcHQpOgotICAgICAgICAo
V2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJ1blNjcmlwdCk6Ci0gICAgICAgICogaHRtbC9I
VE1MSW5wdXRTdHJlYW0uaDoKLQotMjAxMC0wNi0yMiAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAgIEV4
cG9zZSBIVE1MSW5wdXRTdHJlYW0gdG8gU2NyaXB0UnVubmVyIHNvIHRoYXQgU2NyaXB0UnVubmVy
IGNhbiBzYXZlIHRoZSBpbnNlcnRpb24gcG9pbnQgaXRzZWxmCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDk3NQotCi0gICAgICAgIFRoaXMgc2F2ZXMg
dXMgaGF2aW5nIHRvIGNhbGwgYmFjayBpbnRvIHRoZSBIVE1MNURvY3VtZW50UGFyc2VyIGVhY2gK
LSAgICAgICAgdGltZSB3ZSBuZWVkIHRvIHNhdmUgdGhlIGluc2VydGlvbiBwb2ludC4gIFRoaXMg
cHJlcGFyZXMgdXMgZm9yIGFub3RoZXIKLSAgICAgICAgcGxhY2Ugd2UgbmVlZCB0byBzYXZlIHRo
ZSBpbnNlcnRpb24gcG9pbnQuCi0KLSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIu
Y3BwOgotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oOgotICAgICAgICAoV2Vi
Q29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6aW5wdXRTdHJlYW0pOgotICAgICAgICAqIGh0bWwv
SFRNTDVTY3JpcHRSdW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5u
ZXI6OmV4ZWN1dGVTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6
OnJlcXVlc3RTY3JpcHQpOgotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5uZXJIb3N0Lmg6
Ci0KLTIwMTAtMDYtMjIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAg
ICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBNb3ZlIEhUTUxJbnB1dFN0cmVh
bSB0byBpdHMgb3duIGZpbGUKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTQwOTc0Ci0KLSAgICAgICAgTm8gbmV3IHRlc3RzLCBqdXN0IGNvZGUgbW90aW9u
LgotCi0gICAgICAgICogR05VbWFrZWZpbGUuYW06Ci0gICAgICAgICogV2ViQ29yZS5neXBpOgot
ICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgotICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1l
bnRQYXJzZXIuaDoKLQotMjAxMC0wNi0yMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3Jn
PgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAgIFNhdmUgdGhl
IGluc2VydGlvbiBwb2ludCBiZWZvcmUgYmVmb3JlbG9hZCBldmVudHMKLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTczCi0KLSAgICAgICAgV2UgbmVl
ZCB0byBzYXZlIHRoZSBpbnNlcnRpb24gcG9pbnQgYmVmb3JlIGRpc3BhdGNoaW5nIHRoZSBiZWZv
cmVsb2FkCi0gICAgICAgIGV2ZW50IGluIGNhc2Ugc29tZW9uZSBkZWNpZGVzIHRvIGRvY3VtZW50
LndyaXRlIGR1cmluZyBiZWZvcmVsb2FkLgotICAgICAgICBQcmlvciB0byB0aGlzIHBhdGNoLCBz
dWNoIHdyaXRlcyB3b3VsZCBwdW1wIHRoZSBsZXhlciB0b28gbXVjaCBhbmQKLSAgICAgICAgdG9r
ZW5pemUgdGhlIHJlc3Qgb2YgdGhlIGRvY3VtZW50IGJlZm9yZSBleGVjdXRpbmcgdGhlIHNjcmlw
dC4KLQotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5jcHA6Ci0gICAgICAgIChX
ZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpkaXNwYXRjaEJlZm9yZUxvYWQpOgotICAgICAg
ICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oOgotICAgICAgICAqIGh0bWwvSFRNTDVTY3Jp
cHRSdW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVl
c3RTY3JpcHQpOgotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5uZXJIb3N0Lmg6Ci0KLTIw
MTAtMDYtMjEgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBkb2N1bWVudC53cml0ZSBmcm9tIEJlZm9y
ZUxvYWQgc2hvdWxkIG5vdCBhc3NlcnQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwOTcxCi0KLSAgICAgICAgV2UncmUgc2V0dGluZyB0aGUgcGFyc2Ug
YmxvY2tpbmcgc2NyaXB0IHRvbyBlYXJseS4gIEl0J3Mgbm90IGFjdHVhbGx5Ci0gICAgICAgIGJs
b2NraW5nIHBhcnNpbmcgeWV0LgotCi0gICAgICAgIFRlc3Q6IGZhc3QvdG9rZW5pemVyL3dyaXRl
LWJlZm9yZS1sb2FkLmh0bWwKLQotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5uZXIuY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVlc3RTY3JpcHQpOgot
Ci0yMDEwLTA2LTIxICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+Ci0KLSAg
ICAgICAgTm8gcmV2aWV3LiBRVCBidWlsZCBmaXggYWdhaW4uCi0KLSAgICAgICAgQVg6IFZvaWNl
T3ZlciBkb2VzIG5vdCBhbm5vdW5jZSBXQUktQVJJQSBzdGF0ZSBjaGFuZ2Ugb2YgYXJpYS1leHBh
bmRlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5
MjcKLQotICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oOgotICAgICAgICAo
V2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6cG9zdE5vdGlmaWNhdGlvbik6Ci0KLTIwMTAtMDYtMjEg
IENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KLQotICAgICAgICBObyByZXZp
ZXcuIFFUIGJ1aWxkIGZpeC4KLQotICAgICAgICBBWDogVm9pY2VPdmVyIGRvZXMgbm90IGFubm91
bmNlIFdBSS1BUklBIHN0YXRlIGNoYW5nZSBvZiBhcmlhLWV4cGFuZGVkCi0gICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDkyNwotCi0gICAgICAgICogYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmg6Ci0gICAgICAgIChXZWJDb3JlOjpBWE9iamVjdENh
Y2hlOjpwb3N0Tm90aWZpY2F0aW9uKToKLQotMjAxMC0wNi0yMSAgQ2hyaXMgRmxlaXphY2ggIDxj
ZmxlaXphY2hAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEJldGggRGFraW4uCi0K
LSAgICAgICAgQVg6IFZvaWNlT3ZlciBkb2VzIG5vdCBhbm5vdW5jZSBXQUktQVJJQSBzdGF0ZSBj
aGFuZ2Ugb2YgYXJpYS1leHBhbmRlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDA5MjcKLQotICAgICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNz
aWJpbGl0eS9hcmlhLWV4cGFuZGVkLW5vdGlmaWNhdGlvbnMuaHRtbAotCi0gICAgICAgICogYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0
Q2FjaGU6OmhhbmRsZUFyaWFFeHBhbmRlZENoYW5nZSk6Ci0gICAgICAgICogYWNjZXNzaWJpbGl0
eS9BWE9iamVjdENhY2hlLmg6Ci0gICAgICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjpoYW5k
bGVBcmlhRXhwYW5kZWRDaGFuZ2UpOgotICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eU9iamVjdC5oOgotICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU9iamVjdDo6aGFu
ZGxlQXJpYUV4cGFuZGVkQ2hhbmdlZCk6Ci0gICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5UmVuZGVyT2JqZWN0LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlS
ZW5kZXJPYmplY3Q6OmhhbmRsZUFyaWFFeHBhbmRlZENoYW5nZWQpOgotICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5oOgotICAgICAgICAqIGFjY2Vzc2li
aWxpdHkvbWFjL0FYT2JqZWN0Q2FjaGVNYWMubW06Ci0gICAgICAgIChXZWJDb3JlOjpBWE9iamVj
dENhY2hlOjpwb3N0UGxhdGZvcm1Ob3RpZmljYXRpb24pOgotICAgICAgICAqIGRvbS9FbGVtZW50
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnVwZGF0ZUFmdGVyQXR0cmlidXRlQ2hh
bmdlZCk6Ci0KLTIwMTAtMDYtMjEgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21h
aWwuY29tPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI2MTU4NS4KLSAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjE1ODUKLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTUwCi0KLSAgICAgICAgSXQgYnJv
a2UgYnVpbGRzIChSZXF1ZXN0ZWQgYnkga2ludWtvIG9uICN3ZWJraXQpLgotCi0gICAgICAgICog
QW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgotICAgICAgICAqIEFuZHJvaWQuZGVyaXZl
ZC52OGJpbmRpbmdzLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIERl
cml2ZWRTb3VyY2VzLmNwcDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgotICAgICAg
ICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBX
ZWJDb3JlLnByaToKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogaHRt
bC9CbG9iQnVpbGRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpCbG9iQnVpbGRlcjo6YXBwZW5k
U3RyaW5nKToKLSAgICAgICAgKFdlYkNvcmU6OkJsb2JCdWlsZGVyOjphcHBlbmRCbG9iKToKLSAg
ICAgICAgKiBodG1sL0Jsb2JCdWlsZGVyLmg6Ci0gICAgICAgICogcGFnZS9ET01XaW5kb3cuaWRs
OgotCi0yMDEwLTA2LTIxICBLaW51a28gWWFzdWRhICA8a2ludWtvQGNocm9taXVtLm9yZz4KLQot
ICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEFkZCBCbG9iQnVpbGRl
ci5pZGwgdG8gZXhwb3NlIEJsb2JCdWlsZGVyIGludGVyZmFjZQotICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA1OTMKLQotICAgICAgICBCbG9iQnVpbGRl
ciBpcyBkZWZpbmVkIGluIEZpbGVBUEkncyBGaWxlV3JpdGVyIHNwZWMuCi0gICAgICAgIChodHRw
Oi8vZGV2LnczLm9yZy8yMDA5L2RhcC9maWxlLXN5c3RlbS9maWxlLXdyaXRlci5odG1sKQotCi0g
ICAgICAgIEFsc28gcmVtb3ZlcyB0aGUgRU5BQkxFX0ZJTEVfV1JJVEVSIGlmZGVmIGd1YXJkIGZv
ciBCbG9iQnVpbGRlci4KLQotICAgICAgICBUZXN0czogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3Nl
bmQtZGF0YS1ibG9iLmh0bWwKLSAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9z
ZW5kLWh5YnJpZC1ibG9iLmh0bWwKLSAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvbG9jYWwvYmxv
Yi9zZW5kLXNsaWNlZC1kYXRhLWJsb2IuaHRtbAotCi0gICAgICAgICogQW5kcm9pZC5kZXJpdmVk
LmpzY2JpbmRpbmdzLm1rOgotICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC52OGJpbmRpbmdzLm1r
OgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNw
cDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgotICAgICAgICAqIEdOVW1ha2VmaWxl
LmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJDb3JlLnByaToKLSAg
ICAgICAgKiBXZWJDb3JlLnBybzoKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvajoKLSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAg
ICAgICogaHRtbC9CbG9iQnVpbGRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpCbG9iQnVpbGRl
cjo6YXBwZW5kKToKLSAgICAgICAgKiBodG1sL0Jsb2JCdWlsZGVyLmg6Ci0gICAgICAgICogaHRt
bC9CbG9iQnVpbGRlci5pZGw6IEFkZGVkLgotICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoK
LQotMjAxMC0wNi0yMSAgTmF0ZSBDaGFwaW4gIDxqYXBoZXRAY2hyb21pdW0ub3JnPgotCi0gICAg
ICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgRnJhbWVMb2FkZXIgY2xlYW51
cDogU3BsaXQgaGlnaCBsZXZlbCBzdWJmcmFtZSBhbmQgcGx1Z2luCi0gICAgICAgIGxvYWRpbmcg
ZnVuY3Rpb25zIGludG8gYSBzZXBhcmF0ZSBjbGFzcy4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNDUzCi0KLSAgICAgICAgUmVmYWN0b3Igb25seSwg
bm8gbmV3IHRlc3RzLgotCi0gICAgICAgICogQW5kcm9pZC5tazoKLSAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKLSAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKLSAgICAgICAgKiBXZWJDb3JlLmJh
c2UuZXhwOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJDb3JlLnBybzoK
LSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAgICAgICAgKiBXZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogZG9tL0RPTUltcGxlbWVu
dGF0aW9uLmNwcDoKLSAgICAgICAgKiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6Ci0gICAgICAgICog
aHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5jcHA6Ci0gICAgICAgICogaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcDoKLSAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgotICAgICAgICAq
IGxvYWRlci9GcmFtZUxvYWRlci5oOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN1
YmZyYW1lTG9hZGVyKToKLSAgICAgICAgKiBsb2FkZXIvUGx1Z2luRG9jdW1lbnQuY3BwOgotICAg
ICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5jcHA6IEFkZGVkLgotICAgICAgICAoV2ViQ29y
ZTo6U3ViZnJhbWVMb2FkZXI6OlN1YmZyYW1lTG9hZGVyKToKLSAgICAgICAgKFdlYkNvcmU6OnRv
UGx1Z0luRWxlbWVudCk6Ci0gICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6Y2xlYXIp
OgotICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnJlcXVlc3RGcmFtZSk6Ci0gICAg
ICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdCk6Ci0gICAgICAgIChX
ZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZE1lZGlhUGxheWVyUHJveHlQbHVnaW4pOgotICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOgotICAg
ICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6Ci0gICAgICAgIChX
ZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6YWxsb3dQbHVnaW5zKToKLSAgICAgICAgKFdlYkNvcmU6
OlN1YmZyYW1lTG9hZGVyOjpzaG91bGRVc2VQbHVnaW4pOgotICAgICAgICAoV2ViQ29yZTo6U3Vi
ZnJhbWVMb2FkZXI6OmxvYWRQbHVnaW4pOgotICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2Fk
ZXI6OmNvbXBsZXRlVVJMKToKLSAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVMb2FkZXIuaDogQWRk
ZWQuCi0gICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6Y29udGFpbnNQbHVnaW5zKToK
LSAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOgotICAgICAgICAqIHBhZ2UvWFNTQXVkaXRvci5oOgot
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL01lZGlhUGxheWVyUHJveHkuY3BwOgot
ICAgICAgICAqIHBsdWdpbnMvTWltZVR5cGUuY3BwOgotICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJBcHBsZXQuY3BwOgotICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5j
cHA6Ci0KLTIwMTAtMDYtMjEgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KLQot
ICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXguCi0KLSAgICAgICAgQmFkIG1lcmdlLCBsZWZ0
IGEgcmVmZXJlbmNlIHRvIG1fY29tbWl0dGVkRmlyc3RSZWFsRG9jdW1lbnRMb2FkIGluCi0gICAg
ICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzYxNTY4LgotCi0gICAgICAgICog
bG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp0
cmFuc2l0aW9uVG9Db21taXR0ZWQpOgotCi0yMDEwLTA2LTIxICBOYXRlIENoYXBpbiAgPGphcGhl
dEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAg
ICAgICBSZW1vdmUgYSBjb3VwbGUgb2YgRnJhbWVMb2FkZXIncyB1bnVzZWQgYm9vbGVhbiBtZW1i
ZXJzCi0gICAgICAgIChtX3JlY2VpdmVkRGF0YSwgbV9jYW5jZWxsaW5nV2l0aExvYWRJblByb2Nl
c3MpIGFuZCBtZXJnZQotICAgICAgICBzZXZlcmFsIG1vcmUgaW50byBhIHNpbmdsZSBzdGF0ZSBt
YWNoaW5lIGNhbGxlZCBGcmFtZUxvYWRlclN0YXRlTWFjaGluZQotICAgICAgICAobV9maXJzdExh
eW91dERvbmUsIG1fY3JlYXRpbmdJbml0aWFsRW1wdHlEb2N1bWVudCwKLSAgICAgICAgbV9pc0Rp
c3BsYXlpbmdJbml0aWFsRW1wdHlEb2N1bWVudCwgbV9jb21taXR0ZWRGaXJzdFJlYWxEb2N1bWVu
dExvYWQpLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zOTY5NQotCi0gICAgICAgIFJlZmFjdG9yIG9ubHksIHNvIG5vIG5ldyB0ZXN0cy4KLQotICAg
ICAgICAqIFdlYkNvcmUuYmFzZS5leHA6Ci0gICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgotICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFdyaXRlci5jcHA6Ci0gICAg
ICAgIChXZWJDb3JlOjpEb2N1bWVudFdyaXRlcjo6Y3JlYXRlRG9jdW1lbnQpOgotICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRXcml0ZXI6OmJlZ2luKToKLSAgICAgICAgKiBsb2FkZXIvRnJhbWVM
b2FkZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OkZyYW1lTG9hZGVyKToK
LSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjppbml0KToKLSAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjpzdG9wTG9hZGluZyk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRl
cjo6ZGlkT3BlblVSTCk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6ZGlkRXhwbGlj
aXRPcGVuKToKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpjbGVhcik6Ci0gICAgICAg
IChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6ZGlkQmVnaW5Eb2N1bWVudCk6Ci0gICAgICAgIChXZWJD
b3JlOjpGcmFtZUxvYWRlcjo6ZmluaXNoZWRQYXJzaW5nKToKLSAgICAgICAgKFdlYkNvcmU6OkZy
YW1lTG9hZGVyOjpwcm92aXNpb25hbExvYWRTdGFydGVkKToKLSAgICAgICAgKFdlYkNvcmU6OkZy
YW1lTG9hZGVyOjpsb2dDYW5DYWNoZVBhZ2VEZWNpc2lvbik6Ci0gICAgICAgIChXZWJDb3JlOjpG
cmFtZUxvYWRlcjo6bG9nQ2FuQ2FjaGVGcmFtZURlY2lzaW9uKToKLSAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjpmcmFtZUhhc0xvYWRlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZUxv
YWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjp0cmFuc2l0aW9uVG9Db21taXR0ZWQpOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2Fk
ZXI6OmZpbmlzaGVkTG9hZGluZ0RvY3VtZW50KToKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjpjaGVja0xvYWRDb21wbGV0ZUZvclRoaXNGcmFtZSk6Ci0gICAgICAgIChXZWJDb3JlOjpG
cmFtZUxvYWRlcjo6ZGlkRmlyc3RMYXlvdXQpOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2Fk
ZXI6OmZyYW1lTG9hZENvbXBsZXRlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6
ZGlzcGF0Y2hEaWRDb21taXRMb2FkKToKLSAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoK
LSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpzdGF0ZU1hY2hpbmUpOgotICAgICAgICAq
IGxvYWRlci9GcmFtZUxvYWRlclN0YXRlTWFjaGluZS5jcHA6IEFkZGVkLgotICAgICAgICAqIGxv
YWRlci9GcmFtZUxvYWRlclN0YXRlTWFjaGluZS5oOiBBZGRlZC4KLSAgICAgICAgKiBsb2FkZXIv
SGlzdG9yeUNvbnRyb2xsZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUNvbnRyb2xs
ZXI6OnJlc3RvcmVTY3JvbGxQb3NpdGlvbkFuZFZpZXdTdGF0ZSk6Ci0gICAgICAgIChXZWJDb3Jl
OjpIaXN0b3J5Q29udHJvbGxlcjo6c2F2ZURvY3VtZW50U3RhdGUpOgotICAgICAgICAqIGxvYWRl
ci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6UHJvZ3Jlc3NUcmFja2Vy
OjppbmNyZW1lbnRQcm9ncmVzcyk6Ci0gICAgICAgICogbG9hZGVyL1JlZGlyZWN0U2NoZWR1bGVy
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJlZGlyZWN0U2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0
aW9uQ2hhbmdlKToKLSAgICAgICAgKFdlYkNvcmU6OlJlZGlyZWN0U2NoZWR1bGVyOjpzY2hlZHVs
ZUZvcm1TdWJtaXNzaW9uKToKLQotMjAxMC0wNi0yMSAgS2V2aW4gT2xsaXZpZXIgIDxrZXZpbm9A
dGhlb2xsaXZpZXJzLmNvbT4KLQotICAgICAgICBbd3hdIEJ1aWxkIGZpeC4gRml4IGhlYWRlciBp
bmNsdWRlcyBmb3IgRU5BQkxFKERBVEFCQVNFKQotCi0gICAgICAgICogYmluZGluZ3MvanMvSlNF
eGNlcHRpb25CYXNlLmNwcDoKLQotMjAxMC0wNi0yMSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJz
Y2FAYXBwbGUuY29tPgotCi0gICAgICAgIEZpeCBjbGFuZysrIGJ1aWxkLgotCi0gICAgICAgICog
bG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmg6Ci0KLTIwMTAtMDYtMjEgIERpbWl0cmkgR2xhemtvdiAg
PGRnbGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXgu
Ci0KLSAgICAgICAgQWRkIGEgbWlzc2luZyBpbmNsdWRlIGluIEFzeW5jSW1hZ2VSZXNpemVyLmgK
LQotICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDogQWRkZWQgdGhlIEludFNpemUg
aW5jbHVkZS4KLQotMjAxMC0wNi0yMSAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+Ci0K
LSAgICAgICAgQ2FsbCBOb3RpZnlBZGRyQ2hhbmdlIGFnYWluIGVhY2ggdGltZSB3ZSBhcmUgbm90
aWZpZWQgb2YgYSBjaGFuZ2UKLQotICAgICAgICBOb3RpZnlBZGRyQ2hhbmdlIG9ubHkgbm90aWZp
ZXMgeW91IG9mIGEgc2luZ2xlIGNoYW5nZS4gSWYgeW91IHdhbnQgdG8KLSAgICAgICAgbGlzdGVu
IGZvciBzdWJzZXF1ZW50IGNoYW5nZXMsIHlvdSBoYXZlIHRvIGNhbGwgaXQgYWdhaW4uCi0KLSAg
ICAgICAgRml4ZXMgPGh0dHA6Ly93ZWJraXQub3JnL2IvMzMwMDQ+IE5ldHdvcmtTdGF0ZU5vdGlm
aWVyIGlnbm9yZXMgYWxsCi0gICAgICAgIHN0YXRlIGNoYW5nZXMgYWZ0ZXIgdGhlIGZpcnN0Lgot
Ci0gICAgICAgIE5vIHRlc3QgcG9zc2libGUsIGFzIHdlIGRvbid0IGhhdmUgYSB3YXkgdG8gbW9k
aWZ5IHRoZSBzeXN0ZW0ncwotICAgICAgICBuZXR3b3JrIGFkYXB0ZXJzIHdoZW4gcnVubmluZyB0
ZXN0cy4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24uCi0KLSAgICAgICAg
KiBwbGF0Zm9ybS9uZXR3b3JrL3dpbi9OZXR3b3JrU3RhdGVOb3RpZmllcldpbi5jcHA6Ci0gICAg
ICAgIChXZWJDb3JlOjpOZXR3b3JrU3RhdGVOb3RpZmllcjo6YWRkckNoYW5nZUNhbGxiYWNrKTog
Q2FsbAotICAgICAgICByZWdpc3RlckZvckFkZHJlc3NDaGFuZ2UgYXMgc29vbiBhcyB3ZSdyZSBu
b3RpZmllZCBvZiBhbiBhZGRyZXNzCi0gICAgICAgIGNoYW5nZSwgc28gd2UnbGwgYWxzbyBnZXQg
bm90aWZpZWQgb2YgdGhlICpuZXh0KiBhZGRyZXNzIGNoYW5nZS4gSQotICAgICAgICBhZGRlZCB0
aGUgY2FsbCBoZXJlIGluc3RlYWQgb2YgaW4gYWRkcmVzc0NoYW5nZWQgKHdoaWNoIGlzIGNhbGxl
ZAotICAgICAgICBsYXRlciBvbiB0aGUgbWFpbiB0aHJlYWQpIHRvIG1pbmltaXplIHRoZSB0aW1l
IGJldHdlZW4gdGhlIGNhbGxiYWNrCi0gICAgICAgIGFuZCByZWdpc3RlcmluZyBhZ2FpbiAoc28g
dGhhdCB3ZSB3b24ndCBtaXNzIGNoYW5nZXMgdGhhdCBoYXBwZW4gaW4KLSAgICAgICAgcmFwaWQg
c3VjY2Vzc2lvbikuCi0KLTIwMTAtMDYtMjEgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KLQotICAgICAgICBSZWxlYXNlIGJ1aWxkIGZpeAotCi0gICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckJsb2NrTGluZUxheW91dC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjp0cnlIeXBoZW5hdGlu
Zyk6Ci0KLTIwMTAtMDYtMjEgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KLQotICAg
ICAgICBXaW5kb3dzIGJ1aWxkIGZpeAotCi0gICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2o6IEZpeGVkIGEgdHlwby4KLQotMjAxMC0wNi0yMSAgRGFuIEJlcm5zdGVpbiAgPG1p
dHpAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgotCi0gICAg
ICAgIENTUzM6IEltcGxlbWVudCB0aGUgJ2h5cGhlbnMnIGFuZCAnaHlwaGVuYXRlLWNoYXJhY3Rl
cicgcHJvcGVydGllcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAyMjgKLQotICAgICAgICBUZXN0czogZmFzdC90ZXh0L2h5cGhlbmF0ZS1jaGFyYWN0
ZXIuaHRtbAotICAgICAgICAgICAgICAgZmFzdC90ZXh0L2h5cGhlbnMuaHRtbAotCi0gICAgICAg
IEFkZGVkIC13ZWJraXQtaHlwaGVucyBhbmQgLXdlYmtpdC1oeXBoZW5hdGUtY2hhcmFjdGVyIGFz
IHNwZWNpZmllZCBpbgotICAgICAgICA8aHR0cDovL3d3dy53My5vcmcvVFIvMjAxMC9XRC1jc3Mz
LWdjcG0tMjAxMDA2MDgvI2h5cGhlbmF0aW9uPi4KLQotICAgICAgICAqIEFuZHJvaWQubWs6IEFk
ZGVkIEh5cGhlbmF0aW9uLmNwcC4KLSAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogRGl0dG8uCi0g
ICAgICAgICogR05VbWFrZWZpbGUuYW06IEFkZGVkIEh5cGhlbmF0aW9uLntjcHAsaH0uCi0gICAg
ICAgICogV2ViQ29yZS5iYXNlLmV4cDogRXhwb3J0ZWQgd2tHZXRIeXBoZW5hdGlvbkxvY2F0aW9u
QmVmb3JlSW5kZXgoKS4KLSAgICAgICAgKiBXZWJDb3JlLmd5cGk6IEFkZGVkIEh5cGhlbmF0aW9u
LntjcHAsaH0uCi0gICAgICAgICogV2ViQ29yZS5wcm86IEFkZGVkIEh5cGhlbmF0aW9uLntjcHAs
aH0uCi0gICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6IEFkZGVkIEh5cGhl
bmF0aW9uLntjcHAsaH0uCi0gICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOiBBZGRlZCBIeXBoZW5hdGlvbi57Y3BwLGh9LgotICAgICAgICAqIGNzcy9DU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb24uY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uOjpnZXRQcm9wZXJ0eUNTU1ZhbHVlKTogQWRkZWQgdGhlIC13ZWJraXQtaHlw
aGVuYXRlLWNoYXJhY3RlcgotICAgICAgICBhbmQgLXdlYmtpdC1oeXBoZW5zIGNhc2VzLgotICAg
ICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpw
YXJzZVZhbHVlKTogVmFsaWRhdGUgdmFsdWVzIGZvciB0aGUgbmV3IHByb3BlcnRpZXMuCi0gICAg
ICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKLSAgICAgICAgKFdlYkNvcmU6
OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6IEFkZGVkLiBNYXBzIGZyb20g
YSBIeXBoZW5zIHZhbHVlIHRvIGFuIGlkZW50aWZpZXIuCi0gICAgICAgIChXZWJDb3JlOjpDU1NQ
cmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgSHlwaGVucyk6IEFkZGVkLiBNYXBzIGZyb20gYW4gaWRl
bnRpZmllciB0byBhIEh5cGhlbnMgdmFsdWUuCi0gICAgICAgICogY3NzL0NTU1Byb3BlcnR5TmFt
ZXMuaW46IEFkZGVkIC13ZWJraXQtaHlwaGVuYXRlLWNoYXJhY3RlciBhbmQgLXdlYmtpdC1oeXBo
ZW5zLgotICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOiBBcHBseSB0aGUgbmV3IHByb3Bl
cnRpZXMgdG8gdGhlIFJlbmRlclN0eWxlLgotICAgICAgICAqIGNzcy9DU1NWYWx1ZUtleXdvcmRz
LmluOgotICAgICAgICAqIHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmg6IEFk
ZGVkIHdrR2V0SHlwaGVuYXRpb25Mb2NhdGlvbkJlZm9yZUluZGV4LgotICAgICAgICAqIHBsYXRm
b3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tOiBEaXR0by4KLSAgICAgICAgKiBwbGF0
Zm9ybS90ZXh0L0NoYXJhY3Rlck5hbWVzLmg6IEFkZGVkIHRoZSBoeXBoZW4gY2hhcmFjdGVyLgot
ICAgICAgICAqIHBsYXRmb3JtL3RleHQvSHlwaGVuYXRpb24uY3BwOiBBZGRlZC4KLSAgICAgICAg
KFdlYkNvcmU6Omxhc3RIeXBoZW5Mb2NhdGlvbik6IEFkZGVkIHRoaXMgZGVmYXVsdCBpbXBsZW1l
bnRhdGlvbiBmb3IgcGxhdGZvcm1zIHRoYXQgZG8gbm90IGltcGxlbWVudAotICAgICAgICBoeXBo
ZW5hdGlvbiB5ZXQuIEl0IGNhbGxzIG5vdEltcGxlbWVudGVkKCkgYW5kIHJldHVybnMgMC4KLSAg
ICAgICAgKiBwbGF0Zm9ybS90ZXh0L0h5cGhlbmF0aW9uLmg6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL3RleHQvY2YvSHlwaGVuYXRpb25DRi5jcHA6IEFkZGVkLgotICAgICAgICAoV2ViQ29y
ZTo6bGFzdEh5cGhlbkxvY2F0aW9uKTogUmV0dXJucyB0aGUgbGFzdCBoeXBoZW5hdGlvbiBsb2Nh
dGlvbiBvY2N1cnJpbmcgaW4gdGhlIGdpdmVuIHN0cmluZyBiZWZvcmUKLSAgICAgICAgdGhlIGdp
dmVuIGluZGV4LiBVc2VzIHRoZSBjdXJyZW50IHNlYXJjaCBsb2NhbGUgKHdoaWNoIGlzIGJhc2Vk
IG9uIHRoZSB0b3AgbGFuZ3VhZ2UgcHJlZmVyZW5jZSBvZiB0aGUgdXNlcikKLSAgICAgICAgZm9y
IGh5cGhlbmF0aW9uLgotICAgICAgICAqIHBsYXRmb3JtL3RleHQvbWFjL0h5cGhlbmF0aW9uTWFj
Lm1tOiBBZGRlZC4KLSAgICAgICAgKFdlYkNvcmU6Omxhc3RIeXBoZW5Mb2NhdGlvbik6IFJldHVy
bnMgdGhlIGxhc3QgaHlwaGVuYXRpb24gbG9jYXRpb24gb2NjdXJyaW5nIGluIHRoZSBnaXZlbiBz
dHJpbmcgYmVmb3JlCi0gICAgICAgIHRoZSBnaXZlbiBpbmRleC4gUmV0dXJucyAwIGlmIHRoZSBj
dXJyZW50IHNlYXJjaCBsb2NhbGUgaXMgbm90ICJlbiIsIGJlY2F1c2UgdGhlIHBsYXRmb3JtIG9u
bHkga25vd3MgaG93IHRvCi0gICAgICAgIGh5cGhlbmF0ZSBFbmdsaXNoLgotICAgICAgICAqIHJl
bmRlcmluZy9CaWRpUnVuLmg6Ci0gICAgICAgIChXZWJDb3JlOjpCaWRpUnVuOjpCaWRpUnVuKTog
QWRkZWQgYSBib29sZWFuIG1lbWJlciwgbV9oYXNIeXBoZW4sIGFuZCBpbml0aWFsaXplZCBpdCB0
byBmYWxzZSBpbiB0aGUgY29uc3RydWN0b3IuCi0gICAgICAgICogcmVuZGVyaW5nL0lubGluZUJv
eC5oOgotICAgICAgICAoV2ViQ29yZTo6SW5saW5lQm94OjpJbmxpbmVCb3gpOiBSZW5hbWVkIG1f
aGFzRWxsaXBzaXNCb3ggdG8gbV9oYXNFbGxpcHNpc0JveE9ySHlwaGVuLCBiZWNhdXNlIHRoaXMg
Yml0IGlzIG5vdwotICAgICAgICBzaGFyZWQgYnkgdHdvIHN1YmNsYXNzOiBSb290SW5saW5lQm94
IHVzZXMgaXQgZm9yIGhhc0VsbGlwc2lzQm94KCksIHdoaWxlIElubGluZVRleHRCb3ggdXNlcyBp
dCBmb3IgaGFzSHlwaGVuKCkuCi0gICAgICAgICogcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6YWRqdXN0Q2hhcmFjdGVyc0FuZExlbmd0aEZvckh5cGhlbik6
IEFkZGVkIHRoaXMgaGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgaHlwaGVuIHN0cmluZyBmcm9t
IHRoZSBzdHlsZQotICAgICAgICBhbmQgcmV0dXJuIGEgVUNoYXIqIGFuZCBsZW5ndGggZm9yIHRo
ZSBjb25jYXRlbmF0aW9uIG9mIHRoZSBnaXZlbiB0ZXh0IHdpdGggdGhlIGh5cGhlbiBzdHJpbmcu
Ci0gICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpzZWxlY3Rpb25SZWN0KTogSWYgdGhl
IHNlbGVjdGVkIHJhbmdlIHRvdWNoZXMgdGhlIGVuZCBhbmQgdGhlIGJveCBoYXMgYSBoeXBoZW4s
Ci0gICAgICAgIGNvbXB1dGUgdGhlIHdpZHRoIG9mIHRoZSB0ZXh0IHdpdGggdGhlIGh5cGhlbiBz
dHJpbmcgY29uY2F0ZW5hdGVkIHRvIGl0LgotICAgICAgICAoV2ViQ29yZTo6SW5saW5lVGV4dEJv
eDo6cGFpbnQpOiBJZiB0aGUgYm94IGhhcyBhIGh5cGhlbiwgZHJhdyB0aGUgdGV4dCB3aXRoIHRo
ZSBoeXBoZW4gc3RyaW5nIGNvbmNhdGVuYXRlZCB0byBpdC4KLSAgICAgICAgKFdlYkNvcmU6Oklu
bGluZVRleHRCb3g6OnBhaW50U2VsZWN0aW9uKTogU2ltaWxhcmx5IGNvbmNhdGVuYXRlIHRoZSBo
eXBoZW4gc3RyaW5nLgotICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVUZXh0Qm94Lmg6Ci0gICAg
ICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpoYXNIeXBoZW4pOiBBZGRlZCB0aGlzIGFjY2Vz
c29yLgotICAgICAgICAoV2ViQ29yZTo6SW5saW5lVGV4dEJveDo6c2V0SGFzSHlwaGVuKTogRGl0
dG8uCi0gICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmg6Ci0gICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJC
bG9jazo6Y29uc3RydWN0TGluZSk6IENvcHkgdGhlIG1faGFzSHlwaGVuIGZsYWcgZnJvbSB0aGUg
cnVuIHRvIGl0cyB0ZXh0IGJveC4KLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpjb21w
dXRlSG9yaXpvbnRhbFBvc2l0aW9uc0ZvckxpbmUpOiBBZGQgdGhlIHdpZHRoIG9mIHRoZSBoeXBo
ZW4gc3RyaW5nIHdoZW4gY29tcHV0aW5nIHRoZQotICAgICAgICB3aWR0aCBvZiBhIGJveCB0aGF0
IGhhcyBhIGh5cGhlbi4KLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpsYXlvdXRJbmxp
bmVDaGlsZHJlbik6IElmIHRoZSBsaW5lIHdhcyBoeXBoZW5hdGVkLCBzZXQgdGhlIG1faGFzSHlw
aGVuIGZsYWcgb24gdGhlCi0gICAgICAgIGxvZ2ljYWxseSBsYXN0IHJ1bi4KLSAgICAgICAgKFdl
YkNvcmU6OnRyeUh5cGhlbmF0aW5nKTogQWRkZWQgdGhpcyBoZWxwZXIgZnVuY3Rpb24gd2hpY2gg
Y2hlY2tzIGlmIGEgcGllY2Ugb2YgdGV4dCB0aGF0IGRvZXMgbm90IGZpdCBvbiB0aGUKLSAgICAg
ICAgbGluZSBjb3VsZCBiZSBoeXBoZW5hdGVkIHN1Y2ggdGhhdCB0aGUgcGFydCBiZWZvcmUgdGhl
IGh5cGhlbiwgaW5jbHVkaW5nIHRoZSBoeXBoZW4sIHdvdWxkIGZpdC4gR2l2ZW4gdGhlIGFtb3Vu
dAotICAgICAgICBvZiBzcGFjZSByZW1haW5pbmcgb24gdGhlIGxpbmUsIGl0IGZpbmRzIHRoZSBs
b25nZXN0IHByZWZpeCB0aGF0IGNhbiBmaXQgaW4gdGhlIHJlbWFpbmluZyBzcGFjZSAod2hpY2gg
bGVhdmluZyByb29tIGZvcgotICAgICAgICB0aGUgaHlwaGVuKSwgYW5kIHRoZW4gY2hlY2tzIGZv
ciBhIGh5cGhlbmF0aW9uIGxvY2F0aW9uIHdpdGhpbiB0aGF0IHByZWZpeC4KLSAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckJsb2NrOjpmaW5kTmV4dExpbmVCcmVhayk6IEluIHRoZSAnaHlwaGVuczog
bm9uZScgY2FzZSwgcHJldmVudCBsaW5lIGJyZWFrcyBhdCBzb2Z0IGh5cGhlbnMuCi0gICAgICAg
IEluIHRoZSAnaHlwaGVuczogYXV0bycgY2FzZSwgdHJ5IGh5cGhlbmF0aW5nIHdoZW4gYSB3b3Jk
IHdpbGwgbm90IGZpdCBpbiB0aGUgcmVtYWluaW5nIHNwYWNlIG9uIHRoZSBsaW5lLgotICAgICAg
ICAqIHJlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJvb3RJ
bmxpbmVCb3g6OmRldGFjaEVsbGlwc2lzQm94KTogQ2hhbmdlZCB0byB1c2UgaGFzRWxsaXBzaXNC
b3goKSBhbmQgc2V0SGFzRWxsaXBzaXNCb3goKS4KLSAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxp
bmVCb3g6OmNsZWFyVHJ1bmNhdGlvbik6IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6Um9vdElu
bGluZUJveDo6cGxhY2VFbGxpcHNpcyk6IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6Um9vdElu
bGluZUJveDo6cGFpbnRFbGxpcHNpc0JveCk6IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6Um9v
dElubGluZUJveDo6bm9kZUF0UG9pbnQpOiBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OlJvb3RJ
bmxpbmVCb3g6OmVsbGlwc2lzQm94KTogRGl0dG8uCi0gICAgICAgICogcmVuZGVyaW5nL1Jvb3RJ
bmxpbmVCb3guaDoKLSAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6Omhhc0VsbGlwc2lz
Qm94KTogQWRkZWQgdGhpcyBhY2Nlc3Nvci4KLSAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVC
b3g6OnNldEhhc0VsbGlwc2lzQm94KTogRGl0dG8uCi0gICAgICAgICogcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpkaWZmKTog
UmV0dXJuIGEgbGF5b3V0IGhpbnQgaWYgdGhlIGh5cGhlbnMgc2V0dGluZyBvciBoeXBoZW5hdGUt
Y2hhcmFjdGVyIGRpZmZlcnMuCi0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6aHlwaGVu
U3RyaW5nKTogQWRkZWQuIEZvciBoeXBoZW5hdGUtY2hhcmFjdGVyOiBhdXRvLCByZXR1cm5zIHRo
ZSBoeXBoZW4gY2hhcmFjdGVyLgotICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5oOgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6Omh5cGhlbnMpOiBBZGRlZCB0
aGlzIGFjY2Vzc29yLgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6Omh5cGhlbmF0
ZUNoYXJhY3Rlcik6IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OnNl
dEh5cGhlbnMpOiBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpzZXRI
eXBoZW5hdGVDaGFyYWN0ZXIpOiBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZs
YWdzOjppbml0aWFsSHlwaGVucyk6IEFkZGVkLiBSZXR1cm5zIEh5cGhlbnNNYW51YWwuCi0gICAg
ICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6aW5pdGlhbEh5cGhlbmF0ZUNoYXJhY3Rlcik6
IEFkZGVkLiBSZXR1cm5zIHRoZSBudWxsIHN0cmluZywgY29ycmVzcG9uZGluZyB0bwotICAgICAg
ICBhIHZhbHVlIG9mICdhdXRvJy4KLSAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGVDb25zdGFudHMuaDoKLSAgICAgICAgQWRkZWQgYSBIeXBoZW5zIGVudW0uCi0gICAgICAgICog
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwOgotICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YSk6IElu
aXRpYWxpemUgYW5kIGNvcHkgdGhlIG5ldyBtZW1iZXJzLgotICAgICAgICAoV2ViQ29yZTo6U3R5
bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSk6IENvbXBhcmUgdGhlIG5ldyBtZW1iZXJz
LgotICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmg6IEFk
ZGVkIHR3byBuZXcgbWVtYmVyczogaHlwaGVucyBhbmQgaHlwaGVuYXRlQ2hhcmFjdGVyLgotCi0y
MDEwLTA2LTAzICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAgUGx1bWIgRm9ybVN1Ym1p
c3Npb24gdGhyb3VnaCB0byBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbi4KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMTM3Ci0KLSAgICAgICAgTm8gYmVo
YXZpb3IgY2hhbmdlLCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgotCi0gICAgICAgICogaHRt
bC9IVE1MRm9ybUVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50
OjpwcmVwYXJlRm9ybVN1Ym1pc3Npb24pOiBNb3ZlZCBjcmVhdGlvbiBvZiBhY3Rpb24gVVJMCi0g
ICAgICAgICAgICBpbnN0YW5jZSBoZXJlIGZyb20gRnJhbWVMb2FkZXI6OnN1Ym1pdCwgYmVjYXVz
ZSBpdCBtYWtlcyBtb3JlIHNlbnNlIGhlcmUsCi0gICAgICAgICAgICBhbHNvIGFkZGVkIGEgRklY
TUUgdG8gaW52ZXN0aWdhdGUgZXhpc3RpbmcgY29kZSBsYXRlci4KLSAgICAgICAgKiBsb2FkZXIv
Rm9ybVN1Ym1pc3Npb24uY3BwOgotICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZv
cm1TdWJtaXNzaW9uKTogQ2hhbmdlZCBhY3Rpb24gdG8gYmUgYSBLVVJMLCBub3QgYSBTdHJpbmcu
Ci0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKTogRGl0dG8uCi0gICAg
ICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cG9wdWxhdGVGcmFtZUxvYWRSZXF1ZXN0KTog
QWRkZWQsIG1vdmluZyB0aGUgbG9naWMgZnJvbQotICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnN1
Ym1pdCBjbG9zZXIgdG8gdGhlIGRhdGEuCi0gICAgICAgICogbG9hZGVyL0Zvcm1TdWJtaXNzaW9u
Lmg6Ci0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6YWN0aW9uKTogQ2hhbmdlZCB0
eXBlIHRvIEtVUkwuCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6Y2xlYXJUYXJn
ZXQpOiBBZGRlZC4KLSAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpyZWZlcnJlcik6
IEFkZGVkLgotICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnNldFJlZmVycmVyKTog
QWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6b3JpZ2luKTogQWRkZWQu
Ci0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6c2V0T3JpZ2luKTogQWRkZWQuCi0g
ICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1l
TG9hZGVyOjpzdWJtaXRGb3JtKTogQ2xlYW5lZCB1cCB0byBtYWtlIGl0IG1vcmUgYWJvdXQgZGVj
aXNpb24tbWFraW5nLAotICAgICAgICAgICAgbm90IGRhdGEgbWFuaXB1bGF0aW9uLgotICAgICAg
ICAqIGxvYWRlci9SZWRpcmVjdFNjaGVkdWxlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpTY2hl
ZHVsZWRGb3JtU3VibWlzc2lvbjo6U2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24pOiBDaGFuZ2VkIHRv
IGFjY2VwdCBGb3JtU3VibWlzc2lvbiBhcyBhcmd1bWVudC4KLSAgICAgICAgKFdlYkNvcmU6OlNj
aGVkdWxlZEZvcm1TdWJtaXNzaW9uOjpmaXJlKTogQ2hhbmdlZCB0byB1c2UgRm9ybVN1Ym1pc3Np
b24uCi0gICAgICAgIChXZWJDb3JlOjpSZWRpcmVjdFNjaGVkdWxlcjo6c2NoZWR1bGVGb3JtU3Vi
bWlzc2lvbik6IFJlbW92ZWQgYXNzZXJ0IHRoYXQgbm8gbG9uZ2VyIG1ha2VzIHNlbnNlLAotICAg
ICAgICAgICAgY2hhbmdlZCB0byB1c2UgRm9ybVN1Ym1pc3Npb24uCi0gICAgICAgICogbG9hZGVy
L1JlZGlyZWN0U2NoZWR1bGVyLmg6IFVwZGF0ZWQgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24gZGVj
bCB0byBob2xkIEZvcm1TdWJtaXNzaW9uIHJlZi4KLQotMjAxMC0wNi0yMSAgU2F0aXNoIFNhbXBh
dGggIDxzYXRpc2hAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IFN0ZXZlIEJs
b2NrLgotCi0gICAgICAgIFNwZWVjaCBJbnB1dCBQYXRjaCAwOiBBZGRlZCBjb21waWxhdGlvbiBh
cmd1bWVudCB0byBjb25kaXRpb25hbGx5IGNvbXBpbGUgcGVuZGluZyBwYXRjaGVzLgotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NzgKLQotICAgICAg
ICBObyBuZXcgdGVzdHMgYXJlIG5lZWRlZCwgYmVjYXVzZSB0aGVyZSBpcyBubyBuZXcgZnVuY3Rp
b25hbGl0eS4KLQotICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnOgotICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUucHJpOgot
Ci0yMDEwLTA2LTIxICBIYW5zIFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgSmVyZW15IE9ybG93LgotCi0gICAgICAgIERlbGV0ZSBET00gc3RvcmFn
ZSBkYXRhYmFzZXMgd2hlbiB0aGV5IGFyZSBlbXB0eS4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzY3Ci0KLSAgICAgICAgRXZlbiBpZiBhIHBhZ2Ug
Y2xlYXJzIGl0cyBsb2NhbCBzdG9yYWdlLCB0aGUgZGF0YWJhc2UgZmlsZSBmb3IgaXQgc3RheXMg
YXJvdW5kLAotICAgICAgICBhbmQgdGhlcmUgaXMgY3VycmVudGx5IG5vIG1lY2hhbmlzbSB0aGF0
IGRlbGV0ZXMgdGhlbS4KLQotICAgICAgICBBZnRlciBkb2luZyB0aGUgImZpbmFsIHN5bmMiIG9m
IGEgc3RvcmFnZSBhcmVhLCB0aGUgU3RvcmFnZUFyZWFTeW5jTWFzdGVyIHNob3VsZAotICAgICAg
ICBzZWUgaWYgdGhlIGRhdGFiYXNlIGlzIGVtcHR5LCBhbmQgaW4gdGhhdCBjYXNlIGRlbGV0ZSBp
dC4KLQotICAgICAgICBUZXN0czoKLSAgICAgICAgIG1hbnVhbC10ZXN0cy9sb2NhbHN0b3JhZ2Ut
ZW1wdHktZGF0YWJhc2UuaHRtbAotCi0gICAgICAgICogbWFudWFsLXRlc3RzL2xvY2Fsc3RvcmFn
ZS1lbXB0eS1kYXRhYmFzZS5odG1sOgotICAgICAgICBBZGRlZCBsaW5rIHRvIGNsZWFyIGxvY2Fs
IHN0b3JhZ2UgZm9yIHRlc3RpbmcgdGhhdCB0aGUgZmlsZSBpcyByZW1vdmVkLgotICAgICAgICAq
IHN0b3JhZ2UvTG9jYWxTdG9yYWdlVGFzay5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpMb2NhbFN0
b3JhZ2VUYXNrOjpMb2NhbFN0b3JhZ2VUYXNrKToKLSAgICAgICAgQWRkZWQgbG9jYWwgc3RvcmFn
ZSB0YXNrIHR5cGUgRGVsZXRlRW1wdHlEYXRhYmFzZS4KLSAgICAgICAgKFdlYkNvcmU6OkxvY2Fs
U3RvcmFnZVRhc2s6OnBlcmZvcm1UYXNrKToKLSAgICAgICAgRGl0dG8uCi0gICAgICAgICogc3Rv
cmFnZS9Mb2NhbFN0b3JhZ2VUYXNrLmg6Ci0gICAgICAgIChXZWJDb3JlOjpMb2NhbFN0b3JhZ2VU
YXNrOjopOgotICAgICAgICBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OkxvY2FsU3RvcmFnZVRh
c2s6OmNyZWF0ZURlbGV0ZUVtcHR5RGF0YWJhc2UpOgotICAgICAgICBEaXR0by4KLSAgICAgICAg
KiBzdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpTdG9yYWdl
QXJlYVN5bmM6OnNjaGVkdWxlRmluYWxTeW5jKToKLSAgICAgICAgV2hlbiBzY2hlZHVsaW5nIGZp
bmFsIHN5bmMsIGFsc28gc2NoZWR1bGUgRGVsZXRlRW1wdHlEYXRhYmFzZS4KLSAgICAgICAgKFdl
YkNvcmU6OlN0b3JhZ2VBcmVhU3luYzo6c3luYyk6Ci0gICAgICAgIFJldHVybiBlYXJseSBpZiBm
aW5hbCBzeW5jIGhhcyBub3RoaW5nIHRvIHN5bmMuCi0gICAgICAgIChXZWJDb3JlOjpTdG9yYWdl
QXJlYVN5bmM6OmRlbGV0ZUVtcHR5RGF0YWJhc2UpOgotICAgICAgICBBZGRlZCBmdW5jdGlvbiB0
byBjaGVjayBpZiBhIGRhdGFiYXNlIGlzIGVtcHR5IGFuZCBpbiB0aGF0IGNhc2UgZGVsZXRlIGl0
LgotICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFTeW5jLmg6Ci0gICAgICAgIERpdHRvLgot
ICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN5bmNNYW5hZ2VyLmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OlN0b3JhZ2VTeW5jTWFuYWdlcjo6c2NoZWR1bGVEZWxldGVFbXB0eURhdGFiYXNlKToKLSAg
ICAgICAgQWRkZWQgZnVuY3Rpb24gZm9yIHNjaGVkdWxpbmcgRGVsZXRlRW1wdHlEYXRhYmFzZSB0
YXNrLgotICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN5bmNNYW5hZ2VyLmg6Ci0gICAgICAgIERp
dHRvLgotCi0yMDEwLTA2LTIxICBCYWxhenMgS2VsZW1lbiAgPGtiQGluZi51LXN6ZWdlZC5odT4K
LQotICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAgICBbUXRdIEF2
b2lkIHVubmVjZXNzYXJ5IGltYWdlIGNvbnZlcnNpb24gaW4gUkdCQTMyQnVmZmVyOjp6ZXJvRmls
bCgpCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDkx
MAotCi0gICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvUkdCQTMyQnVmZmVyUXQu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6UkdCQTMyQnVmZmVyOjp6ZXJvRmlsbCk6Ci0KLTIwMTAt
MDYtMjEgIEJlbmphbWluIFBvdWxhaW4gIDxiZW5qYW1pbi5wb3VsYWluQG5va2lhLmNvbT4KLQot
ICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KLQotICAgICAg
ICBbUXRdIERlY29kZSBpbWFnZXMgZGlyZWN0bHkgdG8gUVBpeG1hcAotICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA3OTcKLQotICAgICAgICBEZWNvZGUg
aW1hZ2VzIHRvIFFQaXhtYXAgZGlyZWN0bHkgaW5zdGVhZCBvZiBRSW1hZ2Ugd2hlbiBwb3NzaWJs
ZS4KLSAgICAgICAgUkdCQTMyQnVmZmVyIHRyYW5zZm9ybXMgdGhlIHBpeG1hcCBiYWNrIHRvIGlt
YWdlIGlmCi0gICAgICAgIG5lY2Vzc2FyeS4KLQotICAgICAgICBUaGlzIGltcHJvdmUgdGhlIHBl
cmZvcm1hbmNlIHdpdGggY2VydGFpbiBncmFwaGljIHN5c3RlbSwgYW5kCi0gICAgICAgIGNhbiBy
ZWR1Y2UgbWVtb3J5IHVzYWdlLgotCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1h
Z2VEZWNvZGVyUXQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEZWNvZGVyUXQ6OnNldERh
dGEpOgotICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEZWNvZGVyUXQ6OmludGVybmFsSGFuZGxlQ3Vy
cmVudEltYWdlKToKLSAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29k
ZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OlJHQkEzMkJ1ZmZlcjo6Z2V0QWRkcik6Ci0gICAgICAg
ICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvUkdCQTMyQnVmZmVyUXQuY3BwOgotICAgICAg
ICAoV2ViQ29yZTo6UkdCQTMyQnVmZmVyOjpjbGVhcik6Ci0gICAgICAgIChXZWJDb3JlOjpSR0JB
MzJCdWZmZXI6Onplcm9GaWxsKToKLSAgICAgICAgKFdlYkNvcmU6OlJHQkEzMkJ1ZmZlcjo6Y29w
eUJpdG1hcERhdGEpOgotICAgICAgICAoV2ViQ29yZTo6UkdCQTMyQnVmZmVyOjpzZXRTaXplKToK
LSAgICAgICAgKFdlYkNvcmU6OlJHQkEzMkJ1ZmZlcjo6YXNOZXdOYXRpdmVJbWFnZSk6Ci0gICAg
ICAgIChXZWJDb3JlOjpSR0JBMzJCdWZmZXI6OnNldFBpeG1hcCk6Ci0KLTIwMTAtMDYtMjAgIER1
bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBi
eSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEFkZGluZyB0aGUgU1FMRXhjZXB0aW9uIGNsYXNzIHdo
aWNoIHdpbGwgYmUgdXNlZCB0byByZXBvcnQgc3luYyBEQiBlcnJvcnMuCi0gICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDYwNwotCi0gICAgICAgICogQW5k
cm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgotICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC52
OGJpbmRpbmdzLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIERlcml2
ZWRTb3VyY2VzLmNwcDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgotICAgICAgICAq
IEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJD
b3JlLnByaToKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogYmluZGlu
Z3MvanMvSlNET01CaW5kaW5nLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OnNldERPTUV4Y2VwdGlv
bik6Ci0gICAgICAgICogYmluZGluZ3MvanMvSlNFeGNlcHRpb25CYXNlLmNwcDoKLSAgICAgICAg
KFdlYkNvcmU6OnRvRXhjZXB0aW9uQmFzZSk6Ci0gICAgICAgICogYmluZGluZ3MvdjgvVjhQcm94
eS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpzZXRET01FeGNlcHRpb24pOgotICAg
ICAgICAqIGJpbmRpbmdzL3Y4L1Y4UHJveHkuaDoKLSAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29k
ZS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjopOgotICAgICAgICAoV2ViQ29yZTo6Z2V0RXhjZXB0
aW9uQ29kZURlc2NyaXB0aW9uKToKLSAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29kZS5oOgotICAg
ICAgICAoV2ViQ29yZTo6KToKLSAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6Ci0gICAgICAg
ICogc3RvcmFnZS9TUUxFeGNlcHRpb24uaDogQWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpTUUxF
eGNlcHRpb246OmNyZWF0ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpTUUxFeGNlcHRpb246Oik6Ci0g
ICAgICAgIChXZWJDb3JlOjpTUUxFeGNlcHRpb246OlNRTEV4Y2VwdGlvbik6Ci0gICAgICAgICog
c3RvcmFnZS9TUUxFeGNlcHRpb24uaWRsOiBBZGRlZC4KLQotMjAxMC0wNi0yMCAgWXVyeSBTZW1p
a2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBQYXZl
bCBGZWxkbWFuLgotCi0gICAgICAgIFt2OF0gV2ViIEluc3BlY3RvcjogZG9uJ3QgYWRkIFNjcmlw
dERlYnVnU2VydmVyIGFzIHY4IGxpc3RlbmVyIGlmIGJyb3dzZXIgZXhwb3NlcwotICAgICAgICB2
OCBkZWJ1Z2dpbmcgcHJvdG9jb2wuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD00MDg0NAotCi0gICAgICAgICogYmluZGluZ3MvdjgvU2NyaXB0RGVidWdT
ZXJ2ZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RGVidWdTZXJ2ZXI6OlNjcmlwdERl
YnVnU2VydmVyKToKLSAgICAgICAgKFdlYkNvcmU6OlNjcmlwdERlYnVnU2VydmVyOjphZGRMaXN0
ZW5lcik6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHREZWJ1Z1NlcnZlcjo6c2V0RW5hYmxlZCk6
Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHREZWJ1Z1NlcnZlcjo6aXNEZWJ1Z2dlckFsd2F5c0Vu
YWJsZWQpOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjcmlwdERlYnVnU2VydmVyLmg6Ci0KLTIw
MTAtMDYtMjAgIEd5dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KLQotICAg
ICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4KLQotICAgICAgICBbRUZMXSBCdWlsZCBicmVhayBm
b3IgcjYxNTI3Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Bvc3RfYnVnLmNnaSAK
LQotICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGQgbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNw
cAotCi0yMDEwLTA2LTIwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+Ci0K
LSAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KLQotICAgICAgICBSZW1vdmUgYm9n
dXMgY29uc3QgcXVhbGlmaWVycy4KLQotICAgICAgICAqIHBsYXRmb3JtL21hYy9QYXN0ZWJvYXJk
SGVscGVyLmg6Ci0KLTIwMTAtMDYtMjAgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHBhcm9n
YS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgS2VudCBUYW11cmEuCi0KLSAgICAgICAgQnVp
bGRmaXggZm9yIE5vdGlmaWNhdGlvbkNlbnRlci5oLgotICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4OTAKLQotICAgICAgICBTY3JpcHRFeGVjdXRpb25D
b250ZXh0Ojpjb21wbGV0ZVVSTCBpcyB1c2VkIGluIGhlYWRlciwKLSAgICAgICAgYnV0IFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQuaCB3YXNuJ3QgaW5jbHVkZWQuCi0KLSAgICAgICAgKiBub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oOgotCi0yMDEwLTA2LTIwICBUb255IEdlbnRpbGNv
cmUgIDx0b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlk
ZWwuCi0KLSAgICAgICAgUmVjb2duaXplIGFzeW5jIGF0dHJpYnV0ZSBvbiBIVE1MIHNjcmlwdCB0
YWdzLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzkw
MjYKLQotICAgICAgICBUaGlzIGRvZXMgbm90IGltcGxlbWVudCBhc3luYyBiZWhhdmlvciwgaXQg
b25seSBwYXJzZXMgdGhlIGFzeW5jCi0gICAgICAgIGF0dHJpYnV0ZSBmb3IgSFRNTCBzY3JpcHQg
dGFncy4gU1ZHIHNjcmlwdCB0YWdzIGNvbnRpbnVlIHRvIG5vdAotICAgICAgICBzdXBwb3J0IHRo
ZSBhc3luYyBhdHRyaWJ1dGUuCi0KLSAgICAgICAgVGVzdHM6IGZhc3QvZG9tL0hUTUxTY3JpcHRF
bGVtZW50L3NjcmlwdC1hc3luYy1hdHRyLmh0bWwKLSAgICAgICAgICAgICAgIHN2Zy9kb20vU1ZH
U2NyaXB0RWxlbWVudC9zY3JpcHQtYXN5bmMtYXR0ci5zdmcKLQotICAgICAgICAqIGRvbS9TY3Jp
cHRFbGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVsZW1lbnREYXRhOjppc0Fz
eW5jaHJvbm91cyk6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHRFbGVtZW50RGF0YTo6aXNEZWZl
cnJlZCk6Ci0gICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQuaDoKLSAgICAgICAgKiBodG1sL0hU
TUxBdHRyaWJ1dGVOYW1lcy5pbjoKLSAgICAgICAgKiBodG1sL0hUTUxTY3JpcHRFbGVtZW50LmNw
cDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRFbGVtZW50Ojphc3luYyk6Ci0gICAgICAg
IChXZWJDb3JlOjpIVE1MU2NyaXB0RWxlbWVudDo6c2V0QXN5bmMpOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdEVsZW1lbnQ6OmRlZmVyKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3Jp
cHRFbGVtZW50Ojphc3luY0F0dHJpYnV0ZVZhbHVlKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxT
Y3JpcHRFbGVtZW50OjpkZWZlckF0dHJpYnV0ZVZhbHVlKToKLSAgICAgICAgKiBodG1sL0hUTUxT
Y3JpcHRFbGVtZW50Lmg6Ci0gICAgICAgICogaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5pZGw6Ci0g
ICAgICAgICogc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6U1ZH
U2NyaXB0RWxlbWVudDo6YXN5bmNBdHRyaWJ1dGVWYWx1ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpT
VkdTY3JpcHRFbGVtZW50OjpkZWZlckF0dHJpYnV0ZVZhbHVlKToKLSAgICAgICAgKiBzdmcvU1ZH
U2NyaXB0RWxlbWVudC5oOgotCi0yMDEwLTA2LTIwICBOaWtpdGEgVmFzaWx5ZXYgIDxtZUBlbHYx
cy5ydT4KLQotICAgICAgICBSZXZpZXdlZCBieSBKb3NlcGggUGVjb3Jhcm8uCi0KLSAgICAgICAg
V2ViIEluc3BlY3RvcjogQXV0by1jb21wbGV0aW9uIGZvciBDU1MgcHJvcGVydHkgbmFtZXMgaW4g
U3R5bGVzIHBhbmUKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE3Mzc0Ci0KLSAgICAgICAgQWRkZWQgYXV0b2NvbXBsZXRpb24gZm9yIENTUyBwcm9wZXJ0
aWVzLiBBIHN1Z2dlc3Rpb24gZm9yIGEgcHJvcGVydHkKLSAgICAgICAgc2hvd3Mgd2hlbiB5b3Ug
dHlwZS4gWW91IGNhbiBhbHNvIGN5Y2xlIHRocm91Z2gga25vd24gcHJvcGVydHkgbmFtZXMKLSAg
ICAgICAgdXNpbmcgdGhlIFVwIGFuZCBEb3duIGFycm93IGtleXMuCi0KLSAgICAgICAgKiBXZWJD
b3JlLmd5cGk6Ci0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NDb21wbGV0aW9ucy5q
czogQWRkZWQuCi0gICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTQ29tcGxldGlvbnMpOgotICAgICAg
ICAoV2ViSW5zcGVjdG9yLkNTU0NvbXBsZXRpb25zLnN0YXJ0c1dpdGgpOgotICAgICAgICAoV2Vi
SW5zcGVjdG9yLkNTU0NvbXBsZXRpb25zLmZpcnN0U3RhcnRzV2l0aCk6Ci0gICAgICAgIChXZWJJ
bnNwZWN0b3IuQ1NTQ29tcGxldGlvbnMuX2ZpcnN0SW5kZXhPZlByZWZpeCk6Ci0gICAgICAgIChX
ZWJJbnNwZWN0b3IuQ1NTQ29tcGxldGlvbnMubmV4dCk6Ci0gICAgICAgIChXZWJJbnNwZWN0b3Iu
Q1NTQ29tcGxldGlvbnMucHJldmlvdXMpOgotICAgICAgICAoV2ViSW5zcGVjdG9yLkNTU0NvbXBs
ZXRpb25zLl9jbG9zZXN0KToKLSAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1Np
ZGViYXJQYW5lLmpzOgotICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxl
bWVudC5wcm90b3R5cGUpOgotICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvV2ViS2l0LnFy
YzoKLSAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sOgotICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvdXRpbGl0aWVzLmpzOgotICAgICAgICAoVGV4dC5wcm90
b3R5cGUuc2VsZWN0KToKLSAgICAgICAgKCk6CisgICAgICAgIEV4cG9zZWQgdGhlIGltYWdlIHJl
c2l6aW5nIEFQSSB0byBKU0MsIGJ1dCBpdCBpcyBmdW5jdGlvbmFsbHkgaW5jb21wbGV0ZSBhdCB0
aGlzIHN0YWdlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDA4NTQKIAotMjAxMC0wNi0xNCAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21p
dW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgotCi0gICAgICAgIElu
dHJvZHVjZSBGb3JtU3VibWlzc2lvbiwgdGhlIHN0cnVjdHVyZSByZXByZXNlbnRpbmcgYSBmb3Jt
IHN1Ym1pc3Npb24uCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MDA4NAotCi0gICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LCBjb3ZlcmVk
IGJ5IGV4aXN0aW5nIHRlc3RzLgotCi0gICAgICAgICogR05VbWFrZWZpbGUuYW06IEFkZGVkIEZv
cm1TdWJtaXNzaW9uLmgvY3BwLgorICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGRlZCBmaWxl
cy4KKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5jcHA6IERpdHRvLgorICAgICAgICAqIERlcml2
ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOiBEaXR0by4K
ICAgICAgICAgKiBXZWJDb3JlLmd5cGk6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUucHJpOiBE
aXR0by4KICAgICAgICAgKiBXZWJDb3JlLnBybzogRGl0dG8uCiAgICAgICAgICogV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2o6IERpdHRvLgogICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajogRGl0dG8uCi0gICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9ybVN1Ym1p
c3Npb24pOiBSZW5hbWVkIHByZXBhcmVGb3JtRGF0YSB0byBwcmVwYXJlRm9ybVN1Ym1pc3Npb24s
Ci0gICAgICAgICAgICBhZGRlZCBjb2RlIGZvciBwb3B1bGF0aW5nIGEgRm9ybVN1Ym1pc3Npb24g
aW5zdGFuY2UsIG1vdmVkIHRoZSBsb29wIG9mIGFjY3VtdWxhdGluZyB0ZXh0IGlucHV0Ci0gICAg
ICAgICAgICB2YWx1ZXMgaW50byB0aGlzIGZ1bmN0aW9ucyAoaXQgYmVsb25ncyBoZXJlIGxvZ2lj
YWxseSkuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdCk6IE1vZGlm
aWVkIHRvIHVzZSBwcmVwYXJlRm9ybVN1Ym1pc3Npb24uCi0gICAgICAgICogaHRtbC9IVE1MRm9y
bUVsZW1lbnQuaDoKLSAgICAgICAgKiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwOiBBZGRlZC4K
LSAgICAgICAgKiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uaDogQWRkZWQuCi0gICAgICAgICogbG9h
ZGVyL0ZyYW1lTG9hZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpzdWJt
aXRGb3JtKTogTW9kaWZpZWQgdG8gdXNlIEZvcm1TdWJtaXNzaW9uLiBTdG9wcGVkIHBsdW1iaW5n
IGZ1cnRoZXIgdG8ga2VlcAotICAgICAgICAgICAgdGhlIHBhdGNoIHNpemUgZG93bi4KLSAgICAg
ICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDogTW9kaWZpZWQgc3VibWl0Rm9ybSBzaWduYXR1cmUu
Ci0KLTIwMTAtMDYtMjAgIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KLQot
ICAgICAgICBVbnJldmlld2VkIHJvbGxvdXQgcjYxNTA2LCBiZWNhdXNlIGl0IG1hZGUgMSB0ZXN0
IGNyYXNoLgotCi0gICAgICAgIENhdXNlcyBjcmFzaC4gV2lsbCBhcHByb2FjaCB0aGUgc29sdXRp
b24gaW4gYSBkaWZmZXJlbnQgd2F5LgotCi0yMDEwLTA2LTIwICBKb3NlcGggUGVjb3Jhcm8gIDxq
b2VwZWNrQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRjaGVy
LgotCi0gICAgICAgIFdlYiBJbnNwZWN0b3I6IFNob3VsZCBBdXRvY29tcGxldGUgU3R5bGUgUHJv
cGVydGllcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Mzg0NDgKLQotICAgICAgICBUaGlzIEF1dG9jb21wbGV0ZXMgc3R5bGUgcHJvcGVydGllcyB3aGVu
IGluIHRoZSBjb25zb2xlLgotCi0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3Rl
ZFNjcmlwdC5qczoKLSAgICAgICAgKGluamVjdGVkU2NyaXB0Q29uc3RydWN0b3IpOgotCi0yMDEw
LTA2LTIwICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAgICBbUXRdIE5QUF9TZXRXaW5kb3cgc2Vl
bXMgdG8gbm90IGJlIGNhbGxlZCB3aGVuIFRlc3ROZXRzY2FwZVBsdWdpbiBpcyBtb3ZlZAotCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjcwMgotCi0g
ICAgICAgIHNldE5QV2luZG93SWZOZWVkZWQoKSBpcyBjYWxsZWQgb24gcGFpbnQoKSBpbiBQbHVn
aW5WaWV3UXQsIHdoaWNoIGRvZXNuJ3QKLSAgICAgICAgd29yayBmb3IgRFJULiBTbyBjYWxsIGl0
IGlmIHdlIGFyZSBpbiBEUlQgbW9kZSBhbmQgdGhlIHdpbmRvdyBnZW9tZXRyeQotICAgICAgICBo
YXMgY2hhbmdlZC4KLQotICAgICAgICBVbnNraXBzIHBsdWdpbnMvcmVlbnRyYW50LXVwZGF0ZS13
aWRnZXQtcG9zaXRpb25zLmh0bWwKLQotICAgICAgICAqIHBsdWdpbnMvcXQvUGx1Z2luVmlld1F0
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OnVwZGF0ZVBsdWdpbldpZGdldCk6
Ci0KLTIwMTAtMDYtMTkgIFRvbnkgR2VudGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KLQot
ICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIFBlcnNpc3QgVjgncyBT
Y3JpcHREYXRhIHRvIHRoZSBtZW1vcnkgY2FjaGUuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODY2MQotCi0gICAgICAgIFRoaXMgc3RvcmVzIFY4J3Mg
U2NyaXB0RGF0YSBpbiB0aGUgbWVtb3J5IGNhY2hlIGFuZCBhbHNvIGNhdXNlcyB0aGUKLSAgICAg
ICAgbmV0d29yayBwbGF0Zm9ybSBsYXllciB0byBiZSBub3RpZmllZCBvZiB0aGUgYXZhaWxhYmxl
IGNhY2hlYWJsZQotICAgICAgICBtZXRhZGF0YS4KLQotICAgICAgICBDaHJvbWl1bSdzIG1vcmVq
cyBiZW5jaG1hcmsgc2hvd2VkIGEgfjclIGltcHJvdmVtZW50IHdoZW4gdGhpcyB3YXMKLSAgICAg
ICAgb3JpZ2luYWxseSBzdWJtaXR0ZWQgKGJlZm9yZSBpdCBoYWQgdG8gYmUgcm9sbGVkIGJhY2sp
LgotCi0gICAgICAgIFRlc3Q6IGZhc3QvanMvcGFyc2VyLWhpZ2gtYnl0ZS1jaGFyYWN0ZXIuaHRt
bAotCi0gICAgICAgICogYmluZGluZ3MvdjgvU2NyaXB0U291cmNlQ29kZS5oOgotICAgICAgICAo
V2ViQ29yZTo6U2NyaXB0U291cmNlQ29kZTo6U2NyaXB0U291cmNlQ29kZSk6Ci0gICAgICAgIChX
ZWJDb3JlOjpTY3JpcHRTb3VyY2VDb2RlOjpjYWNoZWRTY3JpcHQpOgotICAgICAgICAqIGJpbmRp
bmdzL3Y4L1Y4UHJveHkuY3BwOgotICAgICAgICAoV2ViQ29yZTo6VjhQcm94eTo6Y29tcGlsZVNj
cmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpwcmVjb21waWxlU2NyaXB0KToKLSAg
ICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OmV2YWx1YXRlKToKLSAgICAgICAgKiBiaW5kaW5ncy92
OC9WOFByb3h5Lmg6Ci0KLTIwMTAtMDYtMTkgIEt3YW5nIFl1bCBTZW8gIDxza3l1bEBjb21wYW55
MTAwLm5ldD4KLQotICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KLQotICAgICAgICBb
QlJFV01QXSBQb3J0IFNvY2tldFN0cmVhbQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9Mzk2NzEKLQotICAgICAgICBQb3J0IFNvY2tldFN0cmVhbSB3aXRo
IEJSRVcgTVAncyBJU29ja2V0IGludGVyZmFjZS4KLQotICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvYnJldy9Tb2NrZXRTdHJlYW1FcnJvci5oOiBBZGRlZC4KLSAgICAgICAgKFdlYkNvcmU6OlNv
Y2tldFN0cmVhbUVycm9yOjpTb2NrZXRTdHJlYW1FcnJvcik6Ci0gICAgICAgICogcGxhdGZvcm0v
bmV0d29yay9icmV3L1NvY2tldFN0cmVhbUhhbmRsZS5oOiBBZGRlZC4KLSAgICAgICAgKFdlYkNv
cmU6OlNvY2tldFN0cmVhbUhhbmRsZTo6Y3JlYXRlKToKLSAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL2JyZXcvU29ja2V0U3RyZWFtSGFuZGxlQnJldy5jcHA6IEFkZGVkLgotICAgICAgICAoV2Vi
Q29yZTo6c29ja2V0U3RyZWFtQ29ubmVjdENhbGxiYWNrKToKLSAgICAgICAgKFdlYkNvcmU6Omdl
dEhvc3RCeU5hbWVDYWxsYmFjayk6Ci0gICAgICAgIChXZWJDb3JlOjpzb2NrZXRSZWFkYWJsZUNh
bGxiYWNrKToKLSAgICAgICAgKFdlYkNvcmU6Om5ldHdvcmtNYW5hZ2VyKToKLSAgICAgICAgKFdl
YkNvcmU6OlNvY2tldFN0cmVhbUhhbmRsZVByaXZhdGU6OlNvY2tldFN0cmVhbUhhbmRsZVByaXZh
dGUpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlUHJpdmF0ZTo6flNvY2tl
dFN0cmVhbUhhbmRsZVByaXZhdGUpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFu
ZGxlUHJpdmF0ZTo6c29ja2V0Q29ubmVjdGVkKToKLSAgICAgICAgKFdlYkNvcmU6OlNvY2tldFN0
cmVhbUhhbmRsZVByaXZhdGU6OnNvY2tldFJlYWR5UmVhZCk6Ci0gICAgICAgIChXZWJDb3JlOjpT
b2NrZXRTdHJlYW1IYW5kbGVQcml2YXRlOjpjb25uZWN0KToKLSAgICAgICAgKFdlYkNvcmU6OlNv
Y2tldFN0cmVhbUhhbmRsZVByaXZhdGU6OnNlbmQpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0
U3RyZWFtSGFuZGxlUHJpdmF0ZTo6Y2xvc2UpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3Ry
ZWFtSGFuZGxlUHJpdmF0ZTo6c29ja2V0Q2xvc2VkKToKLSAgICAgICAgKFdlYkNvcmU6OlNvY2tl
dFN0cmVhbUhhbmRsZVByaXZhdGU6OnNvY2tldEVycm9yKToKLSAgICAgICAgKFdlYkNvcmU6OlNv
Y2tldFN0cmVhbUhhbmRsZTo6U29ja2V0U3RyZWFtSGFuZGxlKToKLSAgICAgICAgKFdlYkNvcmU6
OlNvY2tldFN0cmVhbUhhbmRsZTo6flNvY2tldFN0cmVhbUhhbmRsZSk6Ci0gICAgICAgIChXZWJD
b3JlOjpTb2NrZXRTdHJlYW1IYW5kbGU6OnBsYXRmb3JtU2VuZCk6Ci0gICAgICAgIChXZWJDb3Jl
OjpTb2NrZXRTdHJlYW1IYW5kbGU6OnBsYXRmb3JtQ2xvc2UpOgotICAgICAgICAoV2ViQ29yZTo6
U29ja2V0U3RyZWFtSGFuZGxlOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgot
ICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlOjpyZWNlaXZlZENyZWRlbnRpYWwp
OgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlOjpyZWNlaXZlZFJlcXVlc3RU
b0NvbnRpbnVlV2l0aG91dENyZWRlbnRpYWwpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3Ry
ZWFtSGFuZGxlOjpyZWNlaXZlZENhbmNlbGxhdGlvbik6Ci0gICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9icmV3L1NvY2tldFN0cmVhbUhhbmRsZVByaXZhdGUuaDogQWRkZWQuCi0KLTIwMTAtMDYt
MTkgIE5pa2l0YSBWYXNpbHlldiAgPG1lQGVsdjFzLnJ1PgotCi0gICAgICAgIFJldmlld2VkIGJ5
IFBhdmVsIEZlbGRtYW4uCi0KLSAgICAgICAgV2ViIEluc3BlY3RvcjogUHJldmVudCBmcm9tIGNv
cHlpbmcgImZpbGVuYW1lLmNzcyIgaW4gU3R5bGVzIHBhbmUKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNDIwCi0KLSAgICAgICAgKiBpbnNwZWN0b3Iv
ZnJvbnQtZW5kL1NlY3Rpb24uanM6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuU2VjdGlvbi5wcm90
b3R5cGUuc2V0IHN1YnRpdGxlKToKLSAgICAgICAgKFdlYkluc3BlY3Rvci5TZWN0aW9uLnByb3Rv
dHlwZS5nZXQgc3VidGl0bGVBc1RleHQpOgotICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQv
U3R5bGVzU2lkZWJhclBhbmUuanM6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0
aWVzU2VjdGlvbik6Ci0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuY3Nz
OgotICAgICAgICAoLnN0eWxlcy1zZWN0aW9uIC5zdWJ0aXRsZTo6YmVmb3JlLCAuc3R5bGVzLXNl
Y3Rpb24gLnN1YnRpdGxlIGE6OmJlZm9yZSk6Ci0KLTIwMTAtMDYtMTkgIEFsZXggTWlsb3dza2kg
IDxhbGV4QG1pbG93c2tpLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4K
LQotICAgICAgICBBIGZpeCBmb3IgYSBjaGFuZ2UgaW4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM5OTQxIAotICAgICAgICB0aGF0IGNhdXNlZCBhIGNvbXBpbGUgZXJy
b3IgaW4gTWF0aE1MLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDA4MjcKLQotICAgICAgICAqIG1hdGhtbC9NYXRoTUxFbGVtZW50LmNwcDoKLSAgICAg
ICAgKFdlYkNvcmU6Ok1hdGhNTEVsZW1lbnQ6Ok1hdGhNTEVsZW1lbnQpOgotCi0yMDEwLTA2LTE5
ICBLYXJ0aWtheWEgR3VwdGEgIDxrYWd1cHRhQHJpbS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQg
YnkgTmlrb2xhcyBaaW1tZXJtYW5uLgotCi0gICAgICAgIENQUCBiaW5kaW5ncyBtaXNzaW5nIHNv
bWUgQVBJcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA1NzAKLQotICAgICAgICBBZGQgbWlzc2luZyBDKysgRE9NIEFQSSBiaW5kaW5ncy4gU3BlY2lm
aWNhbGx5OgotICAgICAgICAtIE5vZGVGaWx0ZXIgY2FsbGJhY2sgc3VwcG9ydAotICAgICAgICAt
IE1pc3NpbmcgY3VzdG9tIG1ldGhvZCBpbXBsZW1lbnRhdGlvbnMgaW4gSFRNTENvbGxlY3Rpb24g
YW5kIEhUTUxPcHRpb25zQ29sbGVjdGlvbgotICAgICAgICAtIE1pc3NpbmcgRXZlbnRUYXJnZXQg
c3RhdGljIHR5cGUtZGV0ZXJtaW5hdGlvbiBtZXRob2RzCi0gICAgICAgIC0gRml4IENQUCBiaW5k
aW5nIGdlbmVyYXRvciB0byBub3QgZ2VuZXJhdGUgZC1wdHJzIGZvciBjbGFzc2VzIHRoYXQgZXh0
ZW5kIEV2ZW50VGFyZ2V0IGFuZCBqdXN0IHVzZSB0aGUgcGFyZW50J3MgZC1wdHIgaW5zdGVhZAot
ICAgICAgICAtIFN3aXRjaCBiaW5kaW5nIGdlbmVyYXRvciB0byB1c2UgRE9NV2luZG93IGluc3Rl
YWQgb2YgQWJzdHJhY3RWaWV3IHNvIHRoYXQgbmVjZXNzYXJ5IFczQy1kZWZpbmVkIG1ldGhvZHMg
KGUuZy4gZ2V0Q29tcHV0ZWRTdHlsZSkgYXJlIGFjY2Vzc2libGUuCi0KLSAgICAgICAgKiBiaW5k
aW5ncy9jcHAvV2ViRE9NRE9NV2luZG93Q3VzdG9tLmNwcDogQWRkZWQuCi0gICAgICAgIChXZWJE
T01ET01XaW5kb3c6OmFkZEV2ZW50TGlzdGVuZXIpOgotICAgICAgICAoV2ViRE9NRE9NV2luZG93
OjpyZW1vdmVFdmVudExpc3RlbmVyKToKLSAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NRXZl
bnRUYXJnZXQuY3BwOgotICAgICAgICAodG9XZWJLaXQpOgotICAgICAgICAqIGJpbmRpbmdzL2Nw
cC9XZWJET01FdmVudFRhcmdldC5oOgotICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01IVE1M
Q29sbGVjdGlvbkN1c3RvbS5jcHA6IEFkZGVkLgotICAgICAgICAoV2ViRE9NSFRNTENvbGxlY3Rp
b246Oml0ZW0pOgotICAgICAgICAoV2ViRE9NSFRNTENvbGxlY3Rpb246Om5hbWVkSXRlbSk6Ci0g
ICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5j
cHA6IEFkZGVkLgotICAgICAgICAoV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uOjpsZW5ndGgp
OgotICAgICAgICAoV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uOjpzZXRMZW5ndGgpOgotICAg
ICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcDogQWRkZWQuCi0g
ICAgICAgIChXZWJET01Ob2RlRmlsdGVyOjphY2NlcHROb2RlKToKLSAgICAgICAgKHRvV2ViS2l0
KToKLSAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5j
cHA6IEFkZGVkLgotICAgICAgICAoV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbjo6V2ViTmF0
aXZlTm9kZUZpbHRlckNvbmRpdGlvbik6Ci0gICAgICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29u
ZGl0aW9uOjp+V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbik6Ci0gICAgICAgIChXZWJOYXRp
dmVOb2RlRmlsdGVyQ29uZGl0aW9uOjphY2NlcHROb2RlKToKLSAgICAgICAgKiBiaW5kaW5ncy9j
cHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oOiBBZGRlZC4KLSAgICAgICAgKFdlYk5h
dGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmNyZWF0ZSk6Ci0gICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtOgotICAgICAgICAqIGRvbS9Ob2RlRmlsdGVyLmlkbDoK
LSAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6Ci0KLTIwMTAtMDYtMTkgIFZhbmdlbGlzIEtv
a2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERp
bWl0cmkgR2xhemtvdi4KLQotICAgICAgICBbY2hyb21pdW1dIEFkZGluZyBhIGNvbmRpdGlvbmFs
IGd5cCBkZXBlbmRlbmN5IGZvciB0aGUgV2ViQ29yZSB0YXJnZXQgdG8gCi0gICAgICAgIHRoZSBn
bGVzMl9jX2xpYiB3aGljaCBpcyByZXF1aXJlZCBieSB0aGUgZ3B1IGNvbXBvc2l0b3IuIFRoZSBk
ZXBlbmRlbmN5IHdpbGwKLSAgICAgICAgb25seSBraWNrIGluIGlmIHRoZSBhY2NlbGVyYXRlZF9j
b21wb3NpdGluZyBwYXRoIGlzIGVuYWJsZWQuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MDgwMQotCi0gICAgICAgICogV2ViQ29yZS5neXAvV2ViQ29y
ZS5neXA6Ci0KLTIwMTAtMDYtMTkgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFyb25Abm9raWEuY29t
PgotCi0gICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgotCi0g
ICAgICAgIFtRdF0gUGxhdGZvcm0gcGx1Z2luJ3MgbXVsdGktc2VsZWN0IGRvZXMgbm90IHRha2Ug
T3B0R3JvdXAgaW50byBhY2NvdW50Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD00MDcxOAotCi0gICAgICAgIEluIG11bHRpLXNlbGVjdCBlbGVtZW50cywg
b3B0Z3JvdXAgZWxlbWVudHMgYXJlIGNvdW50ZWQgaW4gdGhlIGluZGV4IGNhbGN1bGF0aW9uLAot
ICAgICAgICBidXQgaW4gc2luZ2xlLXNlbGVjdCB0aGV5IGFyZSBub3QuIEtlZXAgdGhlIHNhbWUg
bG9naWMgZXZlbiB3aGVuIE5PX0xJU1RCT1hfUkVOREVSSU5HCi0gICAgICAgIGlzIGVuYWJsZWQu
Ci0gICAgICAgIEFkZGVkIHRlc3RzIHRvIHRoZSBleGlzdGluZyBtYW51YWwgdGVzdCwgYXMgdGVz
dGluZyB0aGlzIHJlcXVpcmVzIGEgc3BlY2lhbCBidWlsZCwgaW4gd2hpY2gKLSAgICAgICAgTk9f
TElTVEJPWF9SRU5ERVJJTkcgaXMgZW5hYmxlZC4KLQotICAgICAgICAqIGh0bWwvSFRNTFNlbGVj
dEVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFNlbGVjdEVsZW1lbnQ6Omxpc3RC
b3hTZWxlY3RJdGVtKToKLSAgICAgICAgKiBtYW51YWwtdGVzdHMvbm8tbGlzdGJveC1yZW5kZXJp
bmcuaHRtbDoKLSAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwOgotICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTWVudUxpc3Q6Omxpc3RCb3hTZWxlY3RJdGVtKToKLQotMjAxMC0w
Ni0xOSAgVGhvbWFzIFZhbiBMZW50ZW4gIDx0aG9tYXN2bEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgRGF2aWQgTGV2aW4uCi0KLSAgICAgICAgV2FybmluZ3MgZnJvbSAtV2V4
dHJhIGluIGEgQ2hyb21pdW0gTWFjIGJ1aWxkCi0gICAgICAgIDEuIGNoZWNrcyBvZiB1bnNpZ25l
ZCA+PSAwCi0gICAgICAgIDIuIGVudW1lcmFsIGFuZCBub24tZW51bWVyYWwgdHlwZSBpbiBjb25k
aXRpb25hbCBleHByZXNzaW9uCi0gICAgICAgIDMuIGNvcHkgY3RvcnMgdGhhdCBkb24ndCBjYWxs
IHRoZSBzdXBlciBjb3B5IGN0b3Igb3IgY3RvcgotICAgICAgICBObyBmdW5jdGlvbmFsaXR5IGNo
YW5nZSBzbyBubyBuZXcgdGVzdHMuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwNzkxCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9DaHJv
bWl1bURhdGFPYmplY3QuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q2hyb21pdW1EYXRhT2JqZWN0
OjpDaHJvbWl1bURhdGFPYmplY3QpOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL1RoZW1l
Q2hyb21pdW1NYWMubW06Ci0gICAgICAgIChXZWJDb3JlOjp1cGRhdGVTdGF0ZXMpOgotICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1tOgotICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6dXBkYXRlQWN0aXZlU3RhdGUpOgotCi0yMDEwLTA2
LTE5ICBCZW4gTXVyZG9jaCAgPGJlbm1AZ29vZ2xlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBi
eSBQYXZlbCBGZWxkbWFuLgotCi0gICAgICAgIEZpeCBidWlsZCBicmVhayB3aXRoIGluc3BlY3Rv
ciBkaXNhYmxlZC4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwNzkwCi0KLSAgICAgICAgUmVwbGFjZSBhICNpbmNsdWRlIHdpdGggYSBmb3J3YXJkIGRl
Y2xhcmF0aW9uLgotCi0gICAgICAgIEZpeGluZyBhIGJ1aWxkIGJyZWFrIHNvIG5vIG5ldyB0ZXN0
cyByZXF1aXJlZC4KLQotICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmg6
IEZvcndhcmQgZGVjbGFyZSBJbnNwZWN0b3JWYWx1ZQotICAgICAgICAgICByYXRoZXIgdGhhbiAj
aW5jbHVkaW5nIGl0cyBoZWFkZXIgd2hpY2ggaGFzIGl0cyBjb250ZW50IGd1YXJkZWQKLSAgICAg
ICAgICAgb3V0LgotCi0yMDEwLTA2LTE5ICBaaGUgU3UgIDxzdXpoZUBjaHJvbWl1bS5vcmc+Ci0K
LSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgotCi0gICAgICAgIFtjaHJvbWl1bV1S
ZWZhY3RvciBpbnB1dCBtZXRob2QgcmVsYXRlZCBBUElzLgotICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA2MDgKLQotICAgICAgICBObyBuZXcgdGVzdHMg
YXJlIG5lZWRlZCwgYmVjYXVzZSB0aGVyZSBpcyBubyBuZXcgZnVuY3Rpb25hbGl0eS4KLQotICAg
ICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZvY3Vz
Q29udHJvbGxlcjo6c2V0Rm9jdXNlZE5vZGUpOgotCi0yMDEwLTA2LTE5ICBHZW9yZ2UgV3JpZ2h0
ICA8Z3dyaWdodEByaW0uY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEdlb3JnZSBTdGFpa29z
LgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDcy
MAotCi0gICAgICAgIE1ha2Ugc2V0V2FwSW5wdXRGb3JtYXQoKSBwdWJsaWMgYWdhaW4gYXMgQ1NT
U3R5bGVTZWxlY3Rvci5jcHAgY2FsbHMgdGhpcyB3aGVuIFdDU1MgaXMgZW5hYmxlZC4KLQotICAg
ICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgotICAgICAgICAoV2ViQ29yZTo6SFRNTElu
cHV0RWxlbWVudDo6ZGF0YSk6Ci0KLTIwMTAtMDYtMDIgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3
ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAg
W1F0XSBTdXBwb3J0IGV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdvcmxkKCkKLQotICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAwNzkKLQotICAgICAgICBn
ZXRPd25Qcm9wZXJ0eU5hbWVzKCkgY3Jhc2hlcyBpZiBQcm9wZXJ0eU5hbWVBcnJheSBpcyBzaXpl
IDAuIFRoaXMgY2hhbmdlIGFsbG93cwotICAgICAgICBodHRwL3Rlc3RzL3dvcmxkLXJldXNlLmh0
bWwgYW5kIGRpZENsZWFyV2luZG93T2JqZWN0Lmh0bWwgdG8gZmFpbCBpbnN0ZWFkIG9mIGNyYXNo
LgotCi0gICAgICAgICogV2ViQ29yZS5wcm86IEFkZCBxd2Vic2NyaXB0d29ybGQuKgotICAgICAg
ICAqIGJyaWRnZS9xdC9xdF9ydW50aW1lLmNwcDoKLSAgICAgICAgKEpTQzo6QmluZGluZ3M6OmNv
bnZlcnRWYWx1ZVRvUVZhcmlhbnQpOgotCi0yMDEwLTA2LTE5ICBUb255IEdlbnRpbGNvcmUgIDx0
b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0K
LSAgICAgICAgU29tZSB2ZXJ5IG1pbm9yIGNsZWFudXBzIGZvciBIVE1MNSBQYXJzZXIKLSAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNjM4Ci0KLSAgICAg
ICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ugbm8gbmV3IGZ1bmN0aW9uYWxpdHkuCi0KLSAgICAgICAg
KiBodG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6KTogTWFr
ZSBjdG9yIGV4cGxpY2l0LgotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oOgot
ICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6SW5zZXJ0aW9uUG9pbnRSZWNv
cmQ6Okluc2VydGlvblBvaW50UmVjb3JkKTogTWFrZSBjdG9yIGV4cGxpY2l0LgotICAgICAgICAq
IGh0bWwvSFRNTDVMZXhlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MTmFtZXM6OmlzRW5k
VGFnQnVmZmVyaW5nU3RhdGUpOiBVc2Ugc3dpdGNoIHRvIGdlbmVyYXRlIGFuIGVmZmljaWVudCB0
YWJsZSB3aXRoIHNpbmdsZSBicmFuY2guCi0gICAgICAgICogaHRtbC9IVE1MNVRva2VuLmg6Ci0g
ICAgICAgIChXZWJDb3JlOjpIVE1MNVRva2VuOjpmb3JjZVF1aXJrcyk6IEFkZCBjb25zdC4KLSAg
ICAgICAgKiBodG1sL0hUTUw1VHJlZUJ1aWxkZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1
VHJlZUJ1aWxkZXI6OmlzUGF1c2VkKTogQWRkIGNvbnN0LgotCi0yMDEwLTA2LTE4ICBBYXJvbiBC
b29kbWFuICA8YWFAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJlbW92ZSBXZWJLaXQ6OldlYkRv
Y3VtZW50Ojppc1hIVE1MRG9jdW1lbnQuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD00MDgxNQotCi0gICAgICAgICogZG9tL0RvY3VtZW50Lmg6IHJlbW92
ZSBpc1hIVE1MKCkgZ2V0dGVyLgotCi0yMDEwLTA2LTE5ICBBYXJvbiBCb29kbWFuICA8YWFAY2hy
b21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI2MTQ2Ni4KLSAg
ICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjE0NjYKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODE2Ci0KLSAgICAgICAgTGFu
ZGVkIHdyb25nIGNoYW5nZQotCi0gICAgICAgICogYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVs
bC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvd1NoZWxsOjppbml0Q29udGV4dElm
TmVlZGVkKToKLSAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmg6Ci0KLTIw
MTAtMDYtMTggIEFhcm9uIEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgV2Vi
S2l0IEFQSTogVW5kbyBzdGF0aWMgaG9va3MgaW50byBWOCB3aGVuIFdlYktpdCBpcyBzaHV0IGRv
d24uCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDgx
NgotCi0gICAgICAgICogYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVsbC5jcHA6Ci0gICAgICAg
IChXZWJDb3JlOjpWOERPTVdpbmRvd1NoZWxsOjppbml0Q29udGV4dElmTmVlZGVkKToKLSAgICAg
ICAgKFdlYkNvcmU6OlY4RE9NV2luZG93U2hlbGw6OmluaXRpYWxpemVWOElmTmVlZGVkKToKLSAg
ICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93U2hlbGw6OnVuaW5pdGlhbGl6ZVY4SWZOZWVkZWQp
OgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4RE9NV2luZG93U2hlbGwuaDoKLQotMjAxMC0wNi0x
OCAgSmVzc2llIEJlcmxpbiAgPGpiZXJsaW5Ad2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdl
ZCBieSBEYXJpbiBBZGxlci4KLQotICAgICAgICBCdWcgMTk1MDkgLSBEYXRhYmFzZSBUYWJsZXMg
aW4gdGhlIEluc3BlY3RvciBzaG91bGQgYmUgc29ydGFibGUKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTA5Ci0KLSAgICAgICAgKiBpbnNwZWN0b3Iv
ZnJvbnQtZW5kL1N0b3JhZ2VQYW5lbC5qczoKLSAgICAgICAgKFdlYkluc3BlY3Rvci5TdG9yYWdl
UGFuZWwucHJvdG90eXBlLmRhdGFHcmlkRm9yUmVzdWx0KToKLSAgICAgICAgTWFrZSBlYWNoIGNv
bHVtbiBpbiB0aGUgRGF0YUdyaWQgc29ydGFibGUuCi0gICAgICAgIChXZWJJbnNwZWN0b3IuU3Rv
cmFnZVBhbmVsLnByb3RvdHlwZS5fc29ydERhdGFHcmlkLmNvbXBhcmF0b3IpOgotICAgICAgICBN
YWtlIHN1cmUgdG8gc29ydCBudW1lcmljIGNvbHVtbnMgYnkgdGhlaXIgbnVtZXJpYyB2YWx1ZXMs
IGluc3RlYWQgb2YgbGV4aWNvZ3JhcGhpY2FsbHkuCi0gICAgICAgIChXZWJJbnNwZWN0b3IuU3Rv
cmFnZVBhbmVsLnByb3RvdHlwZS5fc29ydERhdGFHcmlkKToKLSAgICAgICAgU29ydCB0aGUgZW50
cmllcyBpbiB0aGUgRGF0YUdyaWQgYmFzZWQgb24gdGhlIHNlbGVjdGVkIGNvbHVtbi4KLQotMjAx
MC0wNi0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0gICAgICAg
IFJldmlld2VkIGJ5IE9saXZlciBIdW50LgotCi0gICAgICAgIE1vcmUgY2xhbmcrKyB3YXJuaW5n
IGZpeGVzLgotCi0gICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xpZW50TG9j
YWwuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRnJvbnRlbmRDbGllbnRMb2NhbDo6
cmVzdG9yZUF0dGFjaGVkV2luZG93SGVpZ2h0KToKLSAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvRm9udFBsYXRmb3JtRGF0YS5oOgotICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21h
Yy9XZWJMYXllci5tbToKLSAgICAgICAgKC1bQ0FMYXllciBfZGVzY3JpcHRpb25XaXRoUHJlZml4
Ol0pOgotCi0yMDEwLTA2LTE4ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgYnVpbGQgZml4LgotCi0gICAgICAgICogV2ViQ29y
ZS5neXAvV2ViQ29yZS5neXA6IE1vZGlmaWVkIGluY2x1c2lvbiBydWxlIGluIHRvIGFjdHVhbGx5
IGFkZCBXZWJTeXN0ZW1JbnRlcmZhY2UubW0uCi0KLTIwMTAtMDYtMTggIERpbWl0cmkgR2xhemtv
diAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBidWlsZCBm
aXguCi0KLSAgICAgICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDogUmVuYW1lZCBXZWJTeXN0
ZW1JbnRlcmZhY2UubSB0byBXZWJTeXN0ZW1JbnRlcmZhY2UubW0uCi0KLTIwMTAtMDYtMTggIEFu
ZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBi
eSBTYW0gV2VpbmlnLgotCi0gICAgICAgIE1ha2UgV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIGEg
QysrIG9ubHkgaGVhZGVyCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD00MDg2NwotCi0gICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRl
cmZhY2UuaDoKLQotMjAxMC0wNi0xOCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21pdW0u
b3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgQ29udmVy
dCBjb2x1bW4gc3BhbiBmcm9tIGFuIHVuc2lnbmVkIHNob3J0IHR5cGUgdG8gYW4gdW5zaWduZWQg
aW50Ci0gICAgICAgIHR5cGUuIEZpeGVzIGEgZGl2aWRlLWJ5LXplcm8gY3Jhc2ggYXJpc2luZyBm
cm9tIHVzaW5nIGEgemVybyBjb2xzcGFuCi0gICAgICAgIHZhbHVlIGNvbWluZyBmcm9tIGEgbmFy
cm93IGNhc3Qgb2YgYW4gaW50IHRvIGFuIHVuc2lnbmVkIHNob3J0LgotICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4MTIKLQotICAgICAgICBUZXN0OiBm
YXN0L3RhYmxlL3plcm8tY29sc3Bhbi1jcmFzaC5odG1sCi0KLSAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyVGFibGUuaDogQ2hhbmdlIHNwYW4gZnJvbSB1bnNpZ25lZCBzaG9ydCB0byB1bnNpZ25l
ZCBpbnQuCi0gICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHA6IEZpeCBh
IGNvbXBpbGVyIHdhcm5pbmcgd2l0aCBjb21wYXJpbmcKLSAgICAgICAgICB1bnNpZ25lZCBpbnQg
d2l0aCBzaWduZWQgaW50LiBWYWx1ZSBvZiBhbiB1bnNpZ25lZCBpbnQgaGVyZSBjYW5ub3QgYmUK
LSAgICAgICAgICBncmVhdGVyIHRoYW4gbWF4aW11bSBwb3NpdGl2ZSB2YWx1ZSBvZiBhIHNpZ25l
ZCBpbnQuCi0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVNlY3Rpb246OmFkZENlbGwpOgot
Ci0yMDEwLTA2LTE4ICBBbmFudGggSmFzdHkgIDxleHQtYW5hbnRoLmphc3R5QG5va2lhLmNvbT4K
LQotICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAgICBbUXRdIFRl
eHQgc3BhY2luZyBtaXNjYWxjdWxhdGlvbiB3aGVuIHVzaW5nIHdvcmRTcGFjaW5nLgotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA0ODMKLQotICAgICAg
ICBSZW1vdmVkIHdvcmRTcGFjaW5nIGNvbXBlbnNhdGlvbiBpbiBGb250UXQgd2hpdGVzcGFjZSB3
aWR0aAotICAgICAgICBjYWxjdWxhdGlvbi4gVGhlIFFGb250TWV0cmljczo6d2lkdGgoKSBvdmVy
bG9hZCB0aGF0IHRha2VzCi0gICAgICAgIGEgY2hhcmFjdGVyIGRvZXMgbm90IHRha2UgUUZvbnQn
cyB3b3JkIHNwYWNpbmcgaW50byBhY2NvdW50LgotCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvcXQvRm9udFF0LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmZsb2F0V2lkdGhGb3JD
b21wbGV4VGV4dCk6Ci0KLTIwMTAtMDYtMTggIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFw
cGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KLQotICAgICAgICBH
ZXQgcmlkIG9mIFBsdWdpbkRhdGFNYWMubW0gYW5kIHVzZSB0aGUgcGx1Zy1pbiBzdHJhdGVneSBp
bnN0ZWFkCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00
MDg2MAotCi0gICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgotICAg
ICAgICAqIHBhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oOgotICAgICAgICAqIHBsdWdpbnMv
UGx1Z2luRGF0YS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpQbHVnaW5EYXRhOjpyZWZyZXNoKToK
LSAgICAgICAgKFdlYkNvcmU6OlBsdWdpbkRhdGE6OmluaXRQbHVnaW5zKToKLSAgICAgICAgKiBw
bHVnaW5zL1BsdWdpblN0cmF0ZWd5Lmg6Ci0gICAgICAgICogcGx1Z2lucy9tYWMvUGx1Z2luRGF0
YU1hYy5tbTogUmVtb3ZlZC4KLQotMjAxMC0wNi0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJz
Y2FAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCi0KLSAg
ICAgICAgRml4IHNvbWUgKG5vdCBhbGwpIGNsYW5nKysgd2FybmluZ3MuCi0KLSAgICAgICAgKiBk
b20vUG9zaXRpb24uaDoKLSAgICAgICAgKFdlYkNvcmU6Omxhc3RPZmZzZXRJbk5vZGUpOgotICAg
ICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgotICAgICAgICAoV2ViQ29y
ZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmRlbGV0ZUluc2lnbmlmaWNhbnRUZXh0KToKLSAgICAg
ICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHA6Ci0gICAgICAgIChXZWJD
b3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclJlcXVlc3QpOgotICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL21hYy9Db21wbGV4VGV4dENvbnRyb2xsZXIuY3BwOgotICAgICAgICAo
V2ViQ29yZTo6Q29tcGxleFRleHRDb250cm9sbGVyOjpvZmZzZXRGb3JQb3NpdGlvbik6Ci0gICAg
ICAgIChXZWJDb3JlOjpDb21wbGV4VGV4dENvbnRyb2xsZXI6OmNvbGxlY3RDb21wbGV4VGV4dFJ1
bnMpOgotICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwOgot
ICAgICAgICAoV2ViQ29yZTo6cHJvdGVjdGlvblNwYWNlTWFwS2V5RnJvbVVSTCk6Ci0gICAgICAg
ICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDoKLQotMjAxMC0w
Ni0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCi0KLSAgICAgICAgQWRkIHN0dWJiZWQgb3V0IFdlYlBs
YXRmb3JtU3RyYXRlZ2llcyBjbGFzcyB0byBXZWJLaXQuCi0gICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1MQotCi0gICAgICAgICogV2ViQ29yZS5iYXNl
LmV4cDoKLSAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOgotICAgICAg
ICAqIHBsYXRmb3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5oOgotICAgICAgICAoV2ViQ29yZTo6UGxh
dGZvcm1TdHJhdGVnaWVzOjp+UGxhdGZvcm1TdHJhdGVnaWVzKToKLQotMjAxMC0wNi0xOCAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgotCi0gICAgICAgIEZpeCBidWlsZCBlcnJvcnMgd2hlbiBidWlsZGluZyB3
aXRoIGNsYW5nKysuCi0KLSAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNo
aXZlTWFjLm1tOgotICAgICAgICBNb3ZlIHRoZSBjb25zdCBxdWFsaWZpZXIgdG8gdGhlIHJpZ2h0
IHBsYWNlLgotCi0gICAgICAgICogcGFnZS9FZGl0b3JDbGllbnQuaDoKLSAgICAgICAgKiBwbGF0
Zm9ybS9QYXN0ZWJvYXJkLmg6Ci0gICAgICAgIFVzZSBAY2xhc3Mgd2hlbiBmb3J3YXJkIGRlY2xh
cmluZyBPYmplY3RpdmUtQyBjbGFzc2VzIGluIE9iamVjdGl2ZS1DLgotCi0yMDEwLTA2LTE4ICBB
bGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5
IEdlb2ZmIEdhcmVuLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD00MDg1MgotICAgICAgICA8cmRhcjovL3Byb2JsZW0vODEwNTQ5OD4gTGltaXQgc2lt
dWx0YW5lb3VzIEROUyBwcmVmZXRjaCByZXF1ZXN0IG51bWJlciAoNDA4NTIpCi0KLSAgICAgICAg
Tm8gY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHksIHNvIG5vIHRlc3RzLgotCi0gICAgICAgIFdlIHN0
aWxsIHF1ZXVlIHVwIHRvIDY0IG5hbWVzLCBidXQgb25seSBtYWtlIHVwIHRvIDggcmVxdWVzdHMg
YXQgb25jZS4gSWYgdGhlcmUgYXJlIG5hbWVzCi0gICAgICAgIHJlbWFpbmluZyBpbiBxdWV1ZSwg
d2UgcmV0cnkgYWZ0ZXIgYSBzaG9ydCB0aW1lb3V0ICh3aGljaCBpcyBlYXNpZXIgdGhhbiBwb3N0
aW5nCi0gICAgICAgIG5vdGlmaWNhdGlvbnMgZnJvbSBjbGllbnQgY2FsbGJhY2spLgotCi0gICAg
ICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9ETlNDRk5ldC5jcHA6Ci0gICAgICAgIChXZWJDb3Jl
OjpETlNSZXNvbHZlUXVldWU6OmFkZCk6Ci0gICAgICAgIChXZWJDb3JlOjpETlNSZXNvbHZlUXVl
dWU6OmZpcmVkKToKLQotMjAxMC0wNi0xOCAgWmhlbnlhbyBNbyAgPHptb0Bnb29nbGUuY29tPgot
Ci0gICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KLQotICAgICAgICBXZWJHTCBkZW1v
cyBzaG93IGJhZCBmbGlja2VyCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zODU2MAotCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0dyYXBo
aWNzQ29udGV4dDNETWFjLm1tOgotICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0Q6
OnByZXBhcmVUZXh0dXJlKTogTW92ZSBlbnN1cmVDb250ZXh0KCkgb3V0IG9mIGlmLWJsb2NrIHNv
IGl0J3MgYWx3YXlzIGV4ZWN1dGVkLgotCi0yMDEwLTA2LTE4ICBBbmRlcnMgQ2FybHNzb24gIDxh
bmRlcnNjYUBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KLQot
ICAgICAgICBBZGQgUGxhdGZvcm1TdHJhdGVnaWVzIGFuZCBQbHVnaW5TdHJhdGVneSBjbGFzc2Vz
LgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NTAK
LQotICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAg
KiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOiBBZGRlZC4KLSAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtU3RyYXRlZ2llczo6flBsYXRmb3JtU3RyYXRlZ2llcyk6Ci0gICAgICAgIChX
ZWJDb3JlOjpwbGF0Zm9ybVN0cmF0ZWdpZXMpOgotICAgICAgICAoV2ViQ29yZTo6c2V0UGxhdGZv
cm1TdHJhdGVnaWVzKToKLSAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaDog
QWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVN0cmF0ZWdpZXM6OnBsdWdpblN0cmF0
ZWd5KToKLSAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2llczo6UGxhdGZvcm1TdHJh
dGVnaWVzKToKLSAgICAgICAgKiBwbHVnaW5zL1BsdWdpbkRhdGEuY3BwOgotICAgICAgICAqIHBs
dWdpbnMvUGx1Z2luU3RyYXRlZ3kuaDogQWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpQbHVnaW5T
dHJhdGVneTo6flBsdWdpblN0cmF0ZWd5KToKLQotMjAxMC0wNi0xOCAgTWFydGluIFJvYmluc29u
ICA8bXJvYmluc29uQGlnYWxpYS5jb20+Ci0KLSAgICAgICAgVW5yZXZpZXdlZC4KLQotICAgICAg
ICBGaXggdGhlIEdUSysgYnVpbGQgYWZ0ZXIgcjYxNDEzIGFuZCA2MTM3OS4KLQotICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdPYmplY3QucG06Ci0gICAgICAgIFByb2R1
Y2UgYSBnX3ZhbHVlX3NldCB0aGF0IHVzZXMgZ2V0dGVyRXhwcmVzc2lvblByZWZpeCBpbnN0ZWFk
IG9mIHRoZSByYXcgZ2V0dGVyLgotICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2Jq
ZWN0L1dlYktpdERPTVRlc3RPYmouY3BwOgotICAgICAgICAod2Via2l0X2RvbV90ZXN0X29ial9n
ZXRfcHJvcGVydHkpOiBVcGRhdGUgZXhwZWN0ZWQgdGVzdCByZXN1bHRzLgotCi0yMDEwLTA2LTE4
ICBMZWFuZHJvIFBlcmVpcmEgIDxsZWFuZHJvQHByb2Z1c2lvbi5tb2JpPgotCi0gICAgICAgIFtF
RkxdIFVucmV2aWV3ZWQgYnVpbGQgZml4LgotCi0gICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFk
ZCBpbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2ludC5jcHAuCi0KLTIwMTAtMDYtMTggIEFuZHkgRXN0
ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgotCi0gICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IFNhbSBX
ZWluaWcuCi0KLSAgICAgICAgVXBkYXRlIGNvcHlyaWdodCBoZWFkZXIuCi0KLSAgICAgICAgKiBo
dG1sL0hUTUxMaW5rRWxlbWVudC5oOgotCi0yMDEwLTA2LTE3ICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgotCi0gICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS84MDkxMzg1PiBQcmV2ZW50IGEgY3Jhc2ggaW4gV2ViQ29yZSB3
aGVuIHJlbW92aW5nIGEgc3R5bGVzaGVldCBsaW5rIGVsZW1lbnQgaW4KLSAgICAgICAgaW4gYSBs
aXN0ZW5lciB0byBpdHMgYmVmb3JlbG9hZCBldmVudC4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzQyCi0gICAgICAgIAotICAgICAgICBQb3N0cG9u
ZSBsb2FkaW5nIG9mIGxpbmsgZWxlbWVudHMgdW50aWwgYWZ0ZXIgdGhleSBoYXZlIGJlZW4gaW5z
ZXJ0ZWQgaW50byB0aGUgRE9NIGFuZAotICAgICAgICBhdHRhY2hlZC4gVGhpcyBwcmV2ZW50cyBE
T00gbXV0YXRpb25zIHRyaWdnZXJlZCBieSBiZWZvcmVsb2FkIGhhbmRsZXJzIGZyb20gZmlyaW5n
IGluIHRoZQotICAgICAgICBtaWRzdCBvZiBET00gaW5zZXJ0aW9uLCB3aGljaCBjYW4gbGVhZCB0
byBhc3NlcnRpb24gZmFpbHVyZXMgYW5kIGNyYXNoZXMuCi0KLSAgICAgICAgVGVzdDogZmFzdC9k
b20vYmVmb3JlbG9hZC9yZW1vdmUtbGluay1pbi1iZWZvcmVsb2FkLWxpc3RlbmVyLmh0bWwKLQot
ICAgICAgICAqIGh0bWwvSFRNTExpbmtFbGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhU
TUxMaW5rRWxlbWVudDo6SFRNTExpbmtFbGVtZW50KTogSW5pdGlhbGl6ZSBtX3Nob3VsZFByb2Nl
c3NBZnRlckF0dGFjaCB0byBmYWxzZS4KLSAgICAgICAgKFdlYkNvcmU6OkhUTUxMaW5rRWxlbWVu
dDo6cHJvY2Vzc0NhbGxiYWNrKTogQWRkIGEgc3RhdGljIGNhbGxiYWNrIGZ1bmN0aW9uIHdoaWNo
IGNhbGxzCi0gICAgICAgIEhUTUxMaW5rRWxlbWVudDo6cHJvY2VzcygpLgotICAgICAgICAoV2Vi
Q29yZTo6SFRNTExpbmtFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCk6IEluc3RlYWQgb2Yg
Y2FsbGluZyBwcm9jZXNzKCkgZGlyZWN0bHksIHNldAotICAgICAgICBtX3Nob3VsZFByb2Nlc3NB
ZnRlckF0dGFjaCB0byB0cnVlIHRvIGluZGljYXRlIHRoYXQgcHJvY2VzcygpIHNob3VsZCBiZSBj
YWxsZWQgYWZ0ZXIgYXR0YWNoKCkuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MTGlua0VsZW1lbnQ6
OnJlbW92ZWRGcm9tRG9jdW1lbnQpOiBTZXQgbV9zaG91bGRQcm9jZXNzQWZ0ZXJBdHRhY2ggdG8g
ZmFsc2UuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MTGlua0VsZW1lbnQ6OmF0dGFjaCk6IElmIG1f
c2hvdWxkUHJvY2Vzc0FmdGVyQXR0YWNoIGlzIHRydWUsIHJlZ2lzdGVyCi0gICAgICAgIEhUTUxM
aW5rRWxlbWVudDo6cHJvY2Vzc0NhbGxiYWNrKCkgYXMgYSBwb3N0LWF0dGFjaCBjYWxsYmFjay4K
LSAgICAgICAgKiBodG1sL0hUTUxMaW5rRWxlbWVudC5oOiBBZGQgbV9zaG91bGRQcm9jZXNzQWZ0
ZXJBdHRhY2guCi0gICAgICAgIChXZWJDb3JlOjpIVE1MTGlua0VsZW1lbnQ6OmNhbkxhenlBdHRh
Y2gpOiBPdmVycmlkZSBjYW5MYXp5QXR0YWNoKCkgdG8gcmV0dXJuIGZhbHNlIHRvCi0gICAgICAg
IGluZGljYXRlIHRoYXQgYSBmdWxsIGF0dGFjaCBzaG91bGQgYmUgcGVyZm9ybWVkLiAgVGhpcyBl
bnN1cmVzIHRoZSBwb3N0LWF0dGFjaCBjYWxsYmFja3MgYXJlCi0gICAgICAgIGZpcmVkLgotCi0y
MDEwLTA2LTE4ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+Ci0KLSAgICAg
ICAgVW5yZXZpZXdlZC4gV2luZG93cyBidWlsZCBmaXguCi0KLSAgICAgICAgQVg6IHByZXNlbnRh
dGlvbmFsIHJvbGUgbmVlZHMgdG8gYmUgaW5oZXJpdGVkIGJ5IHJlcXVpcmVkIGVsZW1lbnRzCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDEzMgotCi0g
ICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcDoKLSAg
ICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmluaGVyaXRzUHJlc2Vu
dGF0aW9uYWxSb2xlKToKLQotMjAxMC0wNi0xOCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hA
YXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhdmlkIEtpbHplci4KLQotICAgICAg
ICBBWDogcHJlc2VudGF0aW9uYWwgcm9sZSBuZWVkcyB0byBiZSBpbmhlcml0ZWQgYnkgcmVxdWly
ZWQgZWxlbWVudHMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwMTMyCi0KLSAgICAgICAgVGVzdDogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvaW5o
ZXJpdGVkLXByZXNlbnRhdGlvbmFsLWxpc3RzLmh0bWwKLQotICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpBY2Nl
c3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY2Nlc3NpYmlsaXR5SXNJZ25vcmVkKToKLSAgICAgICAg
KFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmluaGVyaXRzUHJlc2VudGF0aW9u
YWxSb2xlKToKLSAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmpl
Y3QuaDoKLSAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6Om5vZGUp
OgotCi0yMDEwLTA2LTE4ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KLQotICAgICAg
ICBGaXggR1RLIGJ1aWxkIGFmdGVyIHJlZmxlY3Rpb24gY2hhbmdlLgotCi0gICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbTogQ2hhbmdlZCBjb2RlCi0gICAg
ICAgIHRoYXQgZW1pdHMgc2V0dGVycyB0byBjb252ZXkgdGhlIGNvcnJlY3QgdHlwZSBvZiB0aGUg
YXR0cmlidXRlLgotICAgICAgICBUaGUgR09iamVjdCBjb2RlIGdlbmVyYXRvciB0YWtlcyBhIGRp
ZmZlcmVudCBhcHByb2FjaCB0byBhdHRyaWJ1dGVzCi0gICAgICAgIHRoYW4gdGhlIG90aGVycywg
c28gaXQncyBoYWNrZWQgYSBiaXQgdG8gbWFrZSBpdCBtb3JlIGxpa2UgdGhlbS4KLSAgICAgICAg
V2Ugc2hvdWxkIGZpbmQgYSB3YXkgdG8gc2hhcmUgbW9yZSBjb2RlIGJldHdlZW4gdGhlIGRpZmZl
cmVudCBnZW5lcmF0b3JzLgotCi0gICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmpl
Y3QvV2ViS2l0RE9NVGVzdE9iai5jcHA6Ci0gICAgICAgIFVwZGF0ZWQgdG8gZXhwZWN0IGNvcnJl
Y3QgcmVzdWx0cy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0
b20uY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVJlc2l6ZU9wdGlvbnMpOgorICAgICAg
ICAoV2ViQ29yZTo6SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06IENoYW5nZWQgdG8gY29udmVy
dCBTdHJpbmdzIHRvIEpTU3RyaW5ncyBjb3JyZWN0bHkgaW4gY2FsbGJhY2tzLgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6IENoYW5nZWQgYmlu
ZGluZ3MtdGVzdCBmb3IgYWJvdmUuCisgICAgICAgIChXZWJDb3JlOjpKU1Rlc3RDYWxsYmFjazo6
Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0pOgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0YXJ0KTogQ2xp
ZW50IG9mIHRoaXMgY2xhc3Mgbm8gbG9uZ2VyIGRvZXMgYW55IHJlZmNvdW50aW5nCisgICAgICAg
IChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZCk6IFJl
ZmFjdG9yZWQuCisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6cmVzaXplQ29t
cGxldGUpOiBBZGRlZCBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNp
emVyOjpyZXNpemVFcnJvcik6IERpdHRvLgorICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm86
OkNhbGxiYWNrSW5mbyk6IE5vdyBvbmx5IHN0b3JlcyBuZWNlc3NldGllcy4KKyAgICAgICAgKiBo
dG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlRWxl
bWVudDo6d2Via2l0R2V0SW1hZ2UpOiBJbXBsZW1lbnRhdGlvbiBvZiBKUyBmdW5jdGlvbi4KKyAg
ICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbWFn
ZUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5o
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6On5J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjazo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgICogaHRt
bC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1s
L0ltYWdlUmVzaXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZVJlc2l6ZXJU
aHJlYWQ6OnN0YXJ0KTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXpl
clRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKTogIFJlZmFjdG9yZWQuCisgICAgICAgICogaHRt
bC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDogUmVmYWN0b3JlZC4KKyAgICAgICAgKiBodG1sL1Jlc2l6
ZU9wdGlvbnMuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpSZXNpemVPcHRpb25zKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OnNldEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpoZWln
aHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJlc3Npb25MZXZl
bCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lvbkxldmVsKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9uKToKKyAgICAg
ICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZXNp
emVPcHRpb25zOjopOgogCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hy
b21pdW0ub3JnPgogCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcCBiL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IDkwNGVhNTUuLmYwNmQ0ZWIgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMuY3BwCkBAIC0xODEsNiArMTgxLDggQEAKICNpbmNsdWRlICJKU0lEQlJlcXVlc3QuY3BwIgog
I2luY2x1ZGUgIkpTSURCU3VjY2Vzc0V2ZW50LmNwcCIKICNpbmNsdWRlICJKU0ltYWdlRGF0YS5j
cHAiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCIKKyNpbmNsdWRl
ICJKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNJbmRleGVk
RGF0YWJhc2VSZXF1ZXN0LmNwcCIKICNpbmNsdWRlICJKU0phdmFTY3JpcHRDYWxsRnJhbWUuY3Bw
IgogI2luY2x1ZGUgIkpTS2V5Ym9hcmRFdmVudC5jcHAiCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggYmYw
OWEyMi4uMzlmNmE0NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisr
KyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMjI0LDYgKzIyNCw4IEBAIERPTV9D
TEFTU0VTID0gXAogICAgIElEQlJlcXVlc3QgXAogICAgIElEQlN1Y2Nlc3NFdmVudCBcCiAgICAg
SW1hZ2VEYXRhIFwKKyAgICBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgXAorICAgIEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2sgXAogICAgIEluZGV4ZWREYXRhYmFzZVJlcXVlc3QgXAogICAg
IEluamVjdGVkU2NyaXB0SG9zdCBcCiAgICAgSW5zcGVjdG9yQmFja2VuZCBcCmRpZmYgLS1naXQg
YS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQppbmRleCAz
NzgxOTI3Li41MjRmNTNkIDEwMDY0NAotLS0gYS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCisrKyBi
L1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAgLTI3Niw2ICsyNzYsOCBAQCBJRExfQklORElOR1Mg
Kz0gXAogCVdlYkNvcmUvaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9odG1s
L0hUTUxWaWRlb0VsZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmlkbCBcCisJ
V2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKwlXZWJDb3JlL2h0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBcCiAJV2ViQ29yZS9odG1sL1RleHRN
ZXRyaWNzLmlkbCBcCiAJV2ViQ29yZS9odG1sL1ZhbGlkaXR5U3RhdGUuaWRsIFwKIAlXZWJDb3Jl
L2h0bWwvVm9pZENhbGxiYWNrLmlkbCBcCkBAIC00NTYsNiArNDU4LDcgQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5j
cHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNw
cCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBc
CisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwKIAlX
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAgXAogCVdlYkNv
cmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmggXAogCVdlYkNvcmUvYmlu
ZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgXApAQCAtMTI3MCw2ICsxMjcz
LDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3VyY2VE
b2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9odG1s
L0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5o
IFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogCVdlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXApAQCAtMTI3
Nyw2ICsxMjgyLDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvTWVkaWFF
cnJvci5oIFwKIAlXZWJDb3JlL2h0bWwvUHJlbG9hZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3JlL2h0
bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIFwK
KwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5oIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJhbmdl
LmNwcCBcCiAJV2ViQ29yZS9odG1sL1N0ZXBSYW5nZS5oIFwKIAlXZWJDb3JlL2h0bWwvVGV4dE1l
dHJpY3MuaCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCmluZGV4IDZlNGE0OTIuLmRjYmZmODAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xODgsNiArMTg4LDggQEAK
ICAgICAgICAgICAgICdodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdo
dG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5p
ZGwnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCcs
CisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCcsCiAgICAg
ICAgICAgICAnaHRtbC9NZWRpYUVycm9yLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UZXh0TWV0
cmljcy5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvVGltZVJhbmdlcy5pZGwnLApAQCAtNTczLDYg
KzU3NSw3IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3Vz
dG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50
Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVu
dEN1c3RvbS5jcHAnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVu
dEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVu
dEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVu
dEN1c3RvbS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50
Q3VzdG9tLmNwcCcsCkBAIC0xNjYwLDYgKzE2NjMsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRN
TFZpZXdTb3VyY2VEb2N1bWVudC5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5jcHAn
LAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmgnLAorICAgICAgICAgICAgJ2h0bWwvSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5oJywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5oJywKICAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVh
ZC5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgnLAogICAgICAg
ICAgICAgJ2h0bWwvTGFiZWxzTm9kZUxpc3QuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2Vi
Q29yZS5wcmkgYi9XZWJDb3JlL1dlYkNvcmUucHJpCmluZGV4IDY2ZTc3Y2EuLmVhZjE5ZjkgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcmkKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnByaQpA
QCAtNDI0LDYgKzQyNCw4IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgaHRtbC9IVE1MVUxpc3RF
bGVtZW50LmlkbCBcCiAgICAgaHRtbC9IVE1MVmlkZW9FbGVtZW50LmlkbCBcCiAgICAgaHRtbC9J
bWFnZURhdGEuaWRsIFwKKyAgICBodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwK
KyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogICAgIGh0bWwvTWVk
aWFFcnJvci5pZGwgXAogICAgIGh0bWwvVGV4dE1ldHJpY3MuaWRsIFwKICAgICBodG1sL1RpbWVS
YW5nZXMuaWRsIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dl
YkNvcmUucHJvCmluZGV4IDUwOTFjMmIuLjMzNWRmNmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2Vi
Q29yZS5wcm8KKysrIGIvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMzE1LDYgKzMxNSw3IEBAIFNP
VVJDRVMgKz0gXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAg
XAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAgXAogICAg
IGJpbmRpbmdzL2pzL0pTSFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwIFwKKyAgICBiaW5kaW5n
cy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hU
TUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RF
bGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMvSlNIVE1MT3B0aW9uc0NvbGxlY3Rp
b25DdXN0b20uY3BwIFwKQEAgLTcwNCw2ICs3MDUsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1s
L0ltYWdlUmVzaXplclRocmVhZC5jcHAgXAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuY3BwIFwK
ICAgICBodG1sL1ByZWxvYWRTY2FubmVyLmNwcCBcCisgICAgaHRtbC9SZXNpemVPcHRpb25zLmNw
cCBcCiAgICAgaHRtbC9TdGVwUmFuZ2UuY3BwIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuY3Bw
IFwKICAgICBpbnNwZWN0b3IvQ29uc29sZU1lc3NhZ2UuY3BwIFwKQEAgLTE0NDEsOSArMTQ0Mywx
MiBAQCBIRUFERVJTICs9IFwKICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaCBcCiAgICAgaHRt
bC9IVE1MVmlld1NvdXJjZURvY3VtZW50LmggXAogICAgIGh0bWwvSW1hZ2VEYXRhLmggXAorICAg
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oIFwKKyAgICBodG1sL0ltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5oIFwKICAgICBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oIFwKICAg
ICBodG1sL0xhYmVsc05vZGVMaXN0LmggXAogICAgIGh0bWwvUHJlbG9hZFNjYW5uZXIuaCBcCisg
ICAgaHRtbC9SZXNpemVPcHRpb25zLmggXAogICAgIGh0bWwvU3RlcFJhbmdlLmggXAogICAgIGh0
bWwvVGltZVJhbmdlcy5oIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaCBcCmRpZmYgLS1naXQg
YS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvV2ViQ29yZS9XZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvagppbmRleCBjZmY1MmI3Li45ZGYyODIxIDEwMDY0NAotLS0g
YS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTM3NzA1LDYgKzM3NzA1LDE0IEBACiAJCQkJ
Pg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZp
bGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRo
PSIuLlxodG1sXEltYWdlUmVzaXplclRocmVhZC5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpA
QCAtMzc3MzMsNiArMzc3NDEsMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQor
CQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmNwcCINCisJCQkJPg0KKwkJ
CTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0
aW9ucy5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0
aD0iLi5caHRtbFxTdGVwUmFuZ2UuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTQwMTcy
LDcgKzQwMTg4LDkgQEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJPC9GaWxlPg0K
IAkJCQk8RmlsZQ0KKwogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTEVt
YmVkRWxlbWVudEN1c3RvbS5jcHAiDQorCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmlndXJhdGlv
bg0KIAkJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIg0KQEAgLTQwNDMyLDYgKzQwNDUwLDU5IEBACiAJ
CQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCisKKwkJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20u
Y3BwIg0KKwkJCQkJPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVi
dWd8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJ
CQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJ
CQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJ
CQlOYW1lPSJSZWxlYXNlfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0K
KwkJCQkJCT4NCisJCQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0K
KwkJCQkJCS8+DQorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1
cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWdfSW50ZXJuYWx8V2luMzIiDQorCQkJCQkJRXhjbHVk
ZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9
IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4z
MiINCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRv
b2wNCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9
IlJlbGVhc2VfQ2Fpcm98V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQor
CQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQor
CQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xD
b21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJ
CTwvRmlsZT4NCisJCQkJPEZpbGUNCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNc
SlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCINCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmln
dXJhdGlvbg0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXgg
MjIyMjFjMy4uMjdkMzliZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTM1MjAsNiArMzUyMCwxNSBAQAogCQlCMDE0OUU3RTExQTRCMjE1MDAxOTZBN0Ig
LyogQXN5bmNJbWFnZVJlc2l6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXpl
ci5oICovOyB9OwogCQlCMDE0OUU3RjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhy
ZWFkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIw
MTQ5RTdCMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovOyB9Owog
CQlCMDE0OUU4MDExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QzExQTRCMjE1
MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi87IH07CisJCUIwNEU2QkYyMTFDNkYw
RTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0
aW9ucy5oICovOyB9OworCQlCMDRFNkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMDE0QTA0QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRB
MTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjA0RjU5RkYxMUM2QUZE
NjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAg
LyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLzsgfTsKKwkJQjBBNzE1MUIxMUNDMjRF
RTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9w
dGlvbnMuY3BwICovOyB9OworCQlCMEE3MTVCNzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNDExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmggKi87IH07CisJCUIwQTcxNUI5MTFEMDQzMUUwMDNDMzM3MyAvKiBK
U0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFn
ZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTVCQTExRDA0MzFFMDAz
QzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAv
KiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyB9OwogCQlCMjAxMTEwNzBBQjc3
NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdB
RWxlbWVudC5jcHAgKi87IH07CiAJCUIyMDExMTA4MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5oICovOyB9OwogCQlCMjEx
MjdBNjBCMzE4Njc3MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIxMTI3QTUwQjMxODY3NzAwMDlC
RTUzIC8qIEpTU1ZHUE9EVHlwZVdyYXBwZXIuaCAqLzsgfTsKQEAgLTg4NzUsNiArODg4NCwxNyBA
QAogCQlCMDE0OUU3QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXN5bmNJbWFnZVJlc2l6ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdl
UmVzaXplclRocmVhZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJ
bWFnZVJlc2l6ZXJUaHJlYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0
OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRB
MDRDMTFBQjFFQTAwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4
MyAvKiBSZXNpemVPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJl
c2l6ZU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RjU5RkQxMUM2
QUZENjAwMEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyog
UmVzaXplT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBS
ZXNpemVPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1Nzkx
MUQwMUIyMTAwM0MzMzczIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3
MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI0MTFEMDQz
MUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0lt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NW
R0FFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMTEyN0E1MEIzMTg2NzcwMDA5
QkU1MyAvKiBKU1NWR1BPRFR5cGVXcmFwcGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1NWR1BPRFR5cGVXcmFwcGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0xMzc0MCw2ICsxMzc2MCwxMCBAQAogCQkJCUE3Nzk3OTEzMEQ2QjlEMEMwMDM4NTFCOSAv
KiBJbWFnZURhdGEuY3BwICovLAogCQkJCUE3Nzk3OTE0MEQ2QjlEMEMwMDM4NTFCOSAvKiBJbWFn
ZURhdGEuaCAqLywKIAkJCQlBNzc5NzkxNTBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmlk
bCAqLywKKwkJCQlCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oICovLAorCQkJCUIwQTcxNTc5MTFEMDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmlkbCAqLywKKwkJCQlCMDE0QTA0QzExQUIxRUEwMDAxOTZBN0IgLyog
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1N0ExMUQwMUIyMTAw
M0MzMzczIC8qIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgKi8sCiAJCQkJQjAxNDlF
N0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAgKi8sCiAJCQkJQjAx
NDlFN0MxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oICovLAogCQkJCUE0
NTZGQTI0MTFBRDRBODMwMDIwQjQyMCAvKiBMYWJlbHNOb2RlTGlzdC5jcHAgKi8sCkBAIC0xMzc1
MCw2ICsxMzc3NCw4IEBACiAJCQkJRTQ0NjEzOUMwQ0Q2MzMxMDAwRkFEQTc1IC8qIE1lZGlhRXJy
b3IuaWRsICovLAogCQkJCUU0RDRBQkUwMEQ3NTQyRjAwMEY5Njg2OSAvKiBQcmVsb2FkU2Nhbm5l
ci5jcHAgKi8sCiAJCQkJRTRENEFCRTEwRDc1NDJGMTAwRjk2ODY5IC8qIFByZWxvYWRTY2FubmVy
LmggKi8sCisJCQkJQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3Bw
ICovLAorCQkJCUIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggKi8s
CiAJCQkJQTVBRkIzNEQxMTUxNTFBNzAwQjA0NUNCIC8qIFN0ZXBSYW5nZS5jcHAgKi8sCiAJCQkJ
QTVBRkIzNEUxMTUxNTFBNzAwQjA0NUNCIC8qIFN0ZXBSYW5nZS5oICovLAogCQkJCUJDRUY0NUU4
MEU2ODc3NjcwMDFDMTI4NyAvKiBUZXh0TWV0cmljcy5oICovLApAQCAtMTM5OTEsNiArMTQwMTcs
MTAgQEAKIAkJCQlFNDQ2MTQwRjBDRDY4MjY5MDBGQURBNzUgLyogSlNIVE1MVmlkZW9FbGVtZW50
LmggKi8sCiAJCQkJQTc3OTc5MjQwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VEYXRhLmNwcCAq
LywKIAkJCQlBNzc5NzkyNTBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuaCAqLywKKwkJ
CQlCMEE3MTVCMzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmNwcCAqLywKKwkJCQlCMEE3MTVCNDExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmggKi8sCisJCQkJQjBBNzE1QjUxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLywKKwkJCQlCMEE3MTVCNjExRDA0MzFFMDAz
QzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLywKIAkJCQk0OUVFQ0VG
ODEwNTA3MEM0MDAwOTlGQUIgLyogSlNJbnQxNkFycmF5LmNwcCAqLywKIAkJCQk0OUVFQ0VGOTEw
NTA3MEM0MDAwOTlGQUIgLyogSlNJbnQxNkFycmF5LmggKi8sCiAJCQkJNDlFRUNFRjYxMDUwNzBD
NDAwMDk5RkFCIC8qIEpTSW50MzJBcnJheS5jcHAgKi8sCkBAIC0xNTU2MSw2ICsxNTU5MSw3IEBA
CiAJCQkJQkMyRUQ3QTQwQzZDMEYzNjAwOTIwQkZGIC8qIEpTSFRNTEZyYW1lRWxlbWVudEN1c3Rv
bS5jcHAgKi8sCiAJCQkJQkNENDFBQkEwQzA2MERFODAwQzBFNDQ2IC8qIEpTSFRNTEZyYW1lU2V0
RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJQkMyRUQ2NEYwQzZCQzQ4QzAwOTIwQkZGIC8qIEpT
SFRNTElGcmFtZUVsZW1lbnRDdXN0b20uY3BwICovLAorCQkJCUIwNEY1OUZEMTFDNkFGRDYwMDBC
NUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQzQzODc3MEU4
ODZDQzcwMDUzM0RENSAvKiBKU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJD
MzA1Q0EzMEMwNzgxQkIwMENEMjBGMCAvKiBKU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNwcCAq
LywKIAkJCQk0NDhBRDI3QTBBNDgxMzc5MDAyM0QxNzkgLyogSlNIVE1MT3B0aW9uc0NvbGxlY3Rp
b25DdXN0b20uY3BwICovLApAQCAtMTgxODAsNiArMTgyMTEsOCBAQAogCQkJCTFBODIwRDkyMEEx
M0VCQTYwMEFGODQzQyAvKiBJbWFnZURvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkwODk1
ODI1NjBFODU3QTdFMDBGODJDODMgLyogSW1hZ2VMb2FkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDN0Y0NEE4MEI5RTMyNEUwMEE5RDA4MSAvKiBJbWFnZU9ic2VydmVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMDRFNkJGNjExQzdGMDdFMDAyMTQyODMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjUxMUM3RjA3OTAwMjE0MjgzIC8qIElt
YWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjAxNDlFODAx
MUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQjI3NTM1NzEwQjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlU291cmNlLmggaW4gSGVhZGVycyAq
LywKIAkJCQk0QjM0ODA5NDBFRUY1MEQ0MDBBQzFCNDEgLyogSW1hZ2VTb3VyY2VDRy5oIGluIEhl
YWRlcnMgKi8sCkBAIC0xODQxMyw2ICsxODQ0Niw4IEBACiAJCQkJQzU2QzkxQTcxMTlEOTE4NzAw
REU0Q0Q5IC8qIEpTSURCU3VjY2Vzc0V2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzZDNDlG
NDBEN0RCQTA1MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0cnVjdG9yLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBNzc5NzkyOTBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUIwQTcxNUI4MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9y
Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwQTcxNUJBMTFEMDQzMUUwMDNDMzM3MyAv
KiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzVG
NEY0MTExMTkzMDZDMDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJN0EwRTc2REIxMEJGMDU5ODAwQTAyNzZFIC8qIEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUYwNjBDRTBGNUVFQjJCMDBBMDdFQUMgLyog
SlNJbnNwZWN0b3JCYWNrZW5kLmggaW4gSGVhZGVycyAqLywKQEAgLTE4OTQ3LDYgKzE4OTgyLDcg
QEAKIAkJCQlBODlDQ0M1MzBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNv
bW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzMzA5RTBBMDk5RTY0OTIwMDU2RTU4MSAvKiBS
ZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCMTZDMkYwOTc5
QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkYyMTFD
NkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzRG
NzE0MjBENUE2RjQ0MDAwMThENjkgLyogUmVzb3VyY2VFcnJvci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJOTM0RjcxM0MwRDVBNkYxOTAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk1MTRDNzY3OTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUu
aCBpbiBIZWFkZXJzICovLApAQCAtMjA3MjgsNiArMjA3NjQsNyBAQAogCQkJCUJDNDkxOEM4MEJG
RUEwNTAwMDlENjMxNiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUJDMkVENjUwMEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9t
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJBQTk3MEExQ0REMkQwMEI0MkIyNSAvKiBKU0hU
TUxJbWFnZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQjA0RjU5RkYxMUM2QUZENjAw
MEI1QUMwIC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlBODBFN0U5ODBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MSW5wdXRFbGVtZW50LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUJDQzQzODc4MEU4ODZDQzcwMDUzM0RENSAvKiBKU0hUTUxJbnB1dEVs
ZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFFMkFBOTkwQTFDREQyRDAwQjQy
QjI1IC8qIEpTSFRNTElzSW5kZXhFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjA3ODYs
NiArMjA4MjMsOCBAQAogCQkJCUJDNkM0OUYzMEQ3REJBMDUwMEZGQTU1OCAvKiBKU0ltYWdlQ29u
c3RydWN0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc3OTc5MjgwRDZCOUU2NDAwMzg1MUI5
IC8qIEpTSW1hZ2VEYXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3RDAzMThFMEU5MzU0MDMw
MEUyNEFDRCAvKiBKU0ltYWdlRGF0YUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3
MTVCNzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUIwQTcxNUI5MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNUY0RjQxMDExOTMw
NkMwMDBGREZBREQgLyogSlNJbmRleGVkRGF0YWJhc2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTdBMEU3NkRBMTBCRjA1OTgwMEEwMjc2RSAvKiBKU0luamVjdGVkU2NyaXB0SG9zdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk3QTBFNzZENTEwQkYwNTA3MDBBMDI3NkUgLyogSlNJbmpl
Y3RlZFNjcmlwdEhvc3RDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yMTMzMiw2ICsyMTM3
MSw3IEBACiAJCQkJQTg5Q0NDNTIwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNw
YW5Db21tYW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzMzA5RTA5MDk5RTY0OTIwMDU2RTU4
MSAvKiBSZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Ix
NkMyRTA5NzlDM0JEMDA0Njc3NDEgLyogUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlC
MEE3MTUxQjExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk5MzRGNzEzRTBENUE2RjI4MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2UuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2NTAwQ0U5MjM0RTAwN0VGM0NEIC8qIFJlc291cmNl
RXJyb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk1MTRDNzY3ODBDRTkyM0ExMDA3RUYzQ0Qg
LyogUmVzb3VyY2VIYW5kbGUuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZmMzYzY4OQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcApAQCAtMCwwICsxLDE2NCBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBk
aXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
CisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpZiBFTkFCTEUoSU1BR0VfUkVTSVpFUikKKyNpbmNsdWRlICJKU0hU
TUxJbWFnZUVsZW1lbnQuaCIKKworI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUgIkhU
TUxJbWFnZUVsZW1lbnQuaCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aCIKKyNpbmNsdWRlICJKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1ZGUg
IlJlc2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNGdW5jdGlvbi5oPgorI2lu
Y2x1ZGUgPHJ1bnRpbWUvSlNTdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+CisjaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK3VzaW5n
IG5hbWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2soRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIHZhbHVlKQoreworICAgIGlmICghdmFsdWUuaW5oZXJpdHMoJkpTRnVuY3Rpb246
OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBUWVBFX01JU01BVENIX0VS
Uik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTT2JqZWN0KiBvYmplY3QgPSBh
c09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
OjpjcmVhdGUob2JqZWN0LCBnbG9iYWxPYmplY3QpOworfQorCitzdGF0aWMgUGFzc1JlZlB0cjxJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBjcmVhdGVJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
KEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1
ZSB2YWx1ZSkKK3sKKyAgICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZpbmVk
IGlzIGFsbG93ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1VuZGVm
aW5lZE9yTnVsbCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghdmFsdWUuaW5oZXJp
dHMoJkpTRnVuY3Rpb246OmluZm8pKSB7CisgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBU
WVBFX01JU01BVENIX0VSUik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTT2Jq
ZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1ZSk7CisgICAgcmV0dXJuIEpTSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3RhdGlj
IFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gY3JlYXRlUmVzaXplT3B0aW9ucyhFeGVjU3RhdGUq
IGV4ZWMsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6
ZU9wdGlvbnMgPSBSZXNpemVPcHRpb25zOjpjcmVhdGUoKTsKKworICAgIC8vIEFyZ3VtZW50IGlz
IG9wdGlvbmFsIChoZW5jZSB1bmRlZmluZWQgaXMgYWxsb3dlZCksIGFuZCBudWxsIGlzIGFsbG93
ZWQuCisgICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAgICAgICAgLy8gVXNl
IGRlZmF1bHQgb3B0aW9ucy4KKyAgICAgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgp
OworICAgIH0KKyAgICBKU09iamVjdCogb2JqZWN0ID0gdmFsdWUudG9PYmplY3QoZXhlYyk7CisK
KyAgICBKU1ZhbHVlIHdpZHRoID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAi
d2lkdGgiKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4g
MDsKKyAgICBpZiAoIXdpZHRoLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXplT3B0aW9u
cy0+c2V0V2lkdGgod2lkdGgudG9JbnQzMihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUg
aGVpZ2h0ID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiaGVpZ2h0IikpOwor
ICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYg
KCFoZWlnaHQuaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRIZWln
aHQoaGVpZ2h0LnRvSW50MzIoZXhlYykpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9u
KCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU1ZhbHVlIGNvbXByZXNz
aW9uTGV2ZWwgPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJjb21wcmVzc2lv
bkxldmVsIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
IDA7CisgICAgaWYgKCFjb21wcmVzc2lvbkxldmVsLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAg
cmVzaXplT3B0aW9ucy0+c2V0Q29tcHJlc3Npb25MZXZlbChjb21wcmVzc2lvbkxldmVsLnRvTnVt
YmVyKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBwcmVzZXJ2ZUFzcGVjdFJhdGlvID0g
b2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAicHJlc2VydmVBc3BlY3RSYXRpbyIp
KTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAg
IGlmICghcHJlc2VydmVBc3BlY3RSYXRpby5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6
ZU9wdGlvbnMtPnNldEFzcGVjdFJhdGlvT3B0aW9uKHByZXNlcnZlQXNwZWN0UmF0aW8udG9Cb29s
ZWFuKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNWYWx1ZSBvcmllbnRhdGlvbiA9IG9iamVjdC0+
Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgIm9yaWVudGF0aW9uIikpOworICAgIGlmIChleGVj
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCFvcmllbnRhdGlv
bi5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldE9yaWVudGF0aW9u
T3B0aW9uKHVzdHJpbmdUb1N0cmluZyhvcmllbnRhdGlvbi50b1N0cmluZyhleGVjKSkpOworICAg
ICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAg
ICB9CisKKyAgICByZXR1cm4gcmVzaXplT3B0aW9ucy5yZWxlYXNlKCk7Cit9CisKK0pTVmFsdWUg
SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZShFeGVjU3RhdGUqIGV4ZWMpCit7Cisg
ICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CisKKyAgICBjb25zdCBTdHJpbmcmIG1pbWVUeXBlID0g
dXN0cmluZ1RvU3RyaW5nKGV4ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpKTsKKworICAg
IFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjayA9IGNy
ZWF0ZUltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUds
b2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50
KDEpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOworICAgIEFTU0VSVChzdWNjZXNzQ2FsbGJhY2spOworCisgICAgUmVmUHRyPElt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrKGV4ZWMsIHN0YXRpY19jYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oZXhl
Yy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwgZXhlYy0+YXJndW1lbnQoMikpOworICAgIGlmIChl
eGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAg
ICBSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucyA9IGNyZWF0ZVJlc2l6ZU9wdGlv
bnMoZXhlYywgZXhlYy0+YXJndW1lbnQoMykpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgQVNTRVJUKHJlc2l6ZU9wdGlv
bnMpOworCisgICAgSFRNTEltYWdlRWxlbWVudCogaW1wID0gc3RhdGljX2Nhc3Q8SFRNTEltYWdl
RWxlbWVudCo+KGltcGwoKSk7CisgICAgaW1wLT53ZWJraXRHZXRJbWFnZShtaW1lVHlwZSwgc3Vj
Y2Vzc0NhbGxiYWNrLnJlbGVhc2UoKSwgZXJyb3JDYWxsYmFjay5yZWxlYXNlKCksIHJlc2l6ZU9w
dGlvbnMucmVsZWFzZSgpLCBlYyk7CisgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIGVjKTsKKyAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA0ZTJlOTExLi40NTIxZGYwIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTIxNzksNyArMjE3OSwxMSBA
QCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAKICAgICAgICAgICAgIGZvcmVh
Y2ggbXkgJHBhcmFtIChAcGFyYW1zKSB7CiAgICAgICAgICAgICAgICAgbXkgJHBhcmFtTmFtZSA9
ICRwYXJhbS0+bmFtZTsKLSAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBh
cmdzLmFwcGVuZCh0b0pTKGV4ZWMsICR7cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAg
ICAgaWYgKCRwYXJhbS0+dHlwZSBlcSAiRE9NU3RyaW5nIikgeworICAgICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZChqc1N0cmluZyhleGVjLCAke3Bh
cmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsICR7
cGFyYW1OYW1lfSkpO1xuIik7CisgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KIAog
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbiAgICBib29sIHJhaXNlZEV4Y2VwdGlv
biA9IGZhbHNlO1xuIik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDYWxsYmFjay5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFjay5jcHAKaW5kZXggZGY0MDNjNi4uMDQzYTZlZCAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCisrKyBi
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrLmNwcApAQCAt
ODksNyArODksNyBAQCBib29sIEpTVGVzdENhbGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJh
bShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBDbAogICAgIEV4ZWNTdGF0ZSogZXhl
YyA9IGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpOwogICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVy
IGFyZ3M7CiAgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCBjbGFzczJQYXJhbSkpOwotICAgIGFy
Z3MuYXBwZW5kKHRvSlMoZXhlYywgc3RyQXJnKSk7CisgICAgYXJncy5hcHBlbmQoanNTdHJpbmco
ZXhlYywgc3RyQXJnKSk7CiAKICAgICBib29sIHJhaXNlZEV4Y2VwdGlvbiA9IGZhbHNlOwogICAg
IG1fZGF0YS0+aW52b2tlQ2FsbGJhY2soYXJncywgJnJhaXNlZEV4Y2VwdGlvbik7CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwIGIvV2ViQ29yZS9odG1sL0Fz
eW5jSW1hZ2VSZXNpemVyLmNwcAppbmRleCA0YmI3NGM5Li45ZjhhNTY0IDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9Bc3lu
Y0ltYWdlUmVzaXplci5jcHAKQEAgLTM0LDI4ICszNCwzMiBAQAogI2luY2x1ZGUgIkFzeW5jSW1h
Z2VSZXNpemVyLmgiCiAKICNpbmNsdWRlICJDYWNoZWRJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaCIKICNpbmNsdWRlICJJbWFnZVJlc2l6ZXJUaHJlYWQuaCIKKyNpbmNsdWRlICJSZXNp
emVPcHRpb25zLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKICNpbmNsdWRlIDx1dGls
aXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NSZWZQdHI8QXN5bmNJbWFnZVJlc2l6
ZXI+IEFzeW5jSW1hZ2VSZXNpemVyOjpjcmVhdGUoQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBP
dXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUg
c3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5
LCBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24g
b3JpZW50YXRpb25PcHRpb24pCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpzdGFydChTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBDYWNoZWRJbWFnZSogY2Fj
aGVkSW1hZ2UsIE91dHB1dFR5cGUgb3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJl
c2l6ZU9wdGlvbnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBBc3luY0ltYWdlUmVzaXpl
cihjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgZGVzaXJlZEJvdW5kcywgc3VjY2Vzc0NhbGxiYWNr
LCBlcnJvckNhbGxiYWNrLCBxdWFsaXR5LCBhc3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25P
cHRpb24pKTsKKyAgICAgbmV3IEFzeW5jSW1hZ2VSZXNpemVyKHNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQsIGNhY2hlZEltYWdlLCBvdXRwdXRUeXBlLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJh
Y2ssIHJlc2l6ZU9wdGlvbnMpOwogfQogCi1Bc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJl
c2l6ZXIoQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIElu
dFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRW
YWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiBhc3Bl
Y3RSYXRpb09wdGlvbiwgT3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRpb24pCitBc3lu
Y0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRU
eXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBz
dWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJy
b3JDYWxsYmFjaywgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQogICAg
IDogbV9jYWNoZWRJbWFnZShjYWNoZWRJbWFnZSkKKyAgICAsIG1fc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dChzY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICwgbV9vdXRwdXRUeXBlKG91dHB1dFR5
cGUpCiAgICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCiAgICAgLCBtX2Vy
cm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKLSAgICAsIG1fb3V0cHV0VHlwZShvdXRwdXRUeXBl
KQotICAgICwgbV9kZXNpcmVkQm91bmRzKGRlc2lyZWRCb3VuZHMpCi0gICAgLCBtX3F1YWxpdHko
cXVhbGl0eSkKLSAgICAsIG1fYXNwZWN0UmF0aW9PcHRpb24oYXNwZWN0UmF0aW9PcHRpb24pCi0g
ICAgLCBtX29yaWVudGF0aW9uT3B0aW9uKG9yaWVudGF0aW9uT3B0aW9uKQorICAgICwgbV9yZXNp
emVPcHRpb25zKHJlc2l6ZU9wdGlvbnMpCiB7Ci0gICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNr
LmlzT2JqZWN0KCkpOworICAgIC8vIG1fY2FsbGJhY2sgY29udHJvbHMgdGhlIGxpZmV0aW1lIG9m
IEFzeW5jSW1hZ2VSZXNpemVyLgorICAgIG1fY2FsbGJhY2tJbmZvID0gbmV3IENhbGxiYWNrSW5m
byh0aGlzKTsKKyAgICBBU1NFUlQobV9zdWNjZXNzQ2FsbGJhY2suZ2V0KCkpOwogICAgIG1fY2Fj
aGVkSW1hZ2UtPmFkZENsaWVudCh0aGlzKTsKIH0KIApAQCAtNjcsMTEgKzcxLDIxIEBAIHZvaWQg
QXN5bmNJbWFnZVJlc2l6ZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKiBjYWNoZWRS
ZXNvdXJjZSkKIHsKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEgPSBjYWNoZWRS
ZXNvdXJjZS0+ZGF0YSgpLT5jb3B5KCk7CiAgICAgY2FjaGVkUmVzb3VyY2UtPnJlbW92ZUNsaWVu
dCh0aGlzKTsKLSAgICBDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbyA9IG5ldyBDYWxsYmFja0lu
Zm8odGhpcyk7Ci0gICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwg
Y2FsbGJhY2tJbmZvLCBtX291dHB1dFR5cGUsIG1fZGVzaXJlZEJvdW5kcywgbV9xdWFsaXR5LCBt
X2FzcGVjdFJhdGlvT3B0aW9uLCBtX29yaWVudGF0aW9uT3B0aW9uKSkKKyAgICBpZiAoIUltYWdl
UmVzaXplclRocmVhZDo6c3RhcnQoaW1hZ2VEYXRhLCBtX2NhbGxiYWNrSW5mbywgbV9vdXRwdXRU
eXBlLCBJbnRTaXplKG1fcmVzaXplT3B0aW9ucy0+d2lkdGgoKSwgbV9yZXNpemVPcHRpb25zLT5o
ZWlnaHQoKSksIG1fcmVzaXplT3B0aW9ucy0+Y29tcHJlc3Npb25MZXZlbCgpLCBtX3Jlc2l6ZU9w
dGlvbnMtPmFzcGVjdFJhdGlvT3B0aW9uKCksIG1fcmVzaXplT3B0aW9ucy0+b3JpZW50YXRpb25P
cHRpb24oKSkpCiAgICAgICAgIHJlc2l6ZUVycm9yKCk7CiB9CiAKK3ZvaWQgQXN5bmNJbWFnZVJl
c2l6ZXI6OnJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPiBibG9iKQoreworICAgIG1fc3VjY2Vz
c0NhbGxiYWNrLT5oYW5kbGVFdmVudChtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIGJsb2IuZ2V0
KCkpOworfQorCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVFcnJvcigpCit7CisgICAg
aWYgKG1fZXJyb3JDYWxsYmFjay5nZXQoKSkKKyAgICAgICAgbV9lcnJvckNhbGxiYWNrLT5oYW5k
bGVFdmVudChtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQsICJVbmV4cGVjdGVkIGVycm9yIHdoaWxl
IHJlc2l6aW5nIGltYWdlIik7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlm
IC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5j
SW1hZ2VSZXNpemVyLmggYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaAppbmRleCBh
ZGQwNzBhLi43OTI2YWNjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6
ZXIuaAorKysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaApAQCAtMzYsMTIgKzM2
LDE1IEBACiAjaW5jbHVkZSAiQmxvYi5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSW50U2l6ZS5oIgotI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ2FjaGVkSW1hZ2U7CitjbGFzcyBJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrOworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOwogY2xh
c3MgSW1hZ2VSZXNpemVyVGhyZWFkOworY2xhc3MgUmVzaXplT3B0aW9uczsKK2NsYXNzIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQ7CiAKIC8vIEFzeW5jSW1hZ2VSZXNpemVyIHdhaXRzIGZvciB0aGUg
Q2FjaGVkSW1hZ2UgdGhhdCBpcyBwYXNzZWQgaW4gdG8gbG9hZCBjb21wbGV0ZWx5LAogLy8gdGhl
biBzdGFydHMgYW4gSW1hZ2VSZXNpemVyVGhyZWFkIHRvIHJlc2l6ZSB0aGUgaW1hZ2UuIE9uY2Ug
Y3JlYXRlZCwgSW1hZ2VSZXNpemVyVGhyZWFkCkBAIC00OSw1NiArNTIsNDIgQEAgY2xhc3MgSW1h
Z2VSZXNpemVyVGhyZWFkOwogLy8gb2NjdXIsIGJvdGggb2JqZWN0cyBhcmUgZGVzdHJveWVkLiBJ
ZiB0aGUgZG9jdW1lbnQgaXMgZGVzdHJveWVkIGR1cmluZyByZXNpemluZywKIC8vIEFzeW5jSW1h
Z2VSZXNpemVyIHdpbGwgcmVjZWl2ZSBhIG5vdGlmaWNhdGlvbiBhbmQgc3Vic2VxdWVudGx5IGJs
b2NrIHRoZSBjYWxsYmFja3MgZnJvbQogLy8gb2NjdXJyaW5nLgotY2xhc3MgQXN5bmNJbWFnZVJl
c2l6ZXIgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQsIHB1YmxpYyBSZWZDb3VudGVkPEFz
eW5jSW1hZ2VSZXNpemVyPiB7CitjbGFzcyBBc3luY0ltYWdlUmVzaXplciA6IHB1YmxpYyBDYWNo
ZWRSZXNvdXJjZUNsaWVudCB7CiBwdWJsaWM6CiAgICAgc3RydWN0IENhbGxiYWNrSW5mbyB7Ci0g
ICAgICAgIENhbGxiYWNrSW5mbyhQYXNzUmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0lt
YWdlUmVzaXplcikKKyAgICAgICAgQ2FsbGJhY2tJbmZvKFBhc3NPd25QdHI8QXN5bmNJbWFnZVJl
c2l6ZXI+IGFzeW5jSW1hZ2VSZXNpemVyKQogICAgICAgICAgICAgOiBhc3luY0ltYWdlUmVzaXpl
cihhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAgICAgICwgYmxvYigwKQogICAgICAgICB7CiAg
ICAgICAgIH0KIAotICAgICAgICBSZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VS
ZXNpemVyOworICAgICAgICBPd25QdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGFzeW5jSW1hZ2VSZXNp
emVyOwogICAgICAgICBSZWZQdHI8QmxvYj4gYmxvYjsKICAgICB9OwotICAgIAorCiAgICAgZW51
bSBPdXRwdXRUeXBlIHsKICAgICAgICAgSlBFRywKICAgICAgICAgUE5HCiAgICAgfTsKIAotICAg
IGVudW0gQXNwZWN0UmF0aW9PcHRpb24gewotICAgICAgICBQcmVzZXJ2ZUFzcGVjdFJhdGlvLAot
ICAgICAgICBJZ25vcmVBc3BlY3RSYXRpbwotICAgIH07Ci0KLSAgICBlbnVtIE9yaWVudGF0aW9u
T3B0aW9uIHsKLSAgICAgICAgQ29ycmVjdE9yaWVudGF0aW9uLAotICAgICAgICBJZ25vcmVPcmll
bnRhdGlvbgotICAgIH07Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxBc3luY0ltYWdlUmVzaXpl
cj4gY3JlYXRlKENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRz
LCBTY3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ss
IGZsb2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbik7Cisg
ICAgc3RhdGljIHZvaWQgc3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIENhY2hlZEltYWdl
KiwgT3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQ
YXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9w
dGlvbnM+KTsKICAgICB+QXN5bmNJbWFnZVJlc2l6ZXIoKTsKIAotICAgIC8vIEZJWE1FOiBJbnNl
cnQgb3ZlcnJpZGUgZnVuY3Rpb24gZm9yIG5vdGlmaWNhdGlvbiBvZiBkb2N1bWVudCBkZXN0cnVj
dGlvbiAoY2hhbmdlIG1fY2FsbGJhY2tzT2spLgotCi0gICAgdm9pZCByZXNpemVDb21wbGV0ZShS
ZWZQdHI8QmxvYj4pIHsgLyogRklYTUU6IE5vdCB5ZXQgaW1wbGVtZW50ZWQuICovIH0KLSAgICB2
b2lkIHJlc2l6ZUVycm9yKCkgeyAvKiBGSVhNRTogTm90IHlldCBpbXBsZW1lbnRlZC4gKi8gfQor
ICAgIHZvaWQgcmVzaXplQ29tcGxldGUoUmVmUHRyPEJsb2I+KTsKKyAgICB2b2lkIHJlc2l6ZUVy
cm9yKCk7CiAKIHByaXZhdGU6Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXIoQ2FjaGVkSW1hZ2UqLCBP
dXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxs
YmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0
aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uKTsKKyAgICBBc3luY0ltYWdlUmVzaXplcihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiwgQ2FjaGVkSW1hZ2UqLCBPdXRwdXRUeXBlLCBQYXNzUmVmUHRy
PEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4sIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4pOwogICAgIHZpcnR1YWwgdm9p
ZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopOwogCiAgICAgQ2FjaGVkSW1hZ2UqIG1f
Y2FjaGVkSW1hZ2U7Ci0gICAgU2NyaXB0VmFsdWUgbV9zdWNjZXNzQ2FsbGJhY2s7Ci0gICAgU2Ny
aXB0VmFsdWUgbV9lcnJvckNhbGxiYWNrOwotICAgIAotICAgIC8vIFBhcmFtZXRlcnMgdG8gcGFz
cyBpbnRvIEltYWdlUmVzaXplclRocmVhZC4KKyAgICBDYWxsYmFja0luZm8qIG1fY2FsbGJhY2tJ
bmZvOworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4
dDsKKwogICAgIE91dHB1dFR5cGUgbV9vdXRwdXRUeXBlOwotICAgIEludFNpemUgbV9kZXNpcmVk
Qm91bmRzOwotICAgIGZsb2F0IG1fcXVhbGl0eTsKLSAgICBBc3BlY3RSYXRpb09wdGlvbiBtX2Fz
cGVjdFJhdGlvT3B0aW9uOwotICAgIE9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRp
b247CisgICAgUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gbV9zdWNjZXNzQ2Fs
bGJhY2s7CisgICAgUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+IG1fZXJyb3JDYWxs
YmFjazsKKyAgICBSZWZQdHI8UmVzaXplT3B0aW9ucz4gbV9yZXNpemVPcHRpb25zOwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFn
ZUVsZW1lbnQuY3BwIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDVk
NTkyM2QuLjJmZjUxZjYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50
LmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKQEAgLTMyLDkgKzMy
LDE3IEBACiAjaW5jbHVkZSAiSFRNTERvY3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1FbGVt
ZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVkZSAiSW1hZ2UuaCIKKyNpbmNs
dWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5oIgogCisjaWYg
RU5BQkxFKElNQUdFX1JFU0laRVIpCisjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNl
bmRpZgorCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00
NTEsNCArNDU5LDM0IEBAIHZvaWQgSFRNTEltYWdlRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVy
RG9jdW1lbnQoKQogICAgIEhUTUxFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgp
OwogfQogCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKK3ZvaWQgSFRNTEltYWdlRWxlbWVu
dDo6d2Via2l0R2V0SW1hZ2UoU3RyaW5nIG1pbWVUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXpl
ckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4g
cmVzaXplT3B0aW9ucywgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFzcmMoKS5pc1Zh
bGlkKCkpIHsKKyAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIC8vIFRoZSB0YWludHNDYW52YXMgbWV0aG9kIGFsc28gYWxsb3dzIGRh
dGEgVVJMcy4KKyAgICBpZiAoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+dGFpbnRzQ2Fu
dmFzKHNyYygpKSkgeworICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGU7
CisgICAgaWYgKG1pbWVUeXBlID09ICJpbWFnZS9qcGVnIikKKyAgICAgICAgb3V0cHV0VHlwZSA9
IEFzeW5jSW1hZ2VSZXNpemVyOjpKUEVHOworICAgIGVsc2UgaWYgKG1pbWVUeXBlID09ICJpbWFn
ZS9wbmciKQorICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OlBORzsKKyAg
ICBlbHNlIHsKKyAgICAgICAgZWMgPSBOT1RfU1VQUE9SVEVEX0VSUjsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpzdGFydChzY3JpcHRFeGVjdXRpb25D
b250ZXh0KCksIG1faW1hZ2VMb2FkZXIuaW1hZ2UoKSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxi
YWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKK30KKworI2VuZGlmIC8vIEVOQUJM
RShJTUFHRV9SRVNJWkVSKQorCiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdl
RWxlbWVudC5oIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAppbmRleCA2MmQzMTVj
Li40MTFiYmIzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCisr
KyBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKQEAgLTMxLDYgKzMxLDkgQEAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsK
K2NsYXNzIFJlc2l6ZU9wdGlvbnM7CiAKIGNsYXNzIEhUTUxJbWFnZUVsZW1lbnQgOiBwdWJsaWMg
SFRNTEVsZW1lbnQgewogICAgIGZyaWVuZCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CkBAIC04OSw2
ICs5MiwxMiBAQCBwdWJsaWM6CiAKICAgICBib29sIGhhdmVGaXJlZExvYWRFdmVudCgpIGNvbnN0
IHsgcmV0dXJuIG1faW1hZ2VMb2FkZXIuaGF2ZUZpcmVkTG9hZEV2ZW50KCk7IH0KIAorI2lmIEVO
QUJMRShJTUFHRV9SRVNJWkVSKQorCisgICAgdm9pZCB3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWlt
ZVR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0
cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiwg
RXhjZXB0aW9uQ29kZSYpOworCisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEhUTUxJbWFnZUVs
ZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50KiwgSFRNTEZvcm1FbGVtZW50KiA9
IDApOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwgYi9X
ZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKaW5kZXggMGZjNzI3MS4uYWUzYzVlNCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCisrKyBiL1dlYkNv
cmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbApAQCAtNDgsNiArNDgsMTQgQEAgbW9kdWxlIGh0
bWwgewogICAgICAgICAvLyBPYmplY3RpdmUtQyBleHRlbnNpb246CiAgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgYWx0RGlzcGxheVN0cmluZzsKICAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIFVSTCBhYnNvbHV0ZUltYWdlVVJMOworI2Vsc2UKKworI2lmIGRlZmluZWQoRU5B
QkxFX0lNQUdFX1JFU0laRVIpICYmIEVOQUJMRV9JTUFHRV9SRVNJWkVSCisgICAgICAgIC8vIEZ1
bmN0aW9ucworICAgICAgICBbQ3VzdG9tXSB2b2lkIHdlYmtpdEdldEltYWdlKGluIERPTVN0cmlu
ZyBtaW1lVHlwZSwgaW4gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFj
aywgW09wdGlvbmFsXSBpbiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2ss
IFtPcHRpb25hbF0gaW4gUmVzaXplT3B0aW9ucyBvcHRpb25zKQorICAgICAgICAgICAgcmFpc2Vz
KERPTUV4Y2VwdGlvbik7CisjZW5kaWYKKwogI2VuZGlmCiAgICAgfTsKIApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRtbC9J
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uNjZmZmY4NgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmgKQEAgLTAsMCArMSw1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAg
ICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRz
CisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFja19oCisjZGVmaW5lIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaAorCisjaWYg
RU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFz
cyBTdHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVm
Q291bnRlZDxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVh
bCB+SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwgYm9vbCBoYW5k
bGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJikgPSAwOworfTsK
KworfQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZmNjYmY4Ci0t
LSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
aWRsCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
ICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAg
ICAgICAgQ29uZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBd
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgeworICAgICAgICBib29sZWFuIGhhbmRsZUV2ZW50
KGluIERPTVN0cmluZyBlcnJvcik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJTdWNjZXNzQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42
NDQwMGYzCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAg
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICog
TmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICog
Y29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFja19oCisjZGVmaW5lIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisKKyNpZiBF
TkFCTEUoSU1BR0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7CitjbGFzcyBTdHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ayA6IHB1YmxpYyBSZWZDb3VudGVkPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4geworcHVi
bGljOgorICAgIHZpcnR1YWwgfkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaygpIHsgfQorICAg
IHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQmxvYiop
ID0gMDsKK307CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5k
aWYgLy8gSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjIwZmQ4N2YKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmlkbApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAq
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisg
KiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIHN0b3JhZ2UgeworICAg
IGludGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPUlNQUdFX1JFU0laRVIsCisgICAgICAg
IENhbGxiYWNrCisgICAgXSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgeworICAgICAgICBi
b29sZWFuIGhhbmRsZUV2ZW50KGluIEJsb2IgYmxvYik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclRocmVhZC5jcHAKaW5kZXggMWJhZTZhMC4uNjdhZmM3OCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclRocmVhZC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJCaXRtYXBJbWFn
ZS5oIgogI2luY2x1ZGUgIkltYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKICNp
bmNsdWRlIDx1dGlsaXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MCw3ICs1MSw3IEBA
IHN0YXRpYyB2b2lkIHJldHVybkJsb2JPckVycm9yKHZvaWQqIGNhbGxiYWNrSW5mb3JtYXRpb24p
CiAgICAgZGVsZXRlIGNhbGxiYWNrSW5mbzsKIH0KIAotYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6
OnN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNp
emVyOjpDYWxsYmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1
dFR5cGUgb3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBB
c3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFz
eW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK2Jv
b2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1h
Z2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFz
eW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJv
dW5kcywgZG91YmxlIHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFz
cGVjdFJhdGlvT3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRh
dGlvbk9wdGlvbikKIHsKICAgICBJbWFnZVJlc2l6ZXJUaHJlYWQqIGltYWdlUmVzaXplclRocmVh
ZCA9IG5ldyBJbWFnZVJlc2l6ZXJUaHJlYWQoY2FsbGJhY2tJbmZvLCBvdXRwdXRUeXBlLCBkZXNp
cmVkQm91bmRzLCBxdWFsaXR5LCBhc3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24p
OwogCkBAIC02Miw3ICs2Myw3IEBAIGJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNz
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzCiAgICAgcmV0dXJu
IGltYWdlUmVzaXplclRocmVhZC0+bV90aHJlYWRJRDsKIH0KIAotSW1hZ2VSZXNpemVyVGhyZWFk
OjpJbWFnZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2Fs
bGJhY2tJbmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRT
aXplIGRlc2lyZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3Bl
Y3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVu
dGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFn
ZVJlc2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJ
bmZvLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRl
c2lyZWRCb3VuZHMsIGRvdWJsZSBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09w
dGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24g
b3JpZW50YXRpb25PcHRpb24pCiAgICAgOiBtX3RocmVhZElEKDApCiAgICAgLCBtX2NhbGxiYWNr
SW5mbyhjYWxsYmFja0luZm8pCiAgICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBiL1dlYkNvcmUvaHRtbC9J
bWFnZVJlc2l6ZXJUaHJlYWQuaAppbmRleCBhZTVhZGU1Li4xNWJkM2JkIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclRocmVhZC5oCkBAIC0zNCw2ICszNCw4IEBACiAjaWYgRU5BQkxFKElNQUdFX1JFU0la
RVIpCiAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2luY2x1ZGUgIkludFNpemUu
aCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApA
QCAtNDIsMTEgKzQ0LDExIEBAIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNp
emVyVGhyZWFkIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwg
QXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxv
YXQgcXVhbGl0eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0lt
YWdlUmVzaXplcjo6T3JpZW50YXRpb25PcHRpb24pOworICAgIHN0YXRpYyBib29sIHN0YXJ0KFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVk
Qm91bmRzLCBkb3VibGUgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24s
IFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICB+SW1hZ2VSZXNpemVyVGhy
ZWFkKCk7CiAKIHByaXZhdGU6Ci0gICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNp
emVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6
ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0
UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbik7CisgICAg
SW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUg
cXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6
Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFk
U3RhcnQodm9pZCopOwogICAgIHZvaWQqIGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OCw5
ICs2MCw5IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPEJpdG1hcEltYWdlPiBtX2ltYWdlOwogICAg
IEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKICAgICBJbnRTaXpl
IG1fZGVzaXJlZEJvdW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXN5bmNJbWFnZVJl
c2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgQXN5bmNJ
bWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAg
ZG91YmxlIG1fcXVhbGl0eTsKKyAgICBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBt
X2FzcGVjdFJhdGlvT3B0aW9uOworICAgIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9u
IG1fb3JpZW50YXRpb25PcHRpb247CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVz
aXplT3B0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmU2NDk2
NAotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAt
MCwwICsxLDc1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBt
ZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVS
KQorI2luY2x1ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5n
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRp
YyBjb25zdCBpbnQgZGltZW5zaW9uc0xvd2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBk
aW1lbnNpb25zVXBwZXJMaW1pdCA9IDMyNzY3Oworc3RhdGljIGNvbnN0IGRvdWJsZSBjb21wcmVz
c2lvbkxvd2VyTGltaXQgPSAwLjA7CitzdGF0aWMgY29uc3QgZG91YmxlIGNvbXByZXNzaW9uVXBw
ZXJMaW1pdCA9IDEuMDsKKworc3RhdGljIGNvbnN0IGRvdWJsZSBkZWZhdWx0Q29tcHJlc3Npb24g
PSAwLjg1OworCitQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0
ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9w
dGlvbnM6OlJlc2l6ZU9wdGlvbnMoKQorICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgp
CisgICAgLCBtX2NvbXByZXNzaW9uTGV2ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJ
Z25vcmVBc3BlY3RSYXRpbykKKyAgICAsIG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50
YXRpb24pCit7Cit9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7
IG1fd2lkdGggPSB3aWR0aCA+PSBkaW1lbnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1l
bnNpb25zVXBwZXJMaW1pdCA/IHdpZHRoIDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRo
KCkgeyByZXR1cm4gbV93aWR0aDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChp
bnQgaGVpZ2h0KSB7IG1faGVpZ2h0ID0gaGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYm
IGhlaWdodCA8PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNp
emVPcHRpb25zOjpoZWlnaHQoKSB7IHJldHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9w
dGlvbnM6OnNldENvbXByZXNzaW9uTGV2ZWwoZG91YmxlIGNvbXByZXNzaW9uTGV2ZWwpIHsgbV9j
b21wcmVzc2lvbkxldmVsID0gY29tcHJlc3Npb25MZXZlbCA+PSBjb21wcmVzc2lvbkxvd2VyTGlt
aXQgJiYgY29tcHJlc3Npb25MZXZlbCA8PSBjb21wcmVzc2lvblVwcGVyTGltaXQgPyBjb21wcmVz
c2lvbkxldmVsIDogZGVmYXVsdENvbXByZXNzaW9uOyB9Citkb3VibGUgUmVzaXplT3B0aW9uczo6
Y29tcHJlc3Npb25MZXZlbCgpIHsgcmV0dXJuIG1fY29tcHJlc3Npb25MZXZlbDsgfQorCit2b2lk
IFJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RS
YXRpbykgeyBtX2FzcGVjdFJhdGlvT3B0aW9uID0gcHJlc2VydmVBc3BlY3RSYXRpbyA/IFByZXNl
cnZlQXNwZWN0UmF0aW8gOiBJZ25vcmVBc3BlY3RSYXRpbzsgfQorUmVzaXplT3B0aW9uczo6QXNw
ZWN0UmF0aW9PcHRpb24gUmVzaXplT3B0aW9uczo6YXNwZWN0UmF0aW9PcHRpb24oKSB7IHJldHVy
biBtX2FzcGVjdFJhdGlvT3B0aW9uOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0T3JpZW50
YXRpb25PcHRpb24oU3RyaW5nIG9yaWVudGF0aW9uT3B0aW9uKSB7IG1fb3JpZW50YXRpb25PcHRp
b24gPSBvcmllbnRhdGlvbk9wdGlvbiA9PSAiYXV0byIgPyBDb3JyZWN0T3JpZW50YXRpb24gOiBJ
Z25vcmVPcmllbnRhdGlvbjsgfQorUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gUmVz
aXplT3B0aW9uczo6b3JpZW50YXRpb25PcHRpb24oKSB7IHJldHVybiBtX29yaWVudGF0aW9uT3B0
aW9uOyB9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBiL1dl
YkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uZTg3YjFkMQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRp
b25zLmgKQEAgLTAsMCArMSw4NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgUmVzaXplT3B0aW9uc19oCisjZGVmaW5lIFJl
c2l6ZU9wdGlvbnNfaAorCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgU3RyaW5nOworCitjbGFzcyBSZXNpemVPcHRpb25zIDogcHVi
bGljIFJlZkNvdW50ZWQ8UmVzaXplT3B0aW9ucz4geworcHVibGljOgorICAgIGVudW0gQXNwZWN0
UmF0aW9PcHRpb24geworICAgICAgICBQcmVzZXJ2ZUFzcGVjdFJhdGlvLAorICAgICAgICBJZ25v
cmVBc3BlY3RSYXRpbworICAgIH07CisKKyAgICBlbnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKKyAg
ICAgICAgQ29ycmVjdE9yaWVudGF0aW9uLAorICAgICAgICBJZ25vcmVPcmllbnRhdGlvbgorICAg
IH07CisKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGUoKTsKKwor
ICAgIHZvaWQgc2V0V2lkdGgoaW50IHdpZHRoKTsKKyAgICBpbnQgd2lkdGgoKTsKKworICAgIHZv
aWQgc2V0SGVpZ2h0KGludCBoZWlnaHQpOworICAgIGludCBoZWlnaHQoKTsKKworICAgIHZvaWQg
c2V0Q29tcHJlc3Npb25MZXZlbChkb3VibGUgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZG91Ymxl
IGNvbXByZXNzaW9uTGV2ZWwoKTsKKworICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24oYm9v
bCBwcmVzZXJ2ZUFzcGVjdFJhdGlvKTsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRp
b09wdGlvbigpOworCisgICAgdm9pZCBzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50
YXRpb25PcHRpb24pOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKCk7
CisKK3ByaXZhdGU6CisgICAgUmVzaXplT3B0aW9ucygpOworCisgICAgLy8gSWYgbV93aWR0aCBv
ciBtX2hlaWdodCA9PSAwLCB0aGF0IGRpbWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGljaXRs
eSBkdXJpbmcgcmVzaXppbmcuCisgICAgaW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0Owor
ICAgIGRvdWJsZSBtX2NvbXByZXNzaW9uTGV2ZWw7CisgICAgQXNwZWN0UmF0aW9PcHRpb24gbV9h
c3BlY3RSYXRpb09wdGlvbjsKKyAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0
aW9uOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElN
QUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBSZXNpemVPcHRpb25zX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59527</attachid>
            <date>2010-06-23 10:16:52 -0700</date>
            <delta_ts>2010-06-23 10:36:24 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>293862</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2OGI1OGExLi45MWRmNjgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDEzNDAgKzEsMjggQEAKLTIwMTAt
MDYtMjMgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KKzIwMTAtMDYtMjEg
IFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgogCi0gICAgICAgIFJldmll
d2VkIGJ5IERhbiBCZXJuc3RlaW4uCi0KLSAgICAgICAgRG8gbm90IHNldCBuZWVkc0xheW91dCB3
aGVuIHRoZSBzdHlsZSBhdHRyaWJ1dGUgY2hhbmdlcyBvbiBhbiBTVkcgZWxlbWVudAotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAzNjYKLQotICAgICAg
ICBUZXN0cyB0aGF0IHNldHRpbmcgdGhlIHN0eWxlIGF0dHJpYnV0ZSBvbiBhbiBTVkcgZWxlbWVu
dCBkb2VzIG5vdCBjYXVzZQotICAgICAgICB0aGUgcmVuZGVyIHRyZWUncyBsYXlvdXQgZmxhZ3Mg
dG8gZ28gaGF5d2lyZS4gIFRoZSBkZXRhaWxzIGFyZSBpbnZvbHZlZCwKLSAgICAgICAgcGxlYXNl
IHNlZSB0aGUgYnVnIGFuZCB0ZXN0IGNhc2UgZm9yIGRldGFpbHMuCi0KLSAgICAgICAgKiBmYXN0
L3JlcGFpbnQvc3ZnLWxheW91dC1yb290LXN0eWxlLWF0dHItdXBkYXRlLWV4cGVjdGVkLmNoZWNr
c3VtOiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3JlcGFpbnQvc3ZnLWxheW91dC1yb290LXN0eWxl
LWF0dHItdXBkYXRlLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogZmFzdC9yZXBhaW50
L3N2Zy1sYXlvdXQtcm9vdC1zdHlsZS1hdHRyLXVwZGF0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIGZhc3QvcmVwYWludC9zdmctbGF5b3V0LXJvb3Qtc3R5bGUtYXR0ci11cGRhdGUu
aHRtbDogQWRkZWQuCi0KLTIwMTAtMDYtMjIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBh
cHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KLQotICAgICAg
ICByNjEyMTUgYnJva2UgQWNpZDMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQxMDM0Ci0gICAgICAgIAotICAgICAgICBUZXN0Y2FzZSB3aXRoIGEgdHJh
bnNwYXJlbnQgaWZyYW1lLgotCi0gICAgICAgICogZmFzdC9mcmFtZXMvcGFpbnQtaWZyYW1lLWJh
Y2tncm91bmQtZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIGZhc3QvZnJhbWVz
L3BhaW50LWlmcmFtZS1iYWNrZ3JvdW5kLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICog
ZmFzdC9mcmFtZXMvcGFpbnQtaWZyYW1lLWJhY2tncm91bmQtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
LSAgICAgICAgKiBmYXN0L2ZyYW1lcy9wYWludC1pZnJhbWUtYmFja2dyb3VuZC5odG1sOiBBZGRl
ZC4KLSAgICAgICAgKiBmYXN0L2ZyYW1lcy9yZXNvdXJjZXMvcGFpbnQtaWZyYW1lLWJhY2tncm91
bmQtaWZyYW1lLmh0bWw6IEFkZGVkLgotCi0yMDEwLTA2LTIzICBOaWtvbGFzIFppbW1lcm1hbm4g
IDxuemltbWVybWFubkByaW0uY29tPgotCi0gICAgICAgIE5vdCByZXZpZXdlZC4gRm9yZ290IHRv
IHVwZGF0ZSByZXN1bHQgb2YgZmFzdC94cGF0aC9uYW1lc3BhY2UtdnMtcHJlZGljYXRlLmh0bWwg
YWZ0ZXIgdGhlIFNWRyByZW5kZXJlciBjcmVhdGlvbiBjaGFuZ2VzLgotCi0gICAgICAgICogZmFz
dC94cGF0aC9uYW1lc3BhY2UtdnMtcHJlZGljYXRlLWV4cGVjdGVkLnR4dDoKLQotMjAxMC0wNi0y
MyAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdl
ZCwgdGVzdCBleHBlY3RhdGlvbiB1cGRhdGUuCi0KLSAgICAgICAgQWRkIGV4cGVjdGF0aW9ucyBm
b3IgcjYxNjY3IGFuZCByNjE2NjkuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51
eC9zdmcvY3VzdG9tL2J1ZzQ1MzMxLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9zdmcvZm9yZWlnbk9iamVjdDogQWRkZWQuCi0gICAg
ICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgvc3ZnL2ZvcmVpZ25PYmplY3Qvbm8tY3Jhc2gt
d2l0aC1zdmctY29udGVudC1pbi1odG1sLWRvY3VtZW50LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9zdmcvZm9yZWlnbk9iamVjdC9z
dmctZG9jdW1lbnQtYXMtZGlyZWN0LWNoaWxkLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAg
ICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9zdmcvZm9yZWlnbk9iamVjdC9zdmctZG9j
dW1lbnQtaW4taHRtbC1kb2N1bWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgvc3ZnL2ZvcmVpZ25PYmplY3QvdGV4dC10cmVmLTAy
LWItZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
LWxpbnV4L3N2Zy9mb3JlaWduT2JqZWN0L3RleHQtdHJlZi0wMi1iLWV4cGVjdGVkLnBuZzogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL3N2Zy9jdXN0b20vYnVnNDUzMzEt
ZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdp
bi9zdmcvY3VzdG9tL2J1ZzQ1MzMxLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxh
dGZvcm0vY2hyb21pdW0td2luL3N2Zy9jdXN0b20vYnVnNDUzMzEtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vc3ZnL2ZvcmVpZ25PYmplY3Q6IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9zdmcvZm9yZWlnbk9iamVjdC9u
by1jcmFzaC13aXRoLXN2Zy1jb250ZW50LWluLWh0bWwtZG9jdW1lbnQtZXhwZWN0ZWQuY2hlY2tz
dW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9zdmcvZm9yZWlnbk9i
amVjdC9uby1jcmFzaC13aXRoLXN2Zy1jb250ZW50LWluLWh0bWwtZG9jdW1lbnQtZXhwZWN0ZWQu
cG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vc3ZnL2ZvcmVpZ25P
YmplY3Qvbm8tY3Jhc2gtd2l0aC1zdmctY29udGVudC1pbi1odG1sLWRvY3VtZW50LWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL3N2Zy9mb3JlaWdu
T2JqZWN0L3N2Zy1kb2N1bWVudC1hcy1kaXJlY3QtY2hpbGQtZXhwZWN0ZWQuY2hlY2tzdW06IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9zdmcvZm9yZWlnbk9iamVjdC9z
dmctZG9jdW1lbnQtYXMtZGlyZWN0LWNoaWxkLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vY2hyb21pdW0td2luL3N2Zy9mb3JlaWduT2JqZWN0L3N2Zy1kb2N1bWVudC1h
cy1kaXJlY3QtY2hpbGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS13aW4vc3ZnL2ZvcmVpZ25PYmplY3Qvc3ZnLWRvY3VtZW50LWluLWh0bWwtZG9jdW1l
bnQtZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
LXdpbi9zdmcvZm9yZWlnbk9iamVjdC9zdmctZG9jdW1lbnQtaW4taHRtbC1kb2N1bWVudC1leHBl
Y3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9zdmcvZm9y
ZWlnbk9iamVjdC9zdmctZG9jdW1lbnQtaW4taHRtbC1kb2N1bWVudC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9zdmcvZm9yZWlnbk9iamVjdC90
ZXh0LXRyZWYtMDItYi1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0td2luL3N2Zy9mb3JlaWduT2JqZWN0L3RleHQtdHJlZi0wMi1iLWV4cGVjdGVk
LnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL3N2Zy9mb3JlaWdu
T2JqZWN0L3RleHQtdHJlZi0wMi1iLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxh
dGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgotCi0yMDEwLTA2LTIzICBZdXpv
IEZ1amlzaGltYSAgPHl1em9AZ29vZ2xlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBTaGlu
aWNoaXJvIEhhbWFqaS4KLQotICAgICAgICBJbXBsZW1lbnQgcGFnZSBmb3JtYXQgZGF0YSBwcm9n
cmFtbWluZyBpbnRlcmZhY2UuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zNzUzOAotCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBl
Y3RhdGlvbnMudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgotICAgICAgICAq
IHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL1NraXBwZWQ6Ci0g
ICAgICAgICogcHJpbnRpbmcvcGFnZS1mb3JtYXQtZGF0YS1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIHByaW50aW5nL3BhZ2UtZm9ybWF0LWRhdGEuaHRtbDogQWRkZWQuCi0KLTIwMTAt
MDYtMjMgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+Ci0KLSAgICAg
ICAgTm90IHJldmlld2VkLiBGb3Jnb3QgdG8gaW5jbHVkZSBmb3VyIGZpbGVzIGluIHRoZSBsYXN0
IGNvbW1pdC4KLQotICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2J1ZzQ1MzMxLWV4
cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9idWc0NTMzMS1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21hYy9z
dmcvY3VzdG9tL2J1ZzQ1MzMxLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogc3ZnL2N1
c3RvbS9idWc0NTMzMS5zdmc6IEFkZGVkLgotCi0yMDEwLTA2LTIzICBOaWtvbGFzIFppbW1lcm1h
bm4gIDxuemltbWVybWFubkByaW0uY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2Vp
ZGVsLgotCi0gICAgICAgIFJlcHJvZHVjaWJsZSBjcmFzaCBpbiBjb20uYXBwbGUuV2ViQ29yZSAw
eDAxZWQzNzg0IFdlYkNvcmU6OlJlbmRlckxpbmVCb3hMaXN0OjphcHBlbmRMaW5lQm94KFdlYkNv
cmU6OklubGluZUZsb3dCb3gqKSArIDM2Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD00MDk1MwotCi0gICAgICAgIFJFR1JFU1NJT04gKHI1ODIwOS01ODIz
MSk6IE1lbW9yeSBjb3JydXB0aW9uIHdpdGggaW52YWxpZCBTVkcKLSAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMTczCi0KLSAgICAgICAgQWRkZWQgc2V2
ZXJhbCBuZXcgbGF5b3V0IHRlc3RzIGNvdmVyaW5nIHRoZSBjcmFzaGVzIHdpdGggPGZvcmVpZ25P
YmplY3Q+IGFuZC9vciBpbnZhbGlkIFNWRyBkb2N1bWVudHMuCi0KLSAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvc3ZnL2N1c3RvbS9idWc0NTMzMS1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAg
ICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnVnNDUzMzEtZXhwZWN0ZWQucG5nOiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9idWc0NTMzMS1leHBlY3RlZC50
eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvZm9yZWlnbk9iamVjdDogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9mb3JlaWduT2JqZWN0L2Rpc2FsbG93ZWQt
c3ZnLW5vZGVzLWFzLWRpcmVjdC1jaGlsZHJlbi1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0g
ICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9mb3JlaWduT2JqZWN0L2Rpc2FsbG93ZWQtc3ZnLW5v
ZGVzLWFzLWRpcmVjdC1jaGlsZHJlbi1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL21hYy9zdmcvZm9yZWlnbk9iamVjdC9kaXNhbGxvd2VkLXN2Zy1ub2Rlcy1hcy1kaXJl
Y3QtY2hpbGRyZW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
c3ZnL2ZvcmVpZ25PYmplY3Qvbm8tY3Jhc2gtd2l0aC1zdmctY29udGVudC1pbi1odG1sLWRvY3Vt
ZW50LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3Zn
L2ZvcmVpZ25PYmplY3Qvbm8tY3Jhc2gtd2l0aC1zdmctY29udGVudC1pbi1odG1sLWRvY3VtZW50
LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9mb3JlaWdu
T2JqZWN0L25vLWNyYXNoLXdpdGgtc3ZnLWNvbnRlbnQtaW4taHRtbC1kb2N1bWVudC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvZm9yZWlnbk9iamVjdC9z
dmctZG9jdW1lbnQtYXMtZGlyZWN0LWNoaWxkLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2ZvcmVpZ25PYmplY3Qvc3ZnLWRvY3VtZW50LWFzLWRp
cmVjdC1jaGlsZC1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21hYy9z
dmcvZm9yZWlnbk9iamVjdC9zdmctZG9jdW1lbnQtYXMtZGlyZWN0LWNoaWxkLWV4cGVjdGVkLnR4
dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9mb3JlaWduT2JqZWN0L3N2Zy1k
b2N1bWVudC1pbi1odG1sLWRvY3VtZW50LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAg
ICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2ZvcmVpZ25PYmplY3Qvc3ZnLWRvY3VtZW50LWluLWh0bWwt
ZG9jdW1lbnQtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3Zn
L2ZvcmVpZ25PYmplY3Qvc3ZnLWRvY3VtZW50LWluLWh0bWwtZG9jdW1lbnQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2ZvcmVpZ25PYmplY3QvdGV4dC10
cmVmLTAyLWItZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL21h
Yy9zdmcvZm9yZWlnbk9iamVjdC90ZXh0LXRyZWYtMDItYi1leHBlY3RlZC5wbmc6IEFkZGVkLgot
ICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvZm9yZWlnbk9iamVjdC90ZXh0LXRyZWYtMDItYi1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHN2Zy9jdXN0b20vYnVnNDUzMzEuc3ZnOiBB
ZGRlZC4KLSAgICAgICAgKiBzdmcvZm9yZWlnbk9iamVjdDogQWRkZWQuCi0gICAgICAgICogc3Zn
L2ZvcmVpZ25PYmplY3QvZGlzYWxsb3dlZC1zdmctbm9kZXMtYXMtZGlyZWN0LWNoaWxkcmVuLnN2
ZzogQWRkZWQuCi0gICAgICAgICogc3ZnL2ZvcmVpZ25PYmplY3Qvbm8tY3Jhc2gtd2l0aC1zdmct
Y29udGVudC1pbi1odG1sLWRvY3VtZW50LnN2ZzogQWRkZWQuCi0gICAgICAgICogc3ZnL2ZvcmVp
Z25PYmplY3Qvc3ZnLWRvY3VtZW50LWFzLWRpcmVjdC1jaGlsZC5zdmc6IEFkZGVkLgotICAgICAg
ICAqIHN2Zy9mb3JlaWduT2JqZWN0L3N2Zy1kb2N1bWVudC1pbi1odG1sLWRvY3VtZW50LnN2Zzog
QWRkZWQuCi0gICAgICAgICogc3ZnL2ZvcmVpZ25PYmplY3QvdGV4dC10cmVmLTAyLWIuc3ZnOiBB
ZGRlZC4KLQotMjAxMC0wNi0yMiAgRGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+Ci0K
LSAgICAgICAgUmV2aWV3ZWQgYnkgbm9ib2R5IChzaW1wbGUgcXQgdGVzdCBmaXgpLgotCi0gICAg
ICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDogQWRkZWQgYW4geGhyIHRlc3Qgd2hpY2ggcmVxdWly
ZXMgcHJvZ3Jlc3MgZXZlbnRzCi0gICAgICAgIG5leHQgdG8gdGhlIG90aGVyIHhociB0ZXN0IHdo
aWNoIGFyZSBkaXNhYmxlZCBkdWUgdG8gcmVxdWlyaW5nIHByb2dyZXNzIGV2ZW50cy4KLQotMjAx
MC0wNi0yMiAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5y
ZXZpZXdlZCwgdGVzdCBleHBlY3RhdGlvbiB1cGRhdGUuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6IHNlbmQtZGF0YS1ibG9iLmh0bWwgZmFpbHMu
Ci0KLTIwMTAtMDYtMjIgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgotCi0gICAg
ICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCi0KLSAgICAgICAgUkVHUkVTU0lP
TjogKHI0NzI5MSk6IFVwbG9hZCBwcm9ncmVzcyBldmVudHMgYXJlIG5vdCBmaXJlZCBmb3Igc2lt
cGxlIGNyb3NzLXNpdGUgWEhSLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MzkwMjkKLQotICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
c2ltcGxlLWNyb3NzLW9yaWdpbi1wcm9ncmVzcy1ldmVudHMtZXhwZWN0ZWQudHh0OiBVcGRhdGUg
cmVzdWx0cy4KLSAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3NpbXBsZS1jcm9z
cy1vcmlnaW4tcHJvZ3Jlc3MtZXZlbnRzLmh0bWw6IEFkZCBhIHRlc3Qgd2hpY2ggYWRkcwotICAg
ICAgICAgIGFuIHVwbG9hZCBwcm9ncmVzcyBldmVudCBoYW5kbGVyIGJlZm9yZSBYTUxIdHRwUmVx
dWVzdC5zZW5kKCkgaXMgY2FsbGVkLgotCi0yMDEwLTA2LTIyICBLaW51a28gWWFzdWRhICA8a2lu
dWtvQGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLgotCi0gICAgICAgIFVwZGF0
ZSB0ZXN0IGV4cGVjdGF0aW9ucyBmb3IgcXQvZ3RrLgotCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxh
dGZvcm0vcXQvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKLQotMjAx
MC0wNi0yMiAgQWxwaGEgTGFtICA8aGNsYW1AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2
aWV3ZWQuIEJ1aWxkIGZpeC4KLQotICAgICAgICBSZWJhc2VsaW5lIHNvbWUgdGVzdCByZXN1bHRz
IHRvIG1ha2UgYnVpbGQgYm90cyBncmVlbiBhZ2Fpbi4KLQotICAgICAgICAqIHBsYXRmb3JtL2No
cm9taXVtLW1hYy9mYXN0L2pzL3N3aXRjaC1iZWhhdmlvdXItZXhwZWN0ZWQudHh0OiBSZW1vdmVk
LgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1hYy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1
Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9y
bS9jaHJvbWl1bS13aW4vZmFzdC9qcy9zd2l0Y2gtYmVoYXZpb3VyLWV4cGVjdGVkLnR4dDogUmVt
b3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vaW5zcGVjdG9yL3RpbWVsaW5l
LXBhcnNlLWh0bWwtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdp
bi93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVk
LnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6
Ci0KLTIwMTAtMDYtMjIgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgotCi0g
ICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgQWRkIEJsb2JCdWlsZGVy
LmlkbCB0byBleHBvc2UgQmxvYkJ1aWxkZXIgaW50ZXJmYWNlCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDU5MwotCi0gICAgICAgIChSZXN1Ym1pdHRp
bmcgd2l0aCB0aGUgY29ycmVjdCBmaWxlIHNldC4pCi0KLSAgICAgICAgQWRkIG5ldyBsYXlvdXQg
dGVzdHMgdG8gdGVzdCBCbG9iQnVpbGRlciBpbnRlcmZhY2UuCi0gICAgICAgIEFsc28gdXBkYXRl
IHRlc3QgZXhwZWN0YXRpb25zIGFmZmVjdGVkIGJ5IGFkZGluZyB0aGUgY29uc3RydWN0b3JzIHRv
IERPTVdpbmRvdy4KLQotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGll
cy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0
eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20vY29uc3RydWN0
ZWQtb2JqZWN0cy1wcm90b3R5cGVzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9w
cm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9kb20v
cHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9j
YWwvYmxvYi9yZXNvdXJjZXMvaHlicmlkLWJsb2ItdXRpbC5qczogQWRkZWQuCi0gICAgICAgICog
aHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sOiBBZGRlZC4K
LSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2NyaXB0LXRlc3RzL3NlbmQtZGF0YS1i
bG9iLmpzOiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2NyaXB0LXRl
c3RzL3NlbmQtaHlicmlkLWJsb2IuanM6IEFkZGVkLgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9j
YWwvYmxvYi9zY3JpcHQtdGVzdHMvc2VuZC1zbGljZWQtZGF0YS1ibG9iLmpzOiBBZGRlZC4KLSAg
ICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1kYXRhLWJsb2ItZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1kYXRhLWJsb2Iu
aHRtbDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtaHlicmlk
LWJsb2ItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2Js
b2Ivc2VuZC1oeWJyaWQtYmxvYi5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xv
Y2FsL2Jsb2Ivc2VuZC1zbGljZWQtZGF0YS1ibG9iLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAg
ICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtc2xpY2VkLWRhdGEtYmxvYi5odG1sOiBB
ZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL3Jlc291cmNlcy9maWxlLWZvci1kcmFn
LXRvLXNlbmQyLnR4dDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9z
dC1hbmQtdmVyaWZ5LWh5YnJpZC5jZ2k6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0gICAgICAg
ICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6IEFkZGVkIHNlbmQtaHlicmlkLWJsb2IuaHRtbCBhbmQg
c2VuZC1zbGljZWQtZGF0YS1ibG9iLmh0bWwgYmVjYXVzZSB0aGV5IG5lZWQgZXZlbnRTZW5kZXIu
YmVnaW5EcmFnV2l0aEZpbGVzIGFuZCBCbG9iLnNsaWNlLgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0
b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9kb20vcHJvdG90
eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lw
cGVkOiBBZGRlZCBzZW5kLWh5YnJpZC1ibG9iLmh0bWwgYW5kIHNlbmQtc2xpY2VkLWRhdGEtYmxv
Yi5odG1sIGJlY2F1c2UgdGhleSBuZWVkIGV2ZW50U2VuZGVyLmJlZ2luRHJhZ1dpdGhGaWxlcyBh
bmQgQmxvYi5zbGljZS4KLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3Qv
ZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL1NraXBwZWQ6IEFkZGVkIHNlbmQtaHlicmlk
LWJsb2IuaHRtbCBhbmQgc2VuZC1zbGljZWQtZGF0YS1ibG9iLmh0bWwgYmVjYXVzZSB0aGV5IG5l
ZWQgZXZlbnRTZW5kZXIuYmVnaW5EcmFnV2l0aEZpbGVzIGFuZCBCbG9iLnNsaWNlLgotICAgICAg
ICAqIHBsYXRmb3JtL3dpbi9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0
b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS93aW4vZmFzdC9kb20vcHJvdG90
eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9m
YXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotCi0yMDEwLTA2LTIy
ICBBZGVsZSBQZXRlcnNvbiAgPGFkZWxlQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KLQotICAgICAgICBUZXN0IGZvciBDcmFzaCB3aGVuIHRoZSByZW5kZXJl
ciBmb3IgdGhlIGJ1dHRvbiBpbiA8aW5wdXQgdHlwZT0ibnVtYmVyIj4gZ29lcyBhd2F5IGR1cmlu
ZyBldmVudCBoYW5kbGluZwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDEwMTMKLQotICAgICAgICAqIGZhc3QvZm9ybXMvaW5wdXQtbnVtYmVyLWNyYXNo
LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogZmFzdC9mb3Jtcy9pbnB1dC1udW1iZXIt
Y3Jhc2guaHRtbDogQWRkZWQuCi0KLTIwMTAtMDYtMjIgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJr
aXQub3JnPgotCi0gICAgICAgIE5vIHJldmlldywgc2tpcHBpbmcgdGVzdCBkdWUgdG8gcmV2ZWFs
ZWQgYnVnIGluIENsaXBib2FyZFF0LgotCi0gICAgICAgIGVkaXRpbmcvZXhlY0NvbW1hbmQvY29w
eS13aXRob3V0LXNlbGVjdGlvbi5odG1sIGZhaWxzIG9uIFF0IGFmdGVyIHI2MTYzNwotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwMjUKLQotICAgICAg
ICBUaGUgUXQgQ2xpcGJvYXJkOjpzZXREYXRhIGNvZGUgd3JvbmdseSByZWludGVycHJldF9jYXN0
cyBVQ2hhcgotICAgICAgICBkYXRhIGFzIGNoYXIqIGRhdGEuICBUaGlzIHdhcyBleHBvc2VkIGJ5
IHRoZSBwcmV2aW91cyBjb21taXQKLSAgICAgICAgd2hpY2ggbm8gbG9uZyBzdHJpcHMgXDAgY2hh
cmFjdGVycyBkdXJpbmcgaW5uZXJIVE1MLgotCi0gICAgICAgIFNraXBwaW5nIHRoZSBhZmZlY3Rl
ZCB0ZXN0IHVudGlsIGEgUXQgcGVyc29uIGNhbiBmaXgKLSAgICAgICAgcGxhdGZvcm0vcXQvQ2xp
cGJvYXJkUXQuY3BwCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgotCi0yMDEwLTA2
LTIyICBUb255IEdlbnRpbGNvcmUgIDx0b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2
aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgQWRkIGxheW91dCB0ZXN0cyB3aGljaCB0
ZXN0IGxpbmUgbnVtYmVycyBmb3IgYm90aCBpbmxpbmUgYW5kIGV2ZW50IGhhbmRsZXIKLSAgICAg
ICAgc2NyaXB0cyBpbiBIVE1MIGRvY3VtZW50cy4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNjQ5Ci0KLSAgICAgICAgKiBmYXN0L2pzL3Jlc291cmNl
cy9zY3JpcHQtbGluZS1udW1iZXIuanM6IEFkZGVkLgotICAgICAgICAoZ2V0TGluZUZyb21FcnJv
cik6Ci0gICAgICAgIChhc3NlcnRFcnJvck9uTGluZSk6Ci0gICAgICAgICogZmFzdC9qcy9zY3Jp
cHQtbGluZS1udW1iZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L2pzL3Nj
cmlwdC1saW5lLW51bWJlci5odG1sOiBBZGRlZC4KLQotMjAxMC0wNi0yMiAgRXJpYyBTZWlkZWwg
IDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQot
ICAgICAgICBGcmFnbWVudCBwYXJzaW5nIG5lZWRzIHRvIGdvIHRocm91Z2ggdGhlIEhUTUw1IFBh
cnNlciBjb2RlIHBhdGgKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQwNjQ1Ci0KLSAgICAgICAgKiBmYXN0L2NhbnZhcy9jYW52YXMtZ2V0Q29udGV4dC1p
bnZhbGlkLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgIC0gXDAgaXMgbm93IGNvbnZlcnRlZCB0byBc
dUZGRkQgcGVyIEhUTUw1LgotICAgICAgICAqIGZhc3QvanMvbnVsbC1jaGFyLWluLXN0cmluZy1l
eHBlY3RlZC50eHQ6IGRpdHRvLgotICAgICAgICAqIGZhc3QvanMvc3dpdGNoLWJlaGF2aW91ci1l
eHBlY3RlZC50eHQ6IGRpdHRvLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2NvbW1lbnQtaW4tdGV4
dGFyZWEtZXhwZWN0ZWQudHh0OgotICAgICAgICAgLSA8dGV4dGFyZWE+IGlzIHBhcnNlZCBpbiB0
aGUgUkNEQVRBIHN0YXRlLCB3aGljaCBtZWFucwotICAgICAgICAgICB0aGF0IGNvbW1lbnRzIGFy
ZSBpZ25vcmVkLCB0aHVzIHRoZSA8L3RleHRhcmVhPiBpbiB0aGUKLSAgICAgICAgICAgY29tbWVu
dCBjb3JyZWN0bHkgY2xvc2VzIHRoZSA8dGV4dGFyZWE+LiAgVGhpcyB0ZXN0IGlzIGludmFsaWQu
Ci0gICAgICAgICAgIE91ciBuZXcgYmVoYXZpb3IgbWF0Y2hlcyBtaW5lZmllbGQuCi0gICAgICAg
ICogZmFzdC90b2tlbml6ZXIvbGVzc3RoYW4tdGVybWluYXRlcy10YWdzLWFuZC1hdHRycy1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgICAtIFRoaXMgdGVzdCBpcyBpbnZhbGlkIGFuZCBwcm9iYWJseSBz
aG91bGQganVzdCBiZSByZW1vdmVkLgotICAgICAgICAgICBUaGlzIHNhbWUgYmVoYXZpb3IgaXMg
dGVzdGVkIGJ5IGZhc3QvaW52YWxpZC8wMTYuaHRtbC4KLSAgICAgICAgKiBpbnNwZWN0b3IvdGlt
ZWxpbmUtcGFyc2UtaHRtbC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICAtIFRoZSAiZXh0cmEiIFBh
cnNlSFRNTCBpcyBleHBlY3RlZC4gIFRoZSBIVE1MNSBQYXJzZXIgdGVsbHMgdGhlCi0gICAgICAg
ICAgIGluc3BlY3RvciBhYm91dCBldmVyeSBwYXJzZXIgcHVtcCwgZXZlbiBvbmVzIHdoaWNoIHB1
bXAgbm8gZGF0YS4KLSAgICAgICAgICAgVGhlIEhUTUw1IHBhcnNlciBwdW1wcyBvbmUgbGFzdCB0
aW1lIGluIGZpbmlzaCgpIHRvIGZsdXNoIGFueQotICAgICAgICAgICBidWZmZXJlZCBjaGFyYWN0
ZXJzLiAgRXZlbnR1YWxseSB3ZSdsbCB0ZWFjaCB0aGUgaW5zcGVjdG9yIHRvCi0gICAgICAgICAg
IGZpbHRlciBvdXQgKG5vdCBkaXNwbGF5KSAwLXNpemVkIHB1bXBzLgotICAgICAgICAqIHN0b3Jh
Z2UvZG9tc3RvcmFnZS9jb21wbGV4LXZhbHVlcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICAtIFww
IGlzIG5vdyBjb252ZXJ0ZWQgdG8gXHVGRkZEIHBlciBIVE1MNQotICAgICAgICAqIHN2Zy9kb20v
ZnV6ei1wYXRoLXBhcnNlci1leHBlY3RlZC50eHQ6IGRpdHRvLgotICAgICAgICAqIHN2Zy9kb20v
cmdiLWNvbG9yLXBhcnNlci1leHBlY3RlZC50eHQ6IGRpdHRvCi0gICAgICAgICogd2Vic29ja2V0
L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQ6IGRpdHRv
LgotCi0yMDEwLTA2LTIyICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KLQotICAgICAg
ICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJlbi4KLQotICAgICAgICBUd28gZmFzdC9keW5hbWlj
IHRlc3RzIG5lZWRsZXNzbHkgZGVwZW5kIG9uIGxlZ2FjeSA8dGFnPHRhZz4gcGFyc2luZyBiZWhh
dmlvcgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5
NDYKLQotICAgICAgICBUaGVzZSB0d28gdGVzdHMgd291bGQgZmFpbCB3aGVuIHdlIHR1cm5lZCBv
bgotICAgICAgICB0aGUgSFRNTDUgTGV4ZXIgY29kZSBwYXRoIGZvciBEb2N1bWVudEZyYWdtZW50
IHBhcnNpbmcuCi0gICAgICAgIFRoaXMgb2xkIHBhcnNlciBxdWlyayBpcyBjb3ZlcmVkIGJ5IHNl
dmVyYWwgb3RoZXIgdGVzdHMKLSAgICAgICAgaW5jbHVkaW5nIGZhc3QvaW52YWxpZC8wMTYuaHRt
bC4KLQotICAgICAgICAqIGZhc3QvZHluYW1pYy9pbnNlcnRBZGphY2VudEhUTUwuaHRtbDoKLSAg
ICAgICAgKiBmYXN0L2R5bmFtaWMvaW5zZXJ0QWRqYWNlbnRUZXh0Lmh0bWw6Ci0KLTIwMTAtMDYt
MjIgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlci4KLQotICAgICAgICBBWDogSWYgYW4gZWxlbWVudCB0aGF0IGlz
IGEgY29udGludWF0aW9uIGlzIHJlbW92ZWQsIGl0cyBwYXJlbnQgdHJlZSBpcyBub3Qgbm90aWZp
ZWQgYXBwcm9wcmlhdGVseSB0aGF0IHRoZWlyIGNoaWxkcmVuIGhhdmUgY2hhbmdlZAotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwMDAKLQotICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvcmVtb3ZlZC1jb250aW51YXRpb24tZWxlbWVudC1jYXVzZXMtY3Jh
c2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L3JlbW92ZWQt
Y29udGludWF0aW9uLWVsZW1lbnQtY2F1c2VzLWNyYXNoLmh0bWw6IEFkZGVkLgotCi0yMDEwLTA2
LTIyICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCi0KLSAgICAgICAgV2ViIEluc3BlY3RvcjogaW5zcGVj
dG9yL2VsZW1lbnRzLXBhbmVsLWxpbWl0ZWQtY2hpbGRyZW4uaHRtbCB0ZXN0IGZhaWxzCi0gICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDkyNAotCi0gICAg
ICAgICogaHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5zcGVjdG9yLXRlc3QuanM6Ci0gICAgICAgIChv
bmxvYWQpOgotICAgICAgICAoZnJvbnRlbmRfc2V0dXBUZXN0RW52aXJvbm1lbnQpOiBhbHdheXMg
c3RhcnQgaW5zcGVjdG9yIHRlc3Qgd2l0aCBFbGVtZW50cyBwYW5lbCBhcyBjdXJyZW50IG9uZS4K
LSAgICAgICAgKiBpbnNwZWN0b3IvZWxlbWVudHMtcGFuZWwtbGltaXRlZC1jaGlsZHJlbi5odG1s
OgotCi0yMDEwLTA2LTIyICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KLQotICAg
ICAgICBVbnJldmlld2VkLCB0ZXN0IGV4cGVjdGF0aW9uIHVwZGF0ZS4KLQotICAgICAgICAqIHBs
YXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBw
ZWFyYW5jZXMtY2FwYWNpdHktZXhwZWN0ZWQuY2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZvcm0v
Y2hyb21pdW0tbGludXgvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNl
cy1jYXBhY2l0eS1leHBlY3RlZC5wbmc6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGlu
dXgvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1yYXRpbmctcmVs
ZXZhbmN5LWV4cGVjdGVkLmNoZWNrc3VtOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxp
bnV4L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtcmF0aW5nLXJl
bGV2YW5jeS1leHBlY3RlZC5wbmc6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgv
ZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1vcHRpbXVtcy1leHBlY3RlZC5jaGVja3N1
bToKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJF
bGVtZW50L21ldGVyLW9wdGltdW1zLWV4cGVjdGVkLnBuZzoKLSAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS1saW51eC9mYXN0L3BhcnNlci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2luZy1tb2Rl
LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1s
aW51eC9mYXN0L3BhcnNlci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2luZy1tb2RlLWV4cGVjdGVk
LnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hU
TUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2FwYWNpdHktZXhwZWN0ZWQuY2hlY2tz
dW06Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVs
ZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2FwYWNpdHktZXhwZWN0ZWQucG5nOgotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLW9w
dGltdW1zLWV4cGVjdGVkLmNoZWNrc3VtOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1h
Yy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLW9wdGltdW1zLWV4cGVjdGVkLnBuZzoK
LSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1l
bnRzLXZzLXBhcnNpbmctbW9kZS1leHBlY3RlZC5jaGVja3N1bTogUmVtb3ZlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1lbnRzLXZzLXBh
cnNpbmctbW9kZS1leHBlY3RlZC5wbmc6IFJlbW92ZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hy
b21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2Fw
YWNpdHktZXhwZWN0ZWQuY2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2lu
L2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2FwYWNpdHktZXhw
ZWN0ZWQucG5nOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9IVE1M
TWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLXJhdGluZy1yZWxldmFuY3ktZXhwZWN0ZWQu
Y2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxN
ZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtcmF0aW5nLXJlbGV2YW5jeS1leHBlY3RlZC5w
bmc6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVs
ZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0ZWQuY2hlY2tzdW06Ci0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMt
ZXhwZWN0ZWQucG5nOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L3BhcnNl
ci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2luZy1tb2RlLWV4cGVjdGVkLmNoZWNrc3VtOgotICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L3BhcnNlci9icm9rZW4tY29tbWVudHMt
dnMtcGFyc2luZy1tb2RlLWV4cGVjdGVkLnBuZzoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS13aW4vZmFzdC9wYXJzZXIvYnJva2VuLWNvbW1lbnRzLXZzLXBhcnNpbmctbW9kZS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRp
b25zLnR4dDoKLQotMjAxMC0wNi0yMiAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgot
Ci0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAgIFVwb24gY2xvc2Vy
IHJlYWRpbmcgb2YgdGhlIHNwZWMsIHdlIHRoaW5rIG91ciBiZWhhdmlvciBpcyBjb3JyZWN0Lgot
ICAgICAgICBXZSdsbCBkb3VibGUtY2hlY2sgd2l0aCB0aGUgd29ya2luZyBncm91cC4KLQotICAg
ICAgICAqIGZhc3QvdG9rZW5pemVyL3dyaXRlLW9uLWxvYWQtZXhwZWN0ZWQudHh0OgotICAgICAg
ICAqIGZhc3QvdG9rZW5pemVyL3dyaXRlLW9uLWxvYWQuaHRtbDoKLQotMjAxMC0wNi0yMCAgTU9S
SVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBL
ZW50IFRhbXVyYS4KLQotICAgICAgICA8bWV0ZXI+IHNob3VsZCBiZSB5ZWxsb3cgd2hlbiAgbWlu
IDwgdmFsdWUgPCBsb3cgPCBvcHRpbXVtCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD00MDgyNAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KICAgICAgICAgCi0gICAgICAgIFVwZGF0ZSBvdmVybG9va2VkIGJyb2tlbiB0ZXN0IHJlc3Vs
dHMuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9t
ZXRlci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC5jaGVja3N1bToKLSAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1j
YXBhY2l0eS1leHBlY3RlZC5wbmc6Ci0gICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvZG9tL0hU
TUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0ZWQuY2hlY2tzdW06Ci0gICAgICAg
ICogcGxhdGZvcm0vbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMt
ZXhwZWN0ZWQucG5nOgotCi0yMDEwLTA2LTIyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgRm9sbG93
IHRoZSBIVE1MNSBzcGVjIG1vcmUgY2xvc2VseSB3LnIudC4gd2hlbiB0byBzYXZlIHRoZSBpbnNl
cnRpb24gcG9pbnQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwOTc2Ci0KLSAgICAgICAgVGhpcyB0ZXN0IG5vIGxvbmdlciBhc3NlcnRzLiAgVGhlIG91
dHB1dCBpcyBpbmNvcnJlY3QsIGhvd2V2ZXIuICBJJ2xsCi0gICAgICAgIGZpeCB0aGUgb3V0cHV0
IGluIHRoZSBuZXh0IHBhdGNoLgotCi0gICAgICAgICogZmFzdC90b2tlbml6ZXIvd3JpdGUtb24t
bG9hZC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvdG9rZW5pemVyL3dyaXRl
LW9uLWxvYWQuaHRtbDogQWRkZWQuCi0KLTIwMTAtMDYtMjEgIEp1bGllbiBDaGFmZnJhaXggIDxq
Y2hhZmZyYWl4QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3Nr
dXJ5YWtvdi4KLQotICAgICAgICBUZXN0cyBmb3I6Ci0gICAgICAgIFNwYWNlIHNob3VsZCBiZSBh
bGxvd2VkIGJldHdlZW4gLS0gYW5kID4gaW4gY29tbWVudCBlbmQKLSAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTQ1Ci0KLSAgICAgICAgKiBmYXN0L2Nz
cy93b3JkLXNwYWNlLWV4dHJhLmh0bWw6IFR3ZWFrZWQgdGhlIGNvbW1lbnQgYXMgLS0gPiBpcyBu
b3cKLSAgICAgICAgYSB2YWxpZCBjb21tZW50IGVuZC4KLQotICAgICAgICAqIGZhc3QvcGFyc2Vy
L2Jyb2tlbi1jb21tZW50LTEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudC0xLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2Vy
L2Jyb2tlbi1jb21tZW50LTItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudC0yLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2Vy
L2Jyb2tlbi1jb21tZW50LTMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudC0zLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2Vy
L2Jyb2tlbi1jb21tZW50LTQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudC00Lmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2Vy
L2Jyb2tlbi1jb21tZW50LTUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudC01Lmh0bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2Vy
L2Jyb2tlbi1jb21tZW50LTYtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3Bh
cnNlci9icm9rZW4tY29tbWVudC02Lmh0bWw6IEFkZGVkLgotICAgICAgICBUaG9zZSB0ZXN0IGNo
ZWNrcyB0aGF0IGJyb2tlbiBjb21tZW50cyBpbiBib2R5IGFyZSBjb3JyZWN0bHkgcGFyc2VkLgot
ICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQtMS1leHBlY3RlZC50
eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQt
MS5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3BhcnNlci9icm9rZW4tY29tbWVudC1pbi1o
ZWFkLTItZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3BhcnNlci9icm9rZW4t
Y29tbWVudC1pbi1oZWFkLTIuaHRtbDogQWRkZWQuCi0gICAgICAgICogZmFzdC9wYXJzZXIvYnJv
a2VuLWNvbW1lbnQtaW4taGVhZC0zLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogZmFz
dC9wYXJzZXIvYnJva2VuLWNvbW1lbnQtaW4taGVhZC0zLmh0bWw6IEFkZGVkLgotICAgICAgICAq
IGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQtNC1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIGZhc3QvcGFyc2VyL2Jyb2tlbi1jb21tZW50LWluLWhlYWQtNC5odG1sOiBB
ZGRlZC4KLSAgICAgICAgKiBmYXN0L3BhcnNlci9icm9rZW4tY29tbWVudC1pbi1oZWFkLTUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L3BhcnNlci9icm9rZW4tY29tbWVudC1p
bi1oZWFkLTUuaHRtbDogQWRkZWQuCi0gICAgICAgIFRob3NlIHRlc3QgY2hlY2tzIHRoYXQgYnJv
a2VuIGNvbW1lbnRzIGluIGhlYWQgYXJlIGNvcnJlY3RseSBwYXJzZWQuCi0KLSAgICAgICAgKiBm
YXN0L3BhcnNlci9icm9rZW4tY29tbWVudHMtdnMtcGFyc2luZy1tb2RlLmh0bWw6IE5lZWRlZCB0
byB3cmFwIHRoZSBicm9rZW4gY29tbWVudAotICAgICAgICBpbiBhIHRpdGxlIGFzIHdlIG1hdGNo
IEZGIGhlcmUgYW5kIHdvdWxkIG5vdCByZWNvdmVyIGZyb20gaXQuCi0KLSAgICAgICAgKiBmYXN0
L3BhcnNlci9jb21tZW50cy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9wYXJzZXIvY29t
bWVudHMuaHRtbDoKLSAgICAgICAgQWRkZWQgbW9yZSB0ZXN0cyBmb3IgY29tbWVudCBwYXJzaW5n
LiBNYWRlIHN1cmUgdGhhdCB3ZSBjbG9zZSBlbXB0eSBjb21tZW50cwotICAgICAgICA8IS0tPiBh
bmQgPCEtLS0+IGFzIGlzIHNwZWNpZmllZCBpbiBIVE1MNS4KLQotMjAxMC0wNi0yMSAgQWRhbSBC
YXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2Vp
ZGVsLgotCi0gICAgICAgIFNhdmUgdGhlIGluc2VydGlvbiBwb2ludCBiZWZvcmUgYmVmb3JlbG9h
ZCBldmVudHMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTQwOTczCi0KLSAgICAgICAgVXBkYXRlIGV4cGVjdGVkIHJlc3VsdHMgdG8gc2hvdyB0aGUgcHJv
cGVyIGRvY3VtZW50LndyaXRlIG9yZGVyLgotCi0gICAgICAgICogZmFzdC90b2tlbml6ZXIvd3Jp
dGUtYmVmb3JlLWxvYWQtZXhwZWN0ZWQudHh0OgotCi0yMDEwLTA2LTIxICBBZGFtIEJhcnRoICA8
YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0K
LSAgICAgICAgZG9jdW1lbnQud3JpdGUgZnJvbSBCZWZvcmVMb2FkIHNob3VsZCBub3QgYXNzZXJ0
Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDk3MQot
Ci0gICAgICAgIFRlc3Qgd2hhdCBoYXBwZW5zIHdoZW4gd2UgZG9jdW1lbnQud3JpdGUgZnJvbSBh
IGJlZm9yZWxvYWQgZXZlbnQuCi0gICAgICAgIE5vdGljZSB0aGF0IHRoZSBvcmRlciBpcyB3cm9u
Zy4gIEknbGwgZml4IHRoYXQgaW4gYSBmb2xsb3d1cCBwYXRjaC4KLQotICAgICAgICAqIGZhc3Qv
dG9rZW5pemVyL3dyaXRlLWJlZm9yZS1sb2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAg
ICogZmFzdC90b2tlbml6ZXIvd3JpdGUtYmVmb3JlLWxvYWQuaHRtbDogQWRkZWQuCi0KLTIwMTAt
MDYtMjEgIERtaXRyeSBUaXRvdiAgPGRpbWljaEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5y
ZXZpZXdlZCwgc2tpcCBuZXcgbW9kYWwgdGVzdHMgb24gVGlnZXIgYW5kIHVwZGF0ZSBleHBlY3Rl
ZCByZXN1bHQgZm9yIENocm9taXVtLgotCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vZmFz
dC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0
Zm9ybS9tYWMtdGlnZXIvU2tpcHBlZDoKLQotMjAxMC0wNi0yMSAgRG1pdHJ5IFRpdG92ICA8ZGlt
aWNoQGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBmaXhpbmcgcXQtc3BlY2lm
aWMgZXhwZWN0ZWQgcmVzdWx0cyBmb3IgcjYxNTk5Ci0KLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9m
YXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAq
IHBsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6
Ci0KLTIwMTAtMDYtMjEgIFByYXNhZCBUYW1tYW5hICA8cHJhc2FkdEBjaHJvbWl1bS5vcmc+Ci0K
LSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIsIERtaXRyeSBUaXRvdi4KLQotICAgICAg
ICBEdW1wUmVuZGVyVHJlZSBzaG91bGQgYWxsb3cgdGVzdHMgd2l0aCBtb2RhbCBkaWFsb2dzCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTM1MAotCi0g
ICAgICAgIEFkZGVkIGEgbmV3IHRlc3Qgc2hvdy1tb2RhbC1kaWFsb2cuaHRtbCB0byBoYXJuZXNz
IHRlc3RzIHRvIHZlcmlmeSB0aGF0IHNob3dNb2RhbERpYWxvZyB3b3Jrcy4KLQotICAgICAgICBB
ZGRlZCBhIG5ldyB0ZXN0LCBzaG93LW1vZGFsLWRpYWxvZy1vbmJsdXItb25mb2N1cy5odG1sLCB0
aGF0IHRha2VzIGFkdmFudGFnZSBvZiB0aGUgc2hvd01vZGFsRGlhbG9nCi0gICAgICAgIGZ1bmN0
aW9uYWxpdHkgYWRkZWQgdG8gVUlEZWxlZ2F0ZS5tbS4gIFRoZSB0ZXN0IGlzIG9ubHkgZW5hYmxl
ZCBvbiBtYWMgZm9yIG5vdy4gIFRoaXMgdGVzdCB3aWxsIGNhdGNoCi0gICAgICAgIHJlZ3Jlc3Np
b25zIG9uIHRoZSBidWcgZml4IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzM5NjIuCi0KLSAgICAgICAgU3VwcG9ydCBmb3Igc2hvd01vZGFsRGlhbG9nIGFmZmVj
dGVkIHRoZSBleHBlY3RlZCBvdXRwdXQgZm9yIG1hbnkgdGVzdHMgdGhhdCBvcGVyYXRlIHVuZGVy
IHRoZSBhc3N1bXB0aW9uCi0gICAgICAgIHRoYXQgdGhlIG1ldGhvZCBpcyB1bmRlZmluZWQuICBN
b2RpZmllZCB0aGUgdGVzdHMgYWNjb3JkaW5nbHksIGluIHNvbWUgY2FzZXMgZGlzYWJsZWQgc2hv
d01vZGFsRGlhbG9nIChub3QKLSAgICAgICAgY3VycmVudGx5IHRlc3RlZCBhbnl3YXkuICBPcGVu
ZWQgYSBidWcgdG8gYWRkIHNob3dNb2RhbERpYWxvZyBzcGVjaWZpYyB0ZXN0cyB3aGVyZSBhcHBy
b3ByaWF0ZSAtIEJ1ZyMgMzk4OTcuCi0KLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93
LWZ1bmN0aW9uLWZyYW1lLWdldHRlci1wcmVjZWRlbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAg
KiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLWZyYW1lLWdldHRlci1wcmVjZWRlbmNl
Lmh0bWw6Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1mdW5jdGlvbi1uYW1lLWdl
dHRlci1wcmVjZWRlbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cv
d2luZG93LWZ1bmN0aW9uLW5hbWUtZ2V0dGVyLXByZWNlZGVuY2UuaHRtbDoKLSAgICAgICAgKiBm
YXN0L2RvbS9XaW5kb3cvd2luZG93LWxvb2t1cC1wcmVjZWRlbmNlLWV4cGVjdGVkLnR4dDoKLSAg
ICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWxvb2t1cC1wcmVjZWRlbmNlLmh0bWw6Ci0g
ICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dDoK
LSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMuaHRtbDoKLSAgICAg
ICAgKiBmYXN0L2RvbS9zY3JpcHQtdGVzdHMvcHJvdG90eXBlLWluaGVyaXRhbmNlLmpzOgotICAg
ICAgICBUd2VhayB0ZXN0cyBzbyB0aGF0IHNob3dNb2RhbERpYWxvZyBwYXJ0IGdldHMgZXhlcmNp
c2VkIG9ubHkgaWYgaXRzIGRlZmluZWQgdG8ga2VlcCBvdXRwdXQgY29uc2lzdGVudCBhY3Jvc3Mg
cGxhdGZvcm1zLgotICAgICAgICBXaGVyZSBpdHMgbm90IHBvc3NpYmxlLCBza2lwIHRoZSB0ZXN0
IGZvciBzaG93TW9kYWxEaWFsb2csIHdoaWNoIGlzIG5vdCBjdXJyZW50bHkgZXhlcmNpc2VkIGFu
eXdheS4KLQotICAgICAgICAqIGZhc3QvZXZlbnRzL3Jlc291cmNlcy9tb2RhbC1kaWFsb2cuaHRt
bDogQWRkZWQuCi0gICAgICAgICogZmFzdC9ldmVudHMvc2hvdy1tb2RhbC1kaWFsb2ctb25ibHVy
LW9uZm9jdXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L2V2ZW50cy9zaG93
LW1vZGFsLWRpYWxvZy1vbmJsdXItb25mb2N1cy5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBmYXN0
L2hhcm5lc3MvcmVzb3VyY2VzL21vZGFsLWRpYWxvZy5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBm
YXN0L2hhcm5lc3Mvc2hvdy1tb2RhbC1kaWFsb2ctZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAg
ICAgKiBmYXN0L2hhcm5lc3Mvc2hvdy1tb2RhbC1kaWFsb2cuaHRtbDogQWRkZWQuCi0gICAgICAg
IE5ldyB0ZXN0cyB0aGF0IHRha2UgYWR2YW50YWdlIG9mIHNob3dNb2RhbERpYWxvZyBpbiBEUlQu
Ci0KLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0Nv
bnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29k
ZS9TMTAuMi4yX0ExLjFfVDEtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5p
ay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVj
dXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UMTAtZXhwZWN0ZWQu
dHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25f
Q29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9D
b2RlL1MxMC4yLjJfQTEuMV9UMTEtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1
dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9F
eGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UMi1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlv
bl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFs
X0NvZGUvUzEwLjIuMl9BMS4xX1QzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3Nw
dXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5f
RXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDQtZXhwZWN0
ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRp
b25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZh
bF9Db2RlL1MxMC4yLjJfQTEuMV9UNS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9z
cHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0Fu
X0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1Q2LWV4cGVj
dGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0
aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2
YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDctZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMv
c3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19B
bl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UOC1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1
dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9F
dmFsX0NvZGUvUzEwLjIuMl9BMS4xX1Q5LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pz
L3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdf
QW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDEtZXhw
ZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVj
dXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJf
RXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UMTAtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3Qv
anMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmlu
Z19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UMTEt
ZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9F
eGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4y
LjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UMi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFz
dC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVy
aW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1Qz
LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBf
RXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAu
Mi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDQtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZh
c3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRl
cmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9U
NS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEw
X0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEw
LjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1Q2LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBm
YXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50
ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJf
VDctZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8x
MF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8x
MC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UOC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICog
ZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0Vu
dGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4y
X1Q5LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgVXBkYXRlIHRoZSBleHBlY3RlZCBvdXRwdXQgdG8g
cmVmbGVjdCB0aGUgZmFjdCB0aGF0IHRoZXNlIHRlc3RzIHBhc3Mgbm93LiAgU2tpcCB0aGUgdGVz
dHMgb24gZ3RrLCBxdCBhbmQgd2luLiAgVGhleSB3ZXJlIGFsbCBleHBlY3RlZAotICAgICAgICB0
byBmYWlsIGFueXdheS4gIFNvIG5vIGNvdmVyYWdlIGxvc3QuCi0KLSAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1jYWxsLWV4cGVjdGVkLnR4dDoKLSAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1jYWxsLmh0bWw6Ci0g
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtZ2V0LWV4cGVj
dGVkLnR4dDoKLSAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vz
cy1nZXQuaHRtbDoKLSAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFj
Y2Vzcy1wdXQtZXhwZWN0ZWQudHh0OgotICAgICAgICBTa2lwIHNob3dNb2RhbERpYWxvZyB0byBt
YWtlIHRlc3QgcGFzcyBmb3IgYWxsIHBsYXRmb3Jtcy4gIEFkZGVkIGEgRklYTUUgd2l0aCBidWcg
IyB0byBhZGQgYSB0ZXN0IHNwZWNpZmljYWxseSBmb3Igc2hvd01vZGFsRGlhbG9nLgotCi0gICAg
ICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9yZXNvdXJjZXMvY3Jvc3MtZnJhbWUtaWZyYW1lLWZv
ci1wdXQtdGVzdC5odG1sOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2Rv
bS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLWZyYW1lLWdldHRlci1wcmVjZWRlbmNlLWV4cGVjdGVk
LnR4dDogUmVtb3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20v
V2luZG93L3dpbmRvdy1mdW5jdGlvbi1uYW1lLWdldHRlci1wcmVjZWRlbmNlLWV4cGVjdGVkLnR4
dDogUmVtb3ZlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtZ2V0LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vV2luZG93L3dpbmRvdy1mdW5jdGlvbi1mcmFt
ZS1nZXR0ZXItcHJlY2VkZW5jZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCi0gICAgICAgICogcGxh
dGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctZnVuY3Rpb24tbmFtZS1n
ZXR0ZXItcHJlY2VkZW5jZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCi0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctbG9va3VwLXByZWNlZGVuY2Ut
ZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1nZXQtZXhwZWN0ZWQudHh0OgotICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtLXdpbi9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFj
Y2Vzcy1wdXQtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2h0dHAv
dGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLWNhbGwtZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDoKLSAgICAgICAg
KiBwbGF0Zm9ybS9ndGsvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgot
ICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctZnVuY3Rpb24tZnJh
bWUtZ2V0dGVyLXByZWNlZGVuY2UtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgotICAgICAgICAqIHBs
YXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctZnVuY3Rpb24tbmFtZS1nZXR0ZXItcHJl
Y2VkZW5jZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCi0gICAgICAgICogcGxhdGZvcm0vcXQvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1sb29rdXAtcHJlY2VkZW5jZS1leHBlY3RlZC50eHQ6IFJlbW92
ZWQuCi0gICAgICAgIFVwZGFhdGUgZXhwZWN0ZWQgb3V0cHV0IHRvIHJlZmxlY3QgdGVzdCBjaGFu
Z2VzLiAgUmVtb3ZlZCBzb21lIHBsYXRmb3JtIHNwZWNpZmljIGZpbGVzIHdoZXJlIHRoZSBvbmx5
IHJlYXNvbiB0aGV5J3JlIGRpZmZlcmVudCBpcwotICAgICAgICBiZWNhdXNlIG9mIHNob3dNb2Rh
bERpYWxvZy4KLQotICAgICAgICAqIHBsYXRmb3JtL3F0L2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jv
c3MtZnJhbWUtYWNjZXNzLWNhbGwtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLWdldC1leHBlY3RlZC50eHQ6
Ci0gICAgICAgICogcGxhdGZvcm0vd2luL1NraXBwZWQ6Ci0gICAgICAgIFNraXAgZmFpbGluZyB0
ZXN0cy4gIE5vdGUgdGhhdCB0aGVyZSBpcyBubyB0ZXN0IGZ1bmN0aW9uYWxpdHkgbG9zdC4gIFRo
ZXNlIGFyZSBlaXRoZXIgbmV3IHRlc3RzIG9yIHRlc3RzIHRoYXQgd2VyZSBkeXNmdW5jdGlvbmFs
IGFueXdheQotICAgICAgICBpbiB0aGUgYWJzZW5jZSBvZiBzaG93TW9kYWxEaWFsb2cgaW4gRFJU
LgotCi0yMDEwLTA2LTIxICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+Ci0K
LSAgICAgICAgUmV2aWV3ZWQgYnkgQmV0aCBEYWtpbi4KLQotICAgICAgICBBWDogVm9pY2VPdmVy
IGRvZXMgbm90IGFubm91bmNlIFdBSS1BUklBIHN0YXRlIGNoYW5nZSBvZiBhcmlhLWV4cGFuZGVk
Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDkyNwot
Ci0gICAgICAgICogcGxhdGZvcm0vbWFjLWxlb3BhcmQvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0
Zm9ybS9tYWMtdGlnZXIvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9hcmlhLWV4cGFuZGVkLW5vdGlmaWNhdGlvbnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlhLWV4cGFuZGVkLW5vdGlmaWNh
dGlvbnMuaHRtbDogQWRkZWQuCi0KLTIwMTAtMDYtMjEgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJl
dmlldy5ib3RAZ21haWwuY29tPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI2
MTU4NS4KLSAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjE1ODUKLSAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTUwCi0KLSAg
ICAgICAgSXQgYnJva2UgYnVpbGRzIChSZXF1ZXN0ZWQgYnkga2ludWtvIG9uICN3ZWJraXQpLgot
Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4
dDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3Jz
LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9jb25zdHJ1Y3RlZC1vYmplY3RzLXBy
b3RvdHlwZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL3Byb3RvdHlwZS1pbmhl
cml0YW5jZS0yLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9wcm90b3R5cGUtaW5o
ZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvZ2xvYmFsLWNvbnN0cnVj
dG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9kb20v
cHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9n
dGsvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6Ci0gICAg
ICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3Rl
ZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0Zm9y
bS9xdC9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydHktZGVzY3Jp
cHRvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3Rv
dHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL1Nr
aXBwZWQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9m
YXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICog
cGxhdGZvcm0vd2luL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6
Ci0KLTIwMTAtMDYtMjEgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgotCi0g
ICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgQWRkIEJsb2JCdWlsZGVy
LmlkbCB0byBleHBvc2UgQmxvYkJ1aWxkZXIgaW50ZXJmYWNlCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDU5MwotCi0gICAgICAgIEFkZCBuZXcgbGF5
b3V0IHRlc3RzIHRvIHRlc3QgQmxvYkJ1aWxkZXIgaW50ZXJmYWNlLgotICAgICAgICBBbHNvIHVw
ZGF0ZSB0ZXN0IGV4cGVjdGF0aW9ucyBhZmZlY3RlZCBieSBhZGRpbmcgdGhlIGNvbnN0cnVjdG9y
cyB0byBET01XaW5kb3cuCi0KLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL2NvbnN0
cnVjdGVkLW9iamVjdHMtcHJvdG90eXBlcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9k
b20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3Qv
ZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9q
cy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBodHRwL3Rlc3Rz
L2xvY2FsL2Jsb2IvcmVzb3VyY2VzL2h5YnJpZC1ibG9iLXV0aWwuanM6IEFkZGVkLgotICAgICAg
ICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRk
ZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NjcmlwdC10ZXN0cy9zZW5kLWRh
dGEtYmxvYi5qczogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3Njcmlw
dC10ZXN0cy9zZW5kLWh5YnJpZC1ibG9iLmpzOiBBZGRlZC4KLSAgICAgICAgKiBodHRwL3Rlc3Rz
L2xvY2FsL2Jsb2Ivc2NyaXB0LXRlc3RzL3NlbmQtc2xpY2VkLWRhdGEtYmxvYi5qczogQWRkZWQu
Ci0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtZGF0YS1ibG9iLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtZGF0YS1i
bG9iLmh0bWw6IEFkZGVkLgotICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWh5
YnJpZC1ibG9iLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2Nh
bC9ibG9iL3NlbmQtaHlicmlkLWJsb2IuaHRtbDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0
cy9sb2NhbC9ibG9iL3NlbmQtc2xpY2VkLWRhdGEtYmxvYi1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLXNsaWNlZC1kYXRhLWJsb2IuaHRt
bDogQWRkZWQuCi0gICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9yZXNvdXJjZXMvZmlsZS1mb3It
ZHJhZy10by1zZW5kMi50eHQ6IEFkZGVkLgotICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3Bvc3QtYW5kLXZlcmlmeS1oeWJyaWQuY2dpOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOiBBZGRlZCBzZW5kLWh5YnJpZC1ibG9iLmh0bWwg
YW5kIHNlbmQtc2xpY2VkLWRhdGEtYmxvYi5odG1sIGJlY2F1c2UgdGhleSBuZWVkIGV2ZW50U2Vu
ZGVyLmJlZ2luRHJhZ1dpdGhGaWxlcyBCbG9iLnNsaWNlLgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0
b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9kb20vcHJvdG90
eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lw
cGVkOiBBZGRlZCBzZW5kLWh5YnJpZC1ibG9iLmh0bWwgYW5kIHNlbmQtc2xpY2VkLWRhdGEtYmxv
Yi5odG1sIGJlY2F1c2UgdGhleSBuZWVkIGV2ZW50U2VuZGVyLmJlZ2luRHJhZ1dpdGhGaWxlcyBC
bG9iLnNsaWNlLgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ct
cHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6Ci0gICAgICAg
ICogcGxhdGZvcm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4
dDoKLSAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDogQWRkZWQgc2VuZC1oeWJyaWQtYmxv
Yi5odG1sIGFuZCBzZW5kLXNsaWNlZC1kYXRhLWJsb2IuaHRtbCBiZWNhdXNlIHRoZXkgbmVlZCBl
dmVudFNlbmRlci5iZWdpbkRyYWdXaXRoRmlsZXMgQmxvYi5zbGljZS4KLSAgICAgICAgKiBwbGF0
Zm9ybS93aW4vZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBl
Y3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vd2luL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhl
cml0YW5jZS0yLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS93aW4vZmFzdC9kb20v
cHJvdG90eXBlLWluaGVyaXRhbmNlLWV4cGVjdGVkLnR4dDoKLQotMjAxMC0wNi0yMSAgUm9iZXJ0
IEhvZ2FuICA8cm9iZXJ0QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0
aCBSb2hkZSBDaHJpc3RpYW5zZW4uCi0KLSAgICAgICAgW1F0XSBVbnNraXAgcGx1Z2lucy9nZXQt
dXJsLXRoYXQtdGhlLXJlc291cmNlLWxvYWQtZGVsZWdhdGUtd2lsbC1kaXNhbGxvdy5odG1sCi0K
LSAgICAgICAgSXQncyBhIE1hYy1zcGVjaWZpYyB0ZXN0IHNvIGp1c3QgYWRkIHRoZSByZXF1aXJl
ZCBMYXlvdXRUZXN0Q29udHJvbGxlcgotICAgICAgICBmdW5jdGlvbiBhcyBhIG5vLW9wIHRvIGF2
b2lkIGZhaWxpbmcuIFNpbWlsYXIgYXBwcm9hY2ggYWRvcHRlZCBieSBvdGhlcgotICAgICAgICBw
b3J0cy4KLQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzMzNDQKLQotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0KLTIwMTAtMDYtMjEgIFJv
YmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEtl
bm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgotCi0gICAgICAgIFtRdF0gTWlzc2luZyBmb3J3YXJk
IGVudHJpZXMgd2hlbiBkdW1waW5nIGJhY2svZm9yd2FyZCBsaXN0Ci0KLSAgICAgICAgVGhlc2Ug
bm93IHBhc3MuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zMjQ3MAotCi0gICAgICAgIGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9keW5hbWljLWlmcmFtZS1k
eW5hbWljLWZvcm0tYmFjay1lbnRyeS5odG1sCi0gICAgICAgIGh0dHAvdGVzdHMvbmF2aWdhdGlv
bi9wYXJzZWQtaWZyYW1lLWR5bmFtaWMtZm9ybS1iYWNrLWVudHJ5Lmh0bWwKLQotICAgICAgICAq
IHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0KLTIwMTAtMDYtMjEgIERpbWl0cmkgR2xhemtvdiAgPGRn
bGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBleHBlY3RhdGlvbnMg
dXBkYXRlLgotCi0gICAgICAgIE1hcmsgaHlwaGVuYXRpb24gdGVzdHMgYXMgZmFpbGluZyBvbiBD
aHJvbWl1bQotICAgICAgICBIeXBoZW5hdGlvbiBsYW5kZWQgaW4gaHR0cDovL3RyYWMud2Via2l0
Lm9yZy9jaGFuZ2VzZXQvNjE1NDguCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0
X2V4cGVjdGF0aW9ucy50eHQ6IEFkZGVkIGZhaWxpbmcgdGVzdHMuCi0KLTIwMTAtMDYtMjEgIER1
bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2Vk
LCBmaXhpbmcgYSB0ZXN0IGV4cGVjdGF0aW9ucyBvbiBXaW5kb3dzLgotCi0gICAgICAgICogcGxh
dGZvcm0vd2luL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0K
LTIwMTAtMDYtMjEgIERyZXcgV2lsc29uICA8YXR3aWxzb25AY2hyb21pdW0ub3JnPgotCi0gICAg
ICAgIFVucmV2aWV3ZWQgcm9sbGJhY2suCi0KLSAgICAgICAgUm9sbGluZyBiYWNrIDYxNTUxIGFu
ZCA2MTU1NSBkdWUgdG8gdGVzdCBmYWlsdXJlcyBvbiBMaW51eC9XaW4uCi0KLSAgICAgICAgKiBm
YXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLWZyYW1lLWdldHRlci1wcmVjZWRlbmNlLWV4
cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLWZy
YW1lLWdldHRlci1wcmVjZWRlbmNlLmh0bWw6Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dp
bmRvdy1mdW5jdGlvbi1uYW1lLWdldHRlci1wcmVjZWRlbmNlLWV4cGVjdGVkLnR4dDoKLSAgICAg
ICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWZ1bmN0aW9uLW5hbWUtZ2V0dGVyLXByZWNlZGVu
Y2UuaHRtbDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWxvb2t1cC1wcmVjZWRl
bmNlLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LWxvb2t1
cC1wcmVjZWRlbmNlLmh0bWw6Ci0gICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9w
ZXJ0aWVzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMuaHRtbDoKLSAgICAgICAgKiBmYXN0L2RvbS9zY3JpcHQtdGVzdHMvcHJvdG90eXBl
LWluaGVyaXRhbmNlLmpzOgotICAgICAgICAqIGZhc3QvZXZlbnRzL3Jlc291cmNlcy9tb2RhbC1k
aWFsb2cuaHRtbDogUmVtb3ZlZC4KLSAgICAgICAgKiBmYXN0L2V2ZW50cy9zaG93LW1vZGFsLWRp
YWxvZy1vbmJsdXItb25mb2N1cy1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCi0gICAgICAgICogZmFz
dC9ldmVudHMvc2hvdy1tb2RhbC1kaWFsb2ctb25ibHVyLW9uZm9jdXMuaHRtbDogUmVtb3ZlZC4K
LSAgICAgICAgKiBmYXN0L2hhcm5lc3MvcmVzb3VyY2VzL21vZGFsLWRpYWxvZy5odG1sOiBSZW1v
dmVkLgotICAgICAgICAqIGZhc3QvaGFybmVzcy9zaG93LW1vZGFsLWRpYWxvZy1leHBlY3RlZC50
eHQ6IFJlbW92ZWQuCi0gICAgICAgICogZmFzdC9oYXJuZXNzL3Nob3ctbW9kYWwtZGlhbG9nLmh0
bWw6IFJlbW92ZWQuCi0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4
ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIu
Ml9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1QxLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0
L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJp
bmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDEw
LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBf
RXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAu
Mi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDExLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBm
YXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50
ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFf
VDItZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8x
MF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8x
MC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UMy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICog
ZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0Vu
dGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4x
X1Q0LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2Uv
MTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQv
MTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjFfVDUtZXhwZWN0ZWQudHh0OgotICAgICAgICAq
IGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9F
bnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEu
MV9UNi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNl
LzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0
LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4xX1Q3LWV4cGVjdGVkLnR4dDoKLSAgICAgICAg
KiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJf
RW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0Ex
LjFfVDgtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5j
ZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4
dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMV9UOS1leHBlY3RlZC50eHQ6Ci0gICAgICAg
ICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4y
X0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9B
MS4yX1QxLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFu
Y2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRl
eHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDEwLWV4cGVjdGVkLnR4dDoKLSAgICAg
ICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEw
LjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4y
X0ExLjJfVDExLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9y
bWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0Nv
bnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDItZXhwZWN0ZWQudHh0OgotICAg
ICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMv
MTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4y
LjJfQTEuMl9UMy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZv
cm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9D
b250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEwLjIuMl9BMS4yX1Q0LWV4cGVjdGVkLnR4dDoKLSAg
ICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRz
LzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9uX0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAu
Mi4yX0ExLjJfVDUtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25m
b3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25f
Q29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1MxMC4yLjJfQTEuMl9UNi1leHBlY3RlZC50eHQ6Ci0g
ICAgICAgICogZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzEwX0V4ZWN1dGlvbl9Db250ZXh0
cy8xMC4yX0VudGVyaW5nX0FuX0V4ZWN1dGlvbl9Db250ZXh0LzEwLjIuMl9FdmFsX0NvZGUvUzEw
LjIuMl9BMS4yX1Q3LWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29u
Zm9ybWFuY2UvMTBfRXhlY3V0aW9uX0NvbnRleHRzLzEwLjJfRW50ZXJpbmdfQW5fRXhlY3V0aW9u
X0NvbnRleHQvMTAuMi4yX0V2YWxfQ29kZS9TMTAuMi4yX0ExLjJfVDgtZXhwZWN0ZWQudHh0Ogot
ICAgICAgICAqIGZhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMF9FeGVjdXRpb25fQ29udGV4
dHMvMTAuMl9FbnRlcmluZ19Bbl9FeGVjdXRpb25fQ29udGV4dC8xMC4yLjJfRXZhbF9Db2RlL1Mx
MC4yLjJfQTEuMl9UOS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9jcm9zcy1mcmFtZS1hY2Nlc3MtY2FsbC1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtY2FsbC5odG1sOgotICAgICAgICAqIGh0
dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLWdldC1leHBlY3RlZC50eHQ6Ci0g
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtZ2V0Lmh0bWw6
Ci0gICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1mcmFtZS1hY2Nlc3MtcHV0LWV4
cGVjdGVkLnR4dDoKLSAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L3Jlc291cmNlcy9jcm9z
cy1mcmFtZS1pZnJhbWUtZm9yLXB1dC10ZXN0Lmh0bWw6Ci0gICAgICAgICogcGxhdGZvcm0vY2hy
b21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lw
cGVkOgotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0gICAgICAgICogcGxhdGZvcm0v
d2luL1NraXBwZWQ6Ci0KLTIwMTAtMDYtMjEgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNo
cm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBleHBlY3RhdGlvbnMgdHdlYWsuCi0K
LSAgICAgICAgVXNlIEMrKy1zdHlsZSBjb21tZW50cyByYXRoZXIgdGhhbiBQeXRob24tc3R5bGUu
Ci0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6IFR3
ZWFrZWQgY29tbWVudCBzdHlsZS4KLQotMjAxMC0wNi0yMSAgRGFuIEJlcm5zdGVpbiAgPG1pdHpA
YXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgotCi0gICAgICAg
IEFkZGVkIHRlc3RzIGZvciB0aGUgJ2h5cGhlbnMnIGFuZCAnaHlwaGVuYXRlLWNoYXJhY3Rlcicg
cHJvcGVydGllcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTAyMjgKLQotICAgICAgICAqIGZhc3QvdGV4dC9oeXBoZW5hdGUtY2hhcmFjdGVyLmh0bWw6
IEFkZGVkLgotICAgICAgICAqIGZhc3QvdGV4dC9oeXBoZW5zLmh0bWw6IEFkZGVkLgotICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L3Rl
eHQvaHlwaGVuYXRlLWNoYXJhY3Rlci1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vbWFjL2Zhc3QvdGV4dC9oeXBoZW5hdGUtY2hhcmFjdGVyLWV4cGVjdGVkLnBu
ZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvdGV4dC9oeXBoZW5hdGUtY2hh
cmFjdGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3Qv
dGV4dC9oeXBoZW5zLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvZmFzdC90ZXh0L2h5cGhlbnMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2h5cGhlbnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAg
ICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9Ta2lwcGVk
OgotCi0yMDEwLTA2LTIxICBEdW1pdHJ1IERhbmlsaXVjICA8ZHVtaUBjaHJvbWl1bS5vcmc+Ci0K
LSAgICAgICAgVW5yZXZpZXdlZCwgZml4aW5nIGV4cGVjdGF0aW9ucy4KLQotICAgICAgICAqIHBs
YXRmb3JtL2d0ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4
cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9qcy9nbG9iYWwtY29uc3Ry
dWN0b3JzLWV4cGVjdGVkLnR4dDoKLQotMjAxMC0wNi0yMCAgRHVtaXRydSBEYW5pbGl1YyAgPGR1
bWlAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAg
ICAgICAgQWRkaW5nIHRoZSBTUUxFeGNlcHRpb24gY2xhc3Mgd2hpY2ggd2lsbCBiZSB1c2VkIHRv
IHJlcG9ydCBzeW5jIERCIGVycm9ycy4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQwNjA3Ci0KLSAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcHJvcGVydHktZGVzY3JpcHRvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIGZhc3QvZG9t
L3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogZmFzdC9qcy9n
bG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtZXhwZWN0
ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJp
dGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1leHBlY3RlZC50eHQ6Ci0gICAgICAgICogcGxhdGZvcm0vcXQv
ZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy1leHBlY3RlZC50eHQ6
Ci0gICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLWV4
cGVjdGVkLnR4dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3dpbi9mYXN0L2RvbS9XaW5k
b3cvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLWV4cGVjdGVkLnR4dDoKLSAgICAgICAgKiBw
bGF0Zm9ybS93aW4vZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKLQot
MjAxMC0wNi0yMCAgSGF5YXRvIEl0byAgPGhheWF0b0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAg
UmV2aWV3ZWQgYnkgS2VudCBUYW11cmEuCi0KLSAgICAgICAgQWRkIHRlc3RzIGZvciBDU1MzIFBh
Z2VkIE1lZGlhIHRvIG1ha2Ugc3VyZSBwYWdlIGJyZWFrcyBzaG91bGQgaGFwcGVuIGF0IHJpZ2h0
IHBsYWNlcy4KLSAgICAgICAgVHdvIHRlc3RzIChhbGxvd2VkLXBhZ2UtYnJlYWsgYW5kIHBhZ2Ut
YnJlYWstbWFyZ2luLWNvbGxhcHNlZCkgYXJlIGV4cGVjdGVkIHRvIGZhaWwKLSAgICAgICAgZHVl
IHRvIGxhY2sgb2Ygc3VwcG9ydC4KLQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDA3NzAKLQotICAgICAgICAqIHByaW50aW5nL2FsbG93ZWQtcGFnZS1i
cmVha3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9hbGxvd2VkLXBh
Z2UtYnJlYWtzLmh0bWw6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL25vLWNvbnRlbnQtZW1w
dHktcGFnZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9uby1jb250
ZW50LWVtcHR5LXBhZ2VzLmh0bWw6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJl
YWstZGlzcGxheS1ub25lLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcv
cGFnZS1icmVhay1kaXNwbGF5LW5vbmUuaHRtbDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcv
cGFnZS1icmVhay1tYXJnaW4tY29sbGFwc2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAg
ICogcHJpbnRpbmcvcGFnZS1icmVhay1tYXJnaW4tY29sbGFwc2VkLmh0bWw6IEFkZGVkLgotICAg
ICAgICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9hbGxvd2VkLXBhZ2UtYnJlYWtzLmpzOiBBZGRl
ZC4KLSAgICAgICAgKHRlc3QpOgotICAgICAgICAqIHByaW50aW5nL3NjcmlwdC10ZXN0cy9uby1j
b250ZW50LWVtcHR5LXBhZ2VzLmpzOiBBZGRlZC4KLSAgICAgICAgKHRlc3QpOgotICAgICAgICAq
IHByaW50aW5nL3NjcmlwdC10ZXN0cy9wYWdlLWJyZWFrLWRpc3BsYXktbm9uZS5qczogQWRkZWQu
Ci0gICAgICAgICh0ZXN0KToKLSAgICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVzdHMvcGFnZS1i
cmVhay1tYXJnaW4tY29sbGFwc2VkLmpzOiBBZGRlZC4KLSAgICAgICAgKHRlc3QpOgotCi0yMDEw
LTA2LTIwICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJl
dmlld2VkLCB0ZXN0IGV4cGVjdGF0aW9uIHVwZGF0ZS4KLQotICAgICAgICAqIHBsYXRmb3JtL2No
cm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDoKLSAgICAgICAgICBVcGRhdGUgZm9yIG90aGVy
IDxtZXRlcj4gdGVzdHMgYW5kIGZsYWt5L3Nsb3cgdGVzdHMKLQotMjAxMC0wNi0yMCAgVG9ueSBH
ZW50aWxjb3JlICA8dG9ueWdAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVy
aWMgU2VpZGVsLgotCi0gICAgICAgIFRlc3QgdG8gbWFrZSBzdXJlIHBhcnNpbmcgb2YgYXN5bmMg
YXR0cmlidXRlIHdvcmtzIGZvciBIVE1MIHNjcmlwdCB0YWdzCi0gICAgICAgIGFuZCB0ZXN0IHRv
IG1ha2Ugc3VyZSB0aGF0IGFzeW5jIGlzIG5vdCBwYXJzZWQgZm9yIFNWRyBzY3JpcHQgdGFncy4K
LSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MDI2Ci0K
LSAgICAgICAgKiBmYXN0L2RvbS9IVE1MU2NyaXB0RWxlbWVudC9zY3JpcHQtYXN5bmMtYXR0ci1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvZG9tL0hUTUxTY3JpcHRFbGVtZW50
L3NjcmlwdC1hc3luYy1hdHRyLmh0bWw6IEFkZGVkLgotICAgICAgICAqIHN2Zy9kb20vU1ZHU2Ny
aXB0RWxlbWVudC9zY3JpcHQtYXN5bmMtYXR0ci1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAg
ICAqIHN2Zy9kb20vU1ZHU2NyaXB0RWxlbWVudC9zY3JpcHQtYXN5bmMtYXR0ci5zdmc6IEFkZGVk
LgotCi0yMDEwLTA2LTIwICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+Ci0KLSAgICAg
ICAgTm90IHJldmlld2VkLCBqdXN0IGNsZWFuaW5nIHVwIHN2bi4KLQotICAgICAgICBSZW1vdmlu
ZyBwbGF0Zm9ybS9tYWMtc25vd2xlb3BhcmQvZWRpdGluZyBzaW5jZSBpdCdzIGVtcHR5LiAgVGhl
IHRlc3QKLSAgICAgICAgcmVzdWx0cyB3ZXJlIG1vdmVkIGluIHI2MDY5My4KLQotICAgICAgICAq
IHBsYXRmb3JtL21hYy1zbm93bGVvcGFyZC9lZGl0aW5nOiBSZW1vdmVkLgotICAgICAgICAqIHBs
YXRmb3JtL21hYy1zbm93bGVvcGFyZC9lZGl0aW5nL3NwZWxsaW5nOiBSZW1vdmVkLgotCi0yMDEw
LTA2LTIwICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAgICBbUXRdIE5QUF9TZXRXaW5kb3cgc2Vl
bXMgdG8gbm90IGJlIGNhbGxlZCB3aGVuIFRlc3ROZXRzY2FwZVBsdWdpbiBpcyBtb3ZlZAotCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjcwMgotCi0g
ICAgICAgIHNldE5QV2luZG93SWZOZWVkZWQoKSBpcyBjYWxsZWQgb24gcGFpbnQoKSBpbiBQbHVn
aW5WaWV3UXQsIHdoaWNoIGRvZXNuJ3QKLSAgICAgICAgd29yayBmb3IgRFJULiBTbyBjYWxsIGl0
IGlmIHdlIGFyZSBpbiBEUlQgbW9kZSBhbmQgdGhlIHdpbmRvdyBnZW9tZXRyeQotICAgICAgICBo
YXMgY2hhbmdlZC4KLQotICAgICAgICBVbnNraXBzIHBsdWdpbnMvcmVlbnRyYW50LXVwZGF0ZS13
aWRnZXQtcG9zaXRpb25zLmh0bWwKLQotICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6Ci0K
LTIwMTAtMDYtMTkgIEhheWF0byBJdG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgotCi0gICAgICAg
IFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgQWRkIHRlc3RzIGZvciBDU1MgJ29y
cGhhbnMnIGFuZCAnd2lkb3dzJyBwcm9wZXJ0aWVzLgotICAgICAgICBBbGwgdGVzdHMgYXJlIGV4
cGVjdGVkIHRvIGZhaWwgZHVlIHRvIGxhY2sgb2YgaW1wbGVtZW50YXRpb25zLgotCi0gICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDgyMQotCi0gICAgICAg
ICogcHJpbnRpbmcvcGFnZS1icmVhay1vcnBoYW5zLWFuZC13aWRvd3MtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLW9ycGhhbnMtYW5kLXdpZG93cy5o
dG1sOiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLW9ycGhhbnMtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLW9ycGhhbnMuaHRt
bDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay13aWRvd3MtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFrLXdpZG93cy5odG1sOiBB
ZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVzdHMvcGFnZS1icmVhay1vcnBoYW5z
LWFuZC13aWRvd3MuanM6IEFkZGVkLgotICAgICAgICAodGVzdCk6Ci0gICAgICAgICogcHJpbnRp
bmcvc2NyaXB0LXRlc3RzL3BhZ2UtYnJlYWstb3JwaGFucy5qczogQWRkZWQuCi0gICAgICAgICh0
ZXN0KToKLSAgICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVzdHMvcGFnZS1icmVhay13aWRvd3Mu
anM6IEFkZGVkLgotICAgICAgICAodGVzdCk6Ci0KLTIwMTAtMDYtMTkgIEhheWF0byBJdG8gIDxo
YXlhdG9AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0K
LSAgICAgICAgQWRkIHRlc3RzIGZvciAncGFnZS1icmVhay17YmVmb3JlLGFmdGVyfTogYXZvaWQn
LgotICAgICAgICBBbGwgdGVzdHMgYXJlIGV4cGVjdGVkIHRvIGZhaWwgZHVlIHRvIGxhY2sgb2Yg
aW1wbGVtZW50YXRpb25zLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDgxNAotCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay1hZnRlci1h
dm9pZC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJlYWst
YWZ0ZXItYXZvaWQuaHRtbDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay1h
dm9pZC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHByaW50aW5nL3BhZ2UtYnJlYWst
YXZvaWQuaHRtbDogQWRkZWQuCi0gICAgICAgICogcHJpbnRpbmcvcGFnZS1icmVhay1iZWZvcmUt
YXZvaWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9wYWdlLWJyZWFr
LWJlZm9yZS1hdm9pZC5odG1sOiBBZGRlZC4KLSAgICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVz
dHMvcGFnZS1icmVhay1hZnRlci1hdm9pZC5qczogQWRkZWQuCi0gICAgICAgICh0ZXN0KToKLSAg
ICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVzdHMvcGFnZS1icmVhay1hdm9pZC5qczogQWRkZWQu
Ci0gICAgICAgICh0ZXN0KToKLSAgICAgICAgKiBwcmludGluZy9zY3JpcHQtdGVzdHMvcGFnZS1i
cmVhay1iZWZvcmUtYXZvaWQuanM6IEFkZGVkLgotICAgICAgICAodGVzdCk6Ci0KLTIwMTAtMDYt
MTkgIFRvbnkgR2VudGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIFBlcnNpc3QgVjgncyBTY3JpcHREYXRhIHRv
IHRoZSBtZW1vcnkgY2FjaGUuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zODY2MQotCi0gICAgICAgIFdoZW4gVjggU2NyaXB0RGF0YSBjYWNoaW5nIHdh
cyBvcmlnaW5hbGx5IHN1Ym1pdHRlZCBpdCBjYXVzZXMgY3Jhc2hlcwotICAgICAgICBpbiBleHRl
cm5hbCBzY3JpcHRzIHdpdGggaGlnaC1ieXRlIGNoYXJhY3RlcnMuIFRoaXMgbmV3IHRlc3QgY3Jh
c2hlcyBvbgotICAgICAgICB0aGUgb3JpZ2luYWwgY29kZSwgYnV0IG5vdyBwYXNzZXMuCi0KLSAg
ICAgICAgKiBmYXN0L2pzL3BhcnNlci1oaWdoLWJ5dGUtY2hhcmFjdGVyLWV4cGVjdGVkLnR4dDog
QWRkZWQuCi0gICAgICAgICogZmFzdC9qcy9wYXJzZXItaGlnaC1ieXRlLWNoYXJhY3Rlci5odG1s
OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L2pzL3NjcmlwdC10ZXN0cy9wYXJzZXItaGlnaC1ieXRl
LWNoYXJhY3Rlci5qczogQWRkZWQuCi0gICAgICAgIChydW5UZXN0KToKLQotMjAxMC0wNi0xOSAg
RGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2
aWV3ZWQsIGV4cGVjdGF0aW9ucyB1cGRhdGUuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6IFR1bmVkIGV4cGVjdGF0aW9ucyBhY2NvcmRpbmcgdG8g
dGhlIGJvdCByZXN1bHQgcnVucy4KLQotMjAxMC0wNi0xOSAgVG9ueSBHZW50aWxjb3JlICA8dG9u
eWdAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0g
ICAgICAgIEFkZCBMYXlvdXRUZXN0IHRvIGVuc3VyZSByZXNvdXJjZXMgd2l0aGluIDxub3Njcmlw
dD4gYXJlIG5vdCBwcmVsb2FkZWQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQwODQ5Ci0KLSAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9ub3NjcmlwdC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL25vc2NyaXB0Lmh0
bWw6IEFkZGVkLgotICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9ub3NjcmlwdC1p
bWFnZTEucG5nOiBDb3BpZWQgZnJvbSBCdWdzU2l0ZS9kYXRhL21haWwuCi0gICAgICAgICogZmFz
dC9wcmVsb2FkZXIvcmVzb3VyY2VzL25vc2NyaXB0LWltYWdlMi5wbmc6IENvcGllZCBmcm9tIEJ1
Z3NTaXRlL2RhdGEvbWFpbC4KLQotMjAxMC0wNi0xOSAgTmlraXRhIFZhc2lseWV2ICA8bWVAZWx2
MXMucnU+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KLQotICAgICAgICBX
ZWIgSW5zcGVjdG9yOiBzdWJ0aXRsZUVsZW1lbnQudGV4dENvbnRlbnQgaXMgYWx3YXlzIGVtcHR5
LiBVc2Ugc3VidGl0bGVBc1RleHQgbWV0aG9kIGluc3RlYWQuCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDQyMAotCi0gICAgICAgICogaW5zcGVjdG9y
L2VsZW1lbnRzLXRlc3RzLmpzOgotICAgICAgICAoZnJvbnRlbmRfZ2V0U2VsZWN0ZWRFbGVtZW50
U3R5bGVzKToKLQotMjAxMC0wNi0xOSAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21p
dW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIGV4cGVjdGF0aW9ucyB1cGRhdGUKLQotICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDogQWRkZWQgYSBm
bGFreSBjcmFzaC4KLQotMjAxMC0wNi0xOSAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgdGVzdCBleHBlY3RhdGlvbiB1cGRhdGUuCi0KLSAg
ICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6Ci0gICAgICAg
ICAgLSBwcm9ncmVzcy1lbGVtZW50Lmh0bWwgaXMgZXNzZW50aWFsbHkgZmxha3kgb24gTWFjLgot
ICAgICAgICAgIC0gdXNlLWNsaXBwZWQtaGl0LnN2ZyBwYXNzZXMgcmVjZW50bHkuCi0KLTIwMTAt
MDYtMTkgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2
aWV3ZWQsIHRlc3QgZXhwZWN0YXRpb24gdXBkYXRlLgotCi0gICAgICAgIEFkZCBleHBlY3RhdGlv
bnMgZm9yIDxtZXRlcj4gYW5kIDxwcm9ncmVzcz4uCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50OiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFw
cGVhcmFuY2VzLWNhcGFjaXR5LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFw
cGVhcmFuY2VzLWNhcGFjaXR5LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0tbGludXgvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJh
bmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVy
LWFwcGVhcmFuY2VzLXJhdGluZy1yZWxldmFuY3ktZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAg
ICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21l
dGVyLW9wdGltdW1zLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9y
bS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLW9wdGltdW1z
LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgv
ZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHlsZXMtY2hhbmdpbmctcHNldWRvLWV4
cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51
eC9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLXN0eWxlcy1jaGFuZ2luZy1wc2V1ZG8t
ZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9m
YXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLXN0eWxlcy1leHBlY3RlZC5jaGVja3N1bTog
QWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbGludXgvZmFzdC9kb20vSFRNTE1l
dGVyRWxlbWVudC9tZXRlci1zdHlsZXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MUHJvZ3Jlc3NFbGVtZW50OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2RvbS9IVE1MUHJvZ3Jl
c3NFbGVtZW50L3Byb2dyZXNzLWVsZW1lbnQtZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1l
bnQvcHJvZ3Jlc3MtZWxlbWVudC1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRm
b3JtL2Nocm9taXVtLW1hYy9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50OiBBZGRlZC4KLSAgICAg
ICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRl
ci1hcHBlYXJhbmNlcy1jYXBhY2l0eS1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXIt
YXBwZWFyYW5jZXMtY2FwYWNpdHktZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJh
bmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1h
cHBlYXJhbmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXIt
ZWxlbWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hy
b21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0
ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0
L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLW9wdGltdW1zLWV4cGVjdGVkLnBuZzogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1l
bnQvbWV0ZXItc3R5bGVzLWNoYW5naW5nLXBzZXVkby1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1l
bnQvbWV0ZXItc3R5bGVzLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9kb20vSFRNTFByb2dyZXNzRWxlbWVudDogQWRkZWQuCi0g
ICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1l
bnQvcHJvZ3Jlc3MtZWxlbWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJvZ3Jl
c3MtZWxlbWVudC1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtLW1hYy9mYXN0L2RvbS9IVE1MUHJvZ3Jlc3NFbGVtZW50L3Byb2dyZXNzLWVsZW1lbnQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9k
b20vSFRNTE1ldGVyRWxlbWVudDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0t
d2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2FwYWNpdHkt
ZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdp
bi9mYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFuY2VzLWNhcGFjaXR5LWV4
cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3Qv
ZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtY2FwYWNpdHktZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRN
TE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4cGVjdGVk
LmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9k
b20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1hcHBlYXJhbmNlcy1yYXRpbmctcmVsZXZhbmN5LWV4
cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3Qv
ZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItYXBwZWFyYW5jZXMtcmF0aW5nLXJlbGV2YW5jeS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0
L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWVsZW1lbnQtZXhwZWN0ZWQuY2hlY2tzdW06IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9IVE1MTWV0ZXJF
bGVtZW50L21ldGVyLWVsZW1lbnQtZXhwZWN0ZWQucG5nOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1lbGVtZW50
LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zh
c3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0aW11bXMtZXhwZWN0ZWQuY2hlY2tzdW06
IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2RvbS9IVE1MTWV0
ZXJFbGVtZW50L21ldGVyLW9wdGltdW1zLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItb3B0
aW11bXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13
aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHlsZXMtY2hhbmdpbmctcHNldWRv
LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13
aW4vZmFzdC9kb20vSFRNTE1ldGVyRWxlbWVudC9tZXRlci1zdHlsZXMtY2hhbmdpbmctcHNldWRv
LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zh
c3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItc3R5bGVzLWNoYW5naW5nLXBzZXVkby1leHBl
Y3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Rv
bS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLXN0eWxlcy1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1l
bnQvbWV0ZXItc3R5bGVzLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0v
Y2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxNZXRlckVsZW1lbnQvbWV0ZXItc3R5bGVzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvZG9t
L0hUTUxQcm9ncmVzc0VsZW1lbnQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
LXdpbi9mYXN0L2RvbS9IVE1MUHJvZ3Jlc3NFbGVtZW50L3Byb2dyZXNzLWJhci12YWx1ZS1wc2V1
ZG8tZWxlbWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0v
Y2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJvZ3Jlc3MtYmFyLXZh
bHVlLXBzZXVkby1lbGVtZW50LWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZv
cm0vY2hyb21pdW0td2luL2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJvZ3Jlc3MtZWxl
bWVudC1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21p
dW0td2luL2Zhc3QvZG9tL0hUTUxQcm9ncmVzc0VsZW1lbnQvcHJvZ3Jlc3MtZWxlbWVudC1leHBl
Y3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Rv
bS9IVE1MUHJvZ3Jlc3NFbGVtZW50L3Byb2dyZXNzLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJp
dGFuY2UtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dDoKLQotMjAxMC0wNi0wMiAgUm9iZXJ0IEhvZ2FuICA8cm9iZXJ0QHdlYmtp
dC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBbUXRd
IFN1cHBvcnQgZXZhbHVhdGVTY3JpcHRJbklzb2xhdGVkV29ybGQoKQotCi0gICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDA3OQotCi0gICAgICAgIFRoaXMg
aW5pdGlhbCBpbXBsZW1lbnRhdGlvbiBwYXNzZXMgMjUgb2YgdGhlIDI3IHRlc3RzIGluCi0gICAg
ICAgIGh0dHAvdGVzdHMvaXNvbGF0ZWR3b3JsZCBhcyB3ZWxsIGFzIGZvdXIgb3RoZXJzIHRoYXQg
dXNlIHRoZQotICAgICAgICBjYWxsIGluIExheW91dFRlc3RzLgotCi0gICAgICAgIEZ1cnRoZXIg
d29yay9pbnZlc3RpZ2F0aW9uIGlzIHJlcXVpcmVkIHRvIHN1cHBvcnQgdGhlIHR3bwotICAgICAg
ICByZW1haW5pbmcgdGVzdHMuCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgotCi0y
MDEwLTA2LTE5ICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KLQotICAgICAgICBV
bnJldmlld2VkLCB0ZXN0IGV4cGVjdGF0aW9uIHVwZGF0ZS4KLQotICAgICAgICBSZWJhc2VsaW5l
IGZvciB0ZXREZWNvcmF0aW9uLnN2Zy4KLQotICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxp
bnV4L3N2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0aW9uLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9zdmcvYmF0aWsvdGV4dC90ZXh0
RGVjb3JhdGlvbi1leHBlY3RlZC5wbmc6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtLXdpbi9zdmcvYmF0aWsvdGV4dC90ZXh0RGVjb3JhdGlvbi1leHBlY3RlZC5jaGVja3N1bTog
QWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL3N2Zy9iYXRpay90ZXh0L3Rl
eHREZWNvcmF0aW9uLWV4cGVjdGVkLnBuZzogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hy
b21pdW0td2luL3N2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0aW9uLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Ogot
Ci0yMDEwLTA2LTE5ICBaaGVueWFvIE1vICA8em1vQGdvb2dsZS5jb20+Ci0KLSAgICAgICAgUmV2
aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgotCi0gICAgICAgIGZhc3QvY2FudmFzL3dlYmdsL2dl
dC1hY3RpdmUtdGVzdC5odG1sIGZhaWxlZCBpbiBDaHJvbWUgTWFjCi0gICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDQ5NgotCi0gICAgICAgICogZmFzdC9j
YW52YXMvd2ViZ2wvZ2V0LWFjdGl2ZS10ZXN0LWV4cGVjdGVkLnR4dDogVGVzdCBvZiB0d28gY29u
dGV4dHMgYW5kIHR3byBwcm9ncmFtcywgYWxzbyB0ZXN0IHRoZSB1bmlmb3JtIGFycmF5IG5hbWUg
ZW5kcyB3aXRoICJbMF0iLgotICAgICAgICAqIGZhc3QvY2FudmFzL3dlYmdsL3NjcmlwdC10ZXN0
cy9nZXQtYWN0aXZlLXRlc3QuanM6IERpdHRvLgotCi0yMDEwLTA2LTE4ICBSb2IgQnVpcyAgPHJ3
bGJ1aXNAZ21haWwuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgotCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU3NQotICAg
ICAgICBsYXlvdXQgdGVzdCBzdmcvYmF0aWsvdGV4dC90ZXh0RGVjb3JhdGlvbi5zdmcgaGFuZ3MK
LQotICAgICAgICBSZWVuYWJsZSB0aGlzIHRlc3Qgc2luY2UgY3Jhc2ggaXMgZ29uZSAodGVzdGVk
IG9uIE9TIFggMTAuNS44KS4KLQotICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvYmF0aWsvdGV4
dC90ZXh0RGVjb3JhdGlvbi1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCi0gICAgICAgICogcGxh
dGZvcm0vbWFjL3N2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0aW9uLWV4cGVjdGVkLnBuZzogQWRk
ZWQuCi0gICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9iYXRpay90ZXh0L3RleHREZWNvcmF0aW9u
LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogc3ZnL2JhdGlrL3RleHQvdGV4dERlY29y
YXRpb24uc3ZnOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvc3ZnL2JhdGlrL3RleHQvdGV4dERl
Y29yYXRpb24uc3ZnLWRpc2FibGVkLgotCi0yMDEwLTA2LTE4ICBBbGV4ZXkgUHJvc2t1cnlha292
ICA8YXBAYXBwbGUuY29tPgotCi0gICAgICAgIFRlc3QgYnkgQ2hyaXMgQnJpY2hmb3JkLgotCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc1OQotICAg
ICAgICBDaGlsZE5vZGVMaXN0IGZvciBhbiBhdHRyaWJ1dGUgbm9kZSBpcyBub3QgcHJvcGVybHkg
aW52YWxpZGF0ZWQgYWZ0ZXIgYXBwZW5kaW5nIGEgY2hpbGQKLQotICAgICAgICBUaGlzIGlzc3Vl
IGhhcyBiZWVuIGZpeGVkIGluIGFub3RoZXIgYnVnLCBqdXN0IGxhbmRpbmcgYW4gYWRkaXRpb25h
bCB0ZXN0LgotCi0gICAgICAgICogZmFzdC9kb20vQXR0ci9jaGlsZC1ub2Rlcy1sZW5ndGgtY2Fj
aGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBmYXN0L2RvbS9BdHRyL2NoaWxkLW5v
ZGVzLWxlbmd0aC1jYWNoZS5odG1sOiBBZGRlZC4KLQotMjAxMC0wNi0xOCAgQWJoaXNoZWsgQXJ5
YSAgPGluZmVybm9AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFy
dGguCi0KLSAgICAgICAgVGVzdHMgdGhhdCB3ZSBkbyBub3QgY3Jhc2ggd2hpbGUgcmVuZGVyaW5n
IGEgZml4ZWQgdGFibGUgbGF5b3V0LgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDA4MTIKLQotICAgICAgICAqIGZhc3QvdGFibGUvemVyby1jb2xzcGFu
LWNyYXNoLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogZmFzdC90YWJsZS96ZXJvLWNv
bHNwYW4tY3Jhc2guaHRtbDogQWRkZWQuCi0KLTIwMTAtMDYtMTggIE9saXZlciBIdW50ICA8b2xp
dmVyQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJlbi4KLQot
ICAgICAgICBJbmNvcnJlY3QgaGFuZGxpbmcgb2YgbXVsdGlwbGUgQk9NcyBzY2F0dGVyZWQgdGhy
b3VnaCBhIGZpbGUuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MDg2NQotCi0gICAgICAgIFB1dCBhIGZldyBtb3JlIEJPTXMgaW50byB0aGlzIHRlc3Rj
YXNlIHNvIHRoYXQgaXQgaGl0cyB0aGUgb3RoZXIgY2FzZXMKLSAgICAgICAgdGhhdCB3ZXJlIG1p
c3NlZCBiZWZvcmUuCi0KLSAgICAgICAgKiBmYXN0L2pzL3Jlc291cmNlcy9ib20taW4tZmlsZS1y
ZXRhaW5zLWNvcnJlY3Qtb2Zmc2V0LmpzOgotICAgICAgICAoZy5mKToKLSAgICAgICAgKGcpOgot
Ci0yMDEwLTA2LTE4ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0K
LSAgICAgICAgVW5yZXZpZXdlZCwgZXhwZWN0YXRpb25zIHVwZGF0ZS4KLQotICAgICAgICBVcGRh
dGUgYSBmZXcgbW9yZSBjaHJvbWl1bS13aW4gYmFzZWxpbmVzIGFmdGVyIGh0dHA6Ly90cmFjLndl
YmtpdC5vcmcvY2hhbmdlc2V0LzYxMzkzLgotCi0yMDEwLTA2LTE4ICBEaW1pdHJpIEdsYXprb3Yg
IDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgZXhwZWN0YXRp
b25zIHVwZGF0ZS4KLQotICAgICAgICBVcGRhdGUgYSBmZXcgbW9yZSBjaHJvbWl1bS1tYWMgYmFz
ZWxpbmVzIGFmdGVyIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzYxMzkzLgotCi0y
MDEwLTA2LTE4ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KLQotICAg
ICAgICBVbnJldmlld2VkLgotCi0gICAgICAgIFNraXBwZWQgc29tZSBmYWlsaW5nIHRlc3RzIGFu
ZCBjb25nbG9tZXJhdGVkIGEgc2tpcHBlZCB0ZXN0IGludG8gYW5vdGhlciBncm91cC4KLQotICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOiBDbGVhbnVwcyBhbmQgdGhyZWUgbW9yZSBza2lw
cGVkIHRlc3RzLgotCi0yMDEwLTA2LTE4ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJv
bWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgZXhwZWN0YXRpb25zIHVwZGF0ZS4KLQot
ICAgICAgICBVcGRhdGUgY2hyb21pdW0gYmFzZWxpbmVzIGFmdGVyIGh0dHA6Ly90cmFjLndlYmtp
dC5vcmcvY2hhbmdlc2V0LzYxNDE4LgotCi0yMDEwLTA2LTE4ICBEaW1pdHJpIEdsYXprb3YgIDxk
Z2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgZXhwZWN0YXRpb25z
IHVwZGF0ZS4KLQotICAgICAgICBVcGRhdGUgY2hyb21pdW0tbGludXggYmFzZWxpbmVzIGFmdGVy
IGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzYxMzkzLgotCi0yMDEwLTA2LTE4ICBE
aW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZp
ZXdlZCwgZXhwZWN0YXRpb25zIHVwZGF0ZS4KLQotICAgICAgICBVcGRhdGUgY2hyb21pdW0td2lu
IGJhc2VsaW5lcyBhZnRlciBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC82MTM5My4K
LQotMjAxMC0wNi0xOCAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+Ci0K
LSAgICAgICAgVW5yZXZpZXdlZC4KLQotICAgICAgICBBZGRpbmcgYmFzZWxpbmVzIGZvciBuZXcg
dGVzdHMgYW5kIGNvcnJlY3Rpbmcgb25lIGluY29ycmVjdCBiYXNlbGluZS4KLQotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9tZWRpYS92aWRlby1yZXBsYWNlcy1wb3N0ZXItZXhwZWN0ZWQudHh0OiBD
b3JyZXRpbmcgdGhpcyBpbmNvcnJlY3QgYmFzZWxpbmUuCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L3N2Zy9oaXhpZS90ZXh0LzAwMS1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRm
b3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXNxdWVlemUtMS1leHBl
Y3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3Qt
dGV4dExlbmd0aC1zcGFjaW5nLXNxdWVlemUtMi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXNxdWVl
emUtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4
dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXNxdWVlemUtNC1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFj
aW5nLXN0cmV0Y2gtMS1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXN0cmV0Y2gtMi1leHBlY3RlZC50
eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExl
bmd0aC1zcGFjaW5nLXN0cmV0Y2gtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXN0cmV0Y2gtNC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxl
Y3QtdGV4dExlbmd0aC1zcGFjaW5nQW5kR2x5cGhzLXNxdWVlemUtMS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1z
cGFjaW5nQW5kR2x5cGhzLXNxdWVlemUtMi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nQW5kR2x5cGhz
LXNxdWVlemUtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9z
dmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nQW5kR2x5cGhzLXNxdWVlemUtNC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3Qt
dGV4dExlbmd0aC1zcGFjaW5nQW5kR2x5cGhzLXN0cmV0Y2gtMS1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFj
aW5nQW5kR2x5cGhzLXN0cmV0Y2gtMi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nQW5kR2x5cGhzLXN0
cmV0Y2gtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcv
dGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nQW5kR2x5cGhzLXN0cmV0Y2gtNC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QteC1s
aXN0LTEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3Rl
eHQvc2VsZWN0LXgtbGlzdC0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZv
cm0vZ3RrL3N2Zy90ZXh0L3NlbGVjdC14LWxpc3QtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QteC1saXN0LTQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3RleHQvc2VsZWN0LXgtbGlzdC13
aXRoLXRzcGFucy0xLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L3N2Zy90ZXh0L3NlbGVjdC14LWxpc3Qtd2l0aC10c3BhbnMtMi1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3QteC1saXN0LXdpdGgtdHNw
YW5zLTMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3Rl
eHQvc2VsZWN0LXgtbGlzdC13aXRoLXRzcGFucy00LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0KLTIw
MTAtMDYtMTggIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgotCi0gICAgICAgIFtRdF0gcGFz
cyBwbHVnaW5zL29wZW4tYW5kLWNsb3NlLXdpbmRvdy13aXRoLXBsdWdpbi5odG1sIG9uIFF0Ci0K
LSAgICAgICAgQ2FwdHVyZSBsb2dEZXN0cm95IG1lc3NhZ2VzIGZyb20gdGhlIHRlc3QgcGx1Z2lu
LiBEUlQncyBXZWJQYWdlCi0gICAgICAgIGlzIGFscmVhZHkgZGVzdHJveWVkIGJ5IHRoZSB0aW1l
IHRoZXkgYXJlIGVtaXR0ZWQuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTMzMzMzCi0KLSAgICAgICAgVW5za2lwOgotICAgICAgICBwbHVnaW5zL29w
ZW4tYW5kLWNsb3NlLXdpbmRvdy13aXRoLXBsdWdpbi5odG1sCi0gICAgICAgIHBsdWdpbnMvZ2V0
dXJsbm90aWZ5LWR1cmluZy1kb2N1bWVudC10ZWFyZG93bi5odG1sCi0KLSAgICAgICAgKiBwbGF0
Zm9ybS9xdC9Ta2lwcGVkOgotCi0yMDEwLTA2LTE4ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5z
b25AaWdhbGlhLmNvbT4KLQotICAgICAgICBVbnJldmlld2VkLgotCi0gICAgICAgIEFkZGluZyBi
YXNlbGluZXMgZm9yIG5ldyB0ZXN0cy4gU29tZSB0ZXN0cyB0aGF0IGZhaWwgaGF2ZSBiZWVuIGxh
YmVsZWQKLSAgICAgICAgd2l0aCBidWcgbnVtYmVycy4gQWxzbyByZW1vdmVkIGEgbmV3bHkgZGVm
dW5jdCB0ZXN0IGZyb20gdGhlIHNraXBwZWQgbGlzdC4KLQotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9Ta2lwcGVkOiBSZW1vdmVkIG5ld2x5IGJhc2VsaW5lZCB0ZXN0cyBhbmQgb25lIGRlZnVuY3Qg
dGVzdC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LXRl
eHQtb3ZlcmZsb3ctZWxsaXBzaXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvZmFzdC9iYWNrZ3JvdW5kcy9xdWlya3MtbW9kZS1saW5lLWJveC1iYWNrZ3JvdW5k
cy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2Nzcy9j
c3MzLXNwYWNlLWluLW50aC1hbmQtbGFuZy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9mYXN0L2Nzcy9pbmxpbmUtZWxlbWVudC1saW5lLWJyZWFrLWV4cGVjdGVk
LnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvY3NzL25vbi1zdGFuZGFy
ZC1jaGVja2JveC1zaXplLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0v
Z3RrL2Zhc3QvY3NzL3BzZXVkby1lbGVtZW50LWxpbmUtYnJlYWstZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9saXN0cy93My1jc3MzLWxpc3Qtc3R5bGVz
LWFscGhhYmV0aWMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsv
ZmFzdC9tdWx0aWNvbC9zaW5nbGUtbGluZS1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL2d0ay9mYXN0L3JlcGFpbnQvYmxvY2stbm8taW5mbG93LWNoaWxkcmVuLWV4cGVj
dGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvcmVwYWludC9tb3Zp
bmctc2hhZG93LW9uLWNvbnRhaW5lci1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL2d0ay9mYXN0L3JlcGFpbnQvbW92aW5nLXNoYWRvdy1vbi1wYXRoLWV4cGVjdGVkLnR4
dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvdGFibGUvZml4ZWQtdGFibGUt
d2l0aC1wZXJjZW50LWluc2lkZS1wZXJjZW50LXRhYmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0g
ICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvdGFibGUvZml4ZWQtdGFibGUtd2l0aC1wZXJjZW50
LXdpZHRoLWluc2lkZS1hdXRvLXRhYmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vZ3RrL2Zhc3QvdGFibGUvZml4ZWQtdGFibGUtd2l0aC1wZXJjZW50LXdpZHRoLWlu
c2lkZS1kaXYtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFz
dC90YWJsZS9maXhlZC10YWJsZS13aXRoLXBlcmNlbnQtd2lkdGgtaW5zaWRlLWV4dHJhLWxhcmdl
LWRpdi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L3Rh
YmxlL2ZpeGVkLXRhYmxlLXdpdGgtcGVyY2VudC13aWR0aC1pbnNpZGUtZml4ZWQtd2lkdGgtdGFi
bGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC90YWJs
ZS9maXhlZC10YWJsZS13aXRoLXNtYWxsLXBlcmNlbnQtd2lkdGgtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvbWVkaWEvdmlkZW8tcmVwbGFjZXMtcG9zdGVyLWV4
cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9jc3Mvc2hhZG93
LWFuZC1vcGFjaXR5LWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL3N2Zy9jc3Mvc2hhZG93LWFuZC1vcGFjaXR5LWV4cGVjdGVkLnR4dC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9lbXB0eS1tYXNrLWV4cGVjdGVkLnR4dDogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9jdXN0b20vanMtcmVwYWludC1yZWN0LW9uLXBh
dGgtd2l0aC1zdHJva2UtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy1yZXBhaW50LXJlY3Qtb24tcGF0aC13aXRoLXN0cm9rZS1l
eHBlY3RlZC50eHQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9jdXN0b20vbWFya2VyLW9w
YWNpdHktZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1
c3RvbS9tYXJrZXItcmVmZXJlbmNlUG9pbnQtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXJrZXItcmVmZXJlbmNlUG9pbnQtZXhw
ZWN0ZWQudHh0LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvY3VzdG9tL21hc2staW52YWxp
ZGF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9j
dXN0b20vcGF0dGVybi1leGNlc3NpdmUtbWFsbG9jLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAg
ICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9jdXN0b20vcGF0dGVybi1zaXplLWJpZ2dlci10aGFuLXRh
cmdldC1zaXplLWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL3N2Zy9jdXN0b20vcGF0dGVybi1zaXplLWJpZ2dlci10aGFuLXRhcmdldC1zaXplLWV4cGVj
dGVkLnR4dC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9wYXR0ZXJuLXNrZXct
dHJhbnNmb3JtZWQtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvc3ZnL2N1c3RvbS9wYXR0ZXJuLXNrZXctdHJhbnNmb3JtZWQtZXhwZWN0ZWQudHh0Lgot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLWNvbnRlbnQt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9y
ZWxhdGl2ZS1zaXplZC1kZWVwLXNoYWRvdy10cmVlLWNvbnRlbnQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXplZC1zaGFk
b3ctdHJlZS1jb250ZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0v
Z3RrL3N2Zy9jdXN0b20vc3Ryb2tlLXdpZHRoLWxhcmdlLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0g
ICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9jdXN0b20vdGV4dC14eS11cGRhdGVzLVNWR0xpc3Qt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL2ZpbHRlcnMv
ZmVEaXNwbGFjZW1lbnRNYXAtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvc3ZnL2ZpbHRlcnMvZmVEaXNwbGFjZW1lbnRNYXAtZXhwZWN0ZWQudHh0Lgot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tZm9yZWlnbk9i
amVjdC1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9z
dmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tZm9yZWlnbk9iamVjdC1leHBlY3RlZC50eHQuCi0gICAg
ICAgICogcGxhdGZvcm0vZ3RrL3N2Zy9vdmVyZmxvdy9vdmVyZmxvdy1vbi1pbm5lci1zdmctZWxl
bWVudC1kZWZhdWx0cy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24taW5uZXItc3ZnLWVsZW1lbnQtZGVmYXVs
dHMtZXhwZWN0ZWQudHh0LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3Zl
cmZsb3ctb24taW5uZXItc3ZnLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL292ZXJmbG93L292ZXJmbG93LW9uLWlubmVyLXN2Zy1l
bGVtZW50LWV4cGVjdGVkLnR4dC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL292ZXJmbG93
L292ZXJmbG93LW9uLW91dGVybW9zdC1zdmctZWxlbWVudC1kZWZhdWx0cy1leHBlY3RlZC50eHQ6
IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24t
b3V0ZXJtb3N0LXN2Zy1lbGVtZW50LWlnbm9yZS1hdHRyaWJ1dGUtMS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0
ZXJtb3N0LXN2Zy1lbGVtZW50LWlnbm9yZS1hdHRyaWJ1dGUtMi1leHBlY3RlZC50eHQ6IEFkZGVk
LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0ZXJt
b3N0LXN2Zy1lbGVtZW50LWlnbm9yZS1hdHRyaWJ1dGUtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0ZXJtb3N0
LXN2Zy1lbGVtZW50LWluLXhodG1sLWF1dG8tZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAg
KiBwbGF0Zm9ybS9ndGsvc3ZnL292ZXJmbG93L292ZXJmbG93LW9uLW91dGVybW9zdC1zdmctZWxl
bWVudC1pbi14aHRtbC1kZWZhdWx0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBs
YXRmb3JtL2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0ZXJtb3N0LXN2Zy1lbGVtZW50
LWluLXhodG1sLWhpZGRlbi1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3Jt
L2d0ay9zdmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0ZXJtb3N0LXN2Zy1lbGVtZW50LWluLXho
dG1sLXNjcm9sbC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9z
dmcvb3ZlcmZsb3cvb3ZlcmZsb3ctb24tb3V0ZXJtb3N0LXN2Zy1lbGVtZW50LWluLXhodG1sLXZp
c2libGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3Rl
eHQvZm9yZWlnbk9iamVjdC10ZXh0LWNsaXBwaW5nLWJ1Zy1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3Rpb24tYmFja2dyb3VuZC1jb2xv
ci1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9z
ZWxlY3Rpb24tZG91YmxlY2xpY2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvc3ZnL3RleHQvc2VsZWN0aW9uLXN0eWxlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgot
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvdGV4dC9zZWxlY3Rpb24tdHJpcGxlY2xpY2stZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pvb20vcGFnZS9h
YnNvbHV0ZS1zaXplZC1kb2N1bWVudC1uby1zY3JvbGxiYXJzLWV4cGVjdGVkLnR4dDogQ29waWVk
IGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy96b29tL3BhZ2UvYWJzb2x1dGUtc2l6
ZWQtZG9jdW1lbnQtbm8tc2Nyb2xsYmFycy1leHBlY3RlZC50eHQuCi0gICAgICAgICogcGxhdGZv
cm0vZ3RrL3N2Zy96b29tL3BhZ2UvYWJzb2x1dGUtc2l6ZWQtZG9jdW1lbnQtc2Nyb2xsYmFycy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS9wYWdl
L3JlbGF0aXZlLXNpemVkLWRvY3VtZW50LXNjcm9sbGJhcnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
LSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pvb20vcGFnZS96b29tLWNvb3Jkcy12aWV3YXR0
ci0wMS1iLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96
b29tL3BhZ2Uvem9vbS1mb3JlaWduT2JqZWN0LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAg
ICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3BhZ2Uvem9vbS1oaXhpZS1taXhlZC0wMDgtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pvb20vcGFnZS96b29t
LWhpeGllLW1peGVkLTAwOS1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3Jt
L2d0ay9zdmcvem9vbS9wYWdlL3pvb20taGl4aWUtcmVuZGVyaW5nLW1vZGVsLTAwNC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS9wYWdlL3pvb20t
c3ZnLWZsb2F0LWJvcmRlci1wYWRkaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICog
cGxhdGZvcm0vZ3RrL3N2Zy96b29tL3RleHQvYWJzb2x1dGUtc2l6ZWQtZG9jdW1lbnQtbm8tc2Ny
b2xsYmFycy1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9zdmcvem9vbS90ZXh0L2Fic29sdXRlLXNpemVkLWRvY3VtZW50LW5vLXNjcm9sbGJhcnMtZXhw
ZWN0ZWQudHh0LgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS90ZXh0L2Fic29sdXRl
LXNpemVkLWRvY3VtZW50LXNjcm9sbGJhcnMtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL3pvb20vdGV4dC9hYnNvbHV0ZS1zaXplZC1kb2N1bWVu
dC1zY3JvbGxiYXJzLWV4cGVjdGVkLnR4dC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvc3ZnL3pv
b20vdGV4dC9yZWxhdGl2ZS1zaXplZC1kb2N1bWVudC1zY3JvbGxiYXJzLWV4cGVjdGVkLnR4dDog
Q29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy96b29tL3RleHQvcmVsYXRp
dmUtc2l6ZWQtZG9jdW1lbnQtc2Nyb2xsYmFycy1leHBlY3RlZC50eHQuCi0gICAgICAgICogcGxh
dGZvcm0vZ3RrL3N2Zy96b29tL3RleHQvem9vbS1jb29yZHMtdmlld2F0dHItMDEtYi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0ay9zdmcvem9vbS90ZXh0L3pvb20t
Zm9yZWlnbk9iamVjdC1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIHBsYXRmb3JtL2d0
ay9zdmcvem9vbS90ZXh0L3pvb20taGl4aWUtbWl4ZWQtMDA4LWV4cGVjdGVkLnR4dDogQWRkZWQu
Ci0gICAgICAgICogcGxhdGZvcm0vZ3RrL3N2Zy96b29tL3RleHQvem9vbS1oaXhpZS1yZW5kZXJp
bmctbW9kZWwtMDA0LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0gICAgICAgICogcGxhdGZvcm0vZ3Rr
L3N2Zy96b29tL3RleHQvem9vbS1zdmctZmxvYXQtYm9yZGVyLXBhZGRpbmctZXhwZWN0ZWQudHh0
OiBBZGRlZC4KLSAgICAgICAgKiBwbGF0Zm9ybS9ndGsvdHJhbnNmb3Jtcy8yZC9oaW5kaS1yb3Rh
dGVkLWV4cGVjdGVkLnR4dDogQWRkZWQuCi0KLTIwMTAtMDYtMTggIENocmlzIEZsZWl6YWNoICA8
Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KLQotICAgICAgICBObyByZXZpZXcuIEZpeCBUaWdlciBhbmQg
TGVvcGFyZHMgdGVzdHMuCi0KLSAgICAgICAgQVg6IHByZXNlbnRhdGlvbmFsIHJvbGUgbmVlZHMg
dG8gYmUgaW5oZXJpdGVkIGJ5IHJlcXVpcmVkIGVsZW1lbnRzCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDEzMgotCi0gICAgICAgICogcGxhdGZvcm0v
bWFjLWxlb3BhcmQvU2tpcHBlZDoKLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMtdGlnZXIvU2tpcHBl
ZDoKLQotMjAxMC0wNi0xNyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KLQotICAgICAgICA8cmRhcjovL3Byb2JsZW0v
ODA5MTM4NT4gVGVzdCB0aGF0IHJlbW92aW5nIGEgc3R5bGVzaGVldCBsaW5rIGVsZW1lbnQgaW4g
YSBsaXN0ZW5lciB0byBpdHMKLSAgICAgICAgYmVmb3JlbG9hZCBldmVudCBkb2VzIG5vdCBjcmFz
aCBXZWJDb3JlLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDA3NDIKLQotICAgICAgICAqIGZhc3QvZG9tL2JlZm9yZWxvYWQvcmVtb3ZlLWxpbmstaW4t
YmVmb3JlbG9hZC1saXN0ZW5lci1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAqIGZhc3Qv
ZG9tL2JlZm9yZWxvYWQvcmVtb3ZlLWxpbmstaW4tYmVmb3JlbG9hZC1saXN0ZW5lci5odG1sOiBB
ZGRlZC4KLQotMjAxMC0wNi0xOCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3Jn
PgotCi0gICAgICAgIFVucmV2aWV3ZWQuIFVwZGF0ZSBRdCBzcGVjaWZpYyBleHBlY3RlZCBmaWxl
cyBhZnRlciByNjE0MTguCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9lZGl0aW5nL3Bhc3RlYm9h
cmQvcGFzdGUtdGV4dC0wMDUtZXhwZWN0ZWQudHh0OgotICAgICAgICAqIHBsYXRmb3JtL3F0L2Vk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LTAwNi1leHBlY3RlZC50eHQ6Ci0gICAgICAgICog
cGxhdGZvcm0vcXQvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtMDA3LWV4cGVjdGVkLnR4
dDoKLSAgICAgICAgKiBwbGF0Zm9ybS9xdC9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0w
MTQtZXhwZWN0ZWQudHh0OgotCi0yMDEwLTA2LTE4ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFj
aEBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgS2lsemVyLgotCi0gICAg
ICAgIEFYOiBwcmVzZW50YXRpb25hbCByb2xlIG5lZWRzIHRvIGJlIGluaGVyaXRlZCBieSByZXF1
aXJlZCBlbGVtZW50cwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDAxMzIKLQotICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2luaGVy
aXRlZC1wcmVzZW50YXRpb25hbC1saXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgotICAgICAgICAq
IHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2luaGVyaXRlZC1wcmVzZW50YXRpb25hbC1saXN0
cy5odG1sOiBBZGRlZC4KKyAgICAgICAgRXhwb3NlZCB0aGUgaW1hZ2UgcmVzaXppbmcgQVBJIHRv
IEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGF0IHRoaXMgc3RhZ2UuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAorCisg
ICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMuaHRtbC1kaXNhYmxlZDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLmh0
bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9u
by1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9vdmVycmlkZS1vay13ZWJr
aXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRt
bC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMv
YXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanM6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qczogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVz
dHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL3Rlc3QtY2Fs
bGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNr
cy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0
bWwtZGlzYWJsZWQ6IEFkZGVkLgogCiAyMDEwLTA2LTE4ICBKdXN0aW4gR2FyY2lhICA8anVzdGlu
LmdhcmNpYUBhcHBsZS5jb20+CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9h
cmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uNGQ3ZWE4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTA2IEBACitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1l
bnRzIHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENI
X0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VS
UjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
dW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSkgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlG
dW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTk9UX1NV
UFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIp
IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24g
MTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0
eUZ1bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmci
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdp
ZHRoIGdldHRlciBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJp
bmciKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmlu
ZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5
RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0
cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3dpZHRoOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9i
amVjdFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRo
cmV3IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmlu
aXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge2hlaWdodDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2hlaWdodDp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0
VGhyb3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtoZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmlu
aXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpl
bXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNw
ZWN0UmF0aW86dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFz
cGVjdFJhdGlvOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNw
ZWN0UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2Vy
dmVBc3BlY3RSYXRpbzotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
cHJlc2VydmVBc3BlY3RSYXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpv
YmplY3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e29yaWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50
YXRpb246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5m
aW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmlu
aXR5fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmci
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2Fi
bGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFn
ZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmM1OTZiNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlz
YWJsZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9E
VEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2Ut
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZjY4ZjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMt
bm8tc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0IGFuIGlt
YWdlIHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0
aW9uLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFeGNlcHRpb24gd2Fz
IGNvcnJlY3RseSB0aHJvd246IEVycm9yOiBJTlZBTElEX1NUQVRFX0VSUjogRE9NIEV4Y2VwdGlv
biAxMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0
R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291
cmNlLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY4
ZjFlMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVs
ZW1lbnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9h
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDgxZDEzYQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8t
Y2FsbGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACittYWlu
IGZyYW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorRW5zdXJlcyB0aGF0IHRoZSBjYWxs
YmFja3Mgd2lsbCBub3QgZXhlY3V0ZSBhZnRlciBvbnVubG9hZC4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgTm8gY2FsbGJhY2tzIGNhbGxlZCBhZnRlciB1bmxvYWQKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11
bmxvYWQuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4z
MTBhYTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdl
RWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNh
YmxlZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9r
LXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlODJjNjgKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEwIEBACitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3Zl
cnJpZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyA0MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdl
Lmh0bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk2ZjljNQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
b3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBA
Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4K
KzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNj
cmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2Ny
aXB0LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Njcmlw
dC10ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmUzZGUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1h
Z2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0w
LDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2Fy
Z3VtZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1MzY3
OTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVt
ZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCww
ICsxLDE0NiBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBh
cmd1bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rp
b24gc2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVz
c2lvbik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBz
aG91bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQor
fQorCitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhw
ZWN0ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAg
ICAgIGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJl
c3Npb24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7
IH0pKCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Np
b24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00g
RXhjZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RU
aHJvdyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rp
b24oKSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVj
dFRocm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAg
dGhyb3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhy
b3dpbmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rp
b24oKSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9
KTsKK3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2Vw
dGlvbigpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2Js
dWVfcmVjdC5qcGciOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCknLCB0cnVlKTsKKwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVn
IiknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7
CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpJywgdHJ1ZSk7Cit0
ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRy
dWUpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbikn
LCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5j
dGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0
eUZ1bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRp
b24gOScpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSknLCB0cnVl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScsIHRydWUpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVl
KTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVt
cHR5RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0
ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5p
dHkpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQpJywgZmFsc2UpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBvYmplY3RUaHJv
d2luZ0V4Y2VwdGlvbiknLCB0cnVlLCAnRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24nKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCA0MiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwgInN0cmluZyIpJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVBy
b3BlcnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dHJ1
ZX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTot
SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZh
bHNlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpu
dWxsfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJr
aXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6
b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBl
eGNlcHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3Bu
ZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHt3aWR0aDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6
dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNl
cHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2hlaWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywg
ZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlv
biwgdW5kZWZpbmVkLCB7aGVpZ2h0OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5p
dHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e2hlaWdodDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVu
ZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVz
c2lvbkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVl
T2YgdGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rp
b259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dHJ1ZX0pJywgZmFsc2UpOwor
dGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25M
ZXZlbDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDotSW5maW5p
dHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNl
KTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRp
bzplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRy
dWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3By
ZXNlcnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFz
cGVjdFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRo
cm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0
aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0
eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7b3JpZW50YXRpb246InN0cmluZyJ9KScsIGZhbHNlKTsKKword2luZG93LmpzVGVzdElzQXN5
bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1u
by1zb3VyY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFkOTU3Nwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQv
d2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMKQEAgLTAs
MCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3Vy
Y2Ugd2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uIik7CisKK3ZhciBp
ID0gbmV3IEltYWdlKCk7CitpLnNyYyA9IG51bGw7CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVu
Y3Rpb24oKSB7fTsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkg
eworCQlpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRl
c3RGYWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMg
dGhyb3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFz
c2VkKCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNU
ZXN0KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1
Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFj
ay1hZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWE4NmRmMgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1h
Z2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDI1
IEBACitkZXNjcmlwdGlvbigiRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFja3Mgd2lsbCBub3QgZXhl
Y3V0ZSBhZnRlciBvbnVubG9hZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0g
Ii4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBm
dW5jdGlvbigpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dCgndGVzdFBhc3NlZCgiTm8gY2FsbGJh
Y2tzIGNhbGxlZCBhZnRlciB1bmxvYWQiKTsgZmluaXNoSlNUZXN0KCk7JywgMTAwKTsKK30KKwor
ZG9jdW1lbnQuYm9keS5vbnVubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGkud2Via2l0R2V0SW1h
Z2UoCisgICAgICAgICJpbWFnZS9wbmciLAorICAgICAgICBmdW5jdGlvbihibG9iKSB7CisgICAg
ICAgICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIHN1Y2Nlc3MgY2Fs
bGJhY2suIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSwKKyAgICAg
ICAgZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQg
d2Via2l0R2V0SW1hZ2UgZXJyb3IgY2FsbGJhY2s6ICIgKyBlcnJvcik7CisgICAgICAgICAgICBm
aW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICk7Cit9CisKK3dpbmRvdy5qc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9z
Y3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVy
cmlkZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi41NWVmZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Vi
a2l0R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMiBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJl
cyB0aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRo
b2QuIik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1
ZV9yZWN0LmpwZyI7CisKK2kud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQy
OyB9Cit2YXIgcmVzdWx0ID0gaS53ZWJraXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8o
cmVzdWx0KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3Mu
anMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdl
L3NjcmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi5hNjY0ZjNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxs
YmFja3MuanMKQEAgLTAsMCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNh
bGxiYWNrcyB3b3JrIGNvcnJlY3RseS4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3Jj
ID0gIi4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9
IGZ1bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBp
bmNvcnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJv
ckNhbGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsKKyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxs
YmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogIiArIGVycm9yKTsKKyAgICBm
aW5pc2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3Vy
cmVudGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29y
a3MgZm9yIG5vdworaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFj
aywgZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRv
dy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdl
dEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi44YzAxODMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsg
Y29ycmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBj
YWxsYmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJv
ciB3aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZCBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVz
dC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5jMjY1MDJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVk
CkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhU
TUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4u
Ly4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1v
cmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0
OGVmODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1h
Z2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1
IEBACitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24g
YW4gaW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246IEVy
cm9yOiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4u
aHRtbC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRH
ZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uMmUxYzU1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlz
YWJsZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5jdGlv
biBsb2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBlbXB0
eUNhbGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigp
IHsKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhjZXB0
aW9uIik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBleGNl
cHRpb246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlE
b25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJbWFn
ZS53ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBv
cmlnaW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAw
MC8uLi8uLi9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3Jlc291cmNlcy9ibHVlX3JlY3QuanBn
IiAvPgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGE0
NWNlNzcuLjEzODk2MDggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYzLDYgKzI2Myw4IEBAIFNFVChXZWJDb3JlX0lE
TF9GSUxFUwogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRl
b0VsZW1lbnQuaWRsCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmlkbAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAog
ICAgIGh0bWwvVmFsaWRpdHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzA3NzFhYy4uN2NiMDY4ZiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMjc2NCArMSw2
NCBAQAotMjAxMC0wNi0yMyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgor
MjAxMC0wNi0yMSAgU3RlcmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CiAKLSAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KLQotICAgICAgICBEbyBub3Qgc2V0IG5l
ZWRzTGF5b3V0IHdoZW4gdGhlIHN0eWxlIGF0dHJpYnV0ZSBjaGFuZ2VzIG9uIGFuIFNWRyBlbGVt
ZW50Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDM2
NgotCi0gICAgICAgIFNWR1NWR0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQgd2FzIGluY29y
cmVjdGx5IGNhbGxpbmcgcmVuZGVyZXIoKS0+c2V0TmVlZHNMYXlvdXQodHJ1ZSkKLSAgICAgICAg
d2hlbmV2ZXIgdGhlIHN0eWxlQXR0ciBjaGFuZ2VkIG9uIGl0cyBlbGVtZW50LiAgVGhpcyBjb3Vs
ZCBoYXBwZW4gZHVyaW5nIGxheW91dCBpbiBzb21lCi0gICAgICAgIGNpcmN1bXN0YW5jZXMgZHVl
IHRvIGxhenkgc3R5bGUgYXR0cmlidXRlIHN5bmNocm9uaXphdGlvbi4gIFdoZW4gaXQgZGlkLCBp
dCBjb3VsZCBjYXVzZSB0aGUKLSAgICAgICAgbGF5b3V0IGZsYWdzIHRvIGJlY29tZSBpbmNvbnNp
c3RlbnQuICBTZWUgdGhlIHRlc3QgY2FzZSBmb3IgZGV0YWlscy4KLQotICAgICAgICBDaGFuZ2Vz
IHRvIGFuIGVsZW1lbnQncyBzdHlsZSBhdHRyaWJ1dGUgYWx3YXlzIG1hcmsgYW4gZWxlbWVudCBh
cyBuZWVkaW5nIGxheW91dCBhbnl3YXkgc28KLSAgICAgICAgdGhpcyBjYWxsIHdhcyByZWR1bmRh
bnQuCi0KLSAgICAgICAgVGVzdDogZmFzdC9yZXBhaW50L3N2Zy1sYXlvdXQtcm9vdC1zdHlsZS1h
dHRyLXVwZGF0ZS5odG1sCi0KLSAgICAgICAgKiBzdmcvU1ZHU3R5bGVkRWxlbWVudC5jcHA6Ci0g
ICAgICAgIChXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50Ojppc0tub3duQXR0cmlidXRlKToKLQot
MjAxMC0wNi0yMyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KLQotICAg
ICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgotCi0gICAgICAgIHI2MTIxNSBicm9rZSBB
Y2lkMwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEw
MzQKLSAgICAgICAgCi0gICAgICAgIFRoZSBjb2RlIGFkZGVkIGluIHI2MTIxNSwgd2hpY2ggdGVz
dHMgd2hldGhlciB0aGUgcm9vdCByZW5kZXJlciB3aWxsIGZpbGwKLSAgICAgICAgdGhlIGVudGly
ZSB2aWV3cG9ydCwgc2hvdWxkIG5vdCBydW4gZm9yIHN1YmZyYW1lcy4gU28gYmFpbCBmcm9tCi0g
ICAgICAgIFJlbmRlclZpZXc6OnBhaW50Qm94RGVjb3JhdGlvbnMoKSBpZiBkb2N1bWVudCgpLT5v
d25lckVsZW1lbnQoKSBpcyBub3QgbnVsbC4KLSAgICAgICAgVGhlIG9sZCBjb2RlIHdhcyB0cnlp
bmcgdG8gZG8gdGhpcyBieSBjaGVja2luZyAnZWx0JywgYnV0IHRoYXQgZW5kcyB1cCBhcyAKLSAg
ICAgICAgbnVsbCBhZnRlciB0aGUgZm9yIGxvb3AgYWJvdmUuCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgogICAgICAgICAKLSAgICAgICAgV2UgY2FuIGFsc28gYmFpbCBlYXJs
eSBpZiB0aGUgaXMgbm8gRnJhbWVWaWV3KCkuCi0KLSAgICAgICAgVGVzdDogZmFzdC9mcmFtZXMv
cGFpbnQtaWZyYW1lLWJhY2tncm91bmQuaHRtbAotCi0gICAgICAgICogcmVuZGVyaW5nL1JlbmRl
clZpZXcuY3BwOgotICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVmlldzo6cGFpbnRCb3hEZWNvcmF0
aW9ucyk6Ci0KLTIwMTAtMDYtMjMgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgWXVyeSBTZW1pa2hhdHNreS4KLQotICAgICAgICBX
ZWIgSW5zcGVjdG9yOiBkbyBub3QgcmVzZXQgcHJvZmlsZXMgcGFuZWwgb24gbmF2aWdhdGlvbi4K
LQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwNjgK
LQotICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcDoKLSAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmRpZENvbW1pdExvYWQpOgotICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JGcm9udGVuZDo6cmVzZXRQcm9maWxlc1BhbmVsKToKLSAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRnJvbnRlbmQuaDoKLSAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2Zp
bGVzUGFuZWwuanM6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbCk6Ci0gICAg
ICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUucG9wdWxhdGVJbnRlcmZh
Y2UpOgotICAgICAgICAoV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwucHJvdG90eXBlLnByb2Zp
bGVyV2FzRGlzYWJsZWQpOgotICAgICAgICAoV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwucHJv
dG90eXBlLl9yZXNldCk6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90
b3R5cGUuX2NsZWFyUHJvZmlsZXMpOgotICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5z
cGVjdG9yLmpzOgotICAgICAgICAoV2ViSW5zcGVjdG9yLnJlc2V0UHJvZmlsZXNQYW5lbCk6Ci0K
LTIwMTAtMDYtMjMgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+Ci0KLSAg
ICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KLQotICAgICAgICBXZWIgSW5zcGVjdG9y
OiBJbnNwZWN0b3JDb250cm9sbGVyIHNob3VsZCBiZSBhZGRlZCBvbmx5IG9uY2UgYXMgU2NyaXB0
RGVidWdMaXN0ZW5lciB0bwotICAgICAgICBTY3JpcHREZWJ1Z1NlcnZlci4KLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxMDcwCi0KLSAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyOjpjb25uZWN0RnJvbnRlbmQpOgotICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQ29udHJvbGxlcjo6ZGlzY29ubmVjdEZyb250ZW5kKToKLSAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvckNvbnRyb2xsZXI6OmVuYWJsZURlYnVnZ2VyRnJvbUZyb250ZW5kKToKLSAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczoKLSAgICAgICAgKFdlYklu
c3BlY3Rvci5TY3JpcHRzUGFuZWwpOiBkb24ndCBjYWxsIEluc3BlY3RvckJhY2tlbmQuZW5hYmxl
RGVidWdnZXIgaWYgZGVidWdnZXIgaXMgYWx3YXlzIGVuYWJsZWQsCi0gICAgICAgIEluc3BlY3Rv
ckNvbnRyb2xsZXIgd2lsbCBkbyB0aGlzIG9uIGl0cyBzaWRlIHdoZW4gdGhlIGZyb250IGVuZCBp
cyBjb25uZWN0ZWQuCi0KLTIwMTAtMDYtMjMgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2aWxvdkBj
aHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgWXVyeSBTZW1pa2hhdHNreS4KLQot
ICAgICAgICBDbGVhciBicmVha3BvaW50cyBiZWZvcmUgcmVzdG9yaW5nIHRoZW0sIG5vdCBhZnRl
ci4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxMDcx
Ci0KLSAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHA6Ci0gICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjplbmFibGVEZWJ1Z2dlckZyb21Gcm9udGVu
ZCk6Ci0KLTIwMTAtMDYtMjMgIEJlbmphbWluIFBvdWxhaW4gIDxiZW5qYW1pbi5wb3VsYWluQG5v
a2lhLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNl
bi4KLQotICAgICAgICBEbyBub3QgcmVuZGVyIHRoZSBmdWxsIGZyYW1lIHdoZW4gdGhlcmUgaXMg
c29tZSBlbGVtZW50cyB3aXRoIGZpeGVkIHBvc2l0aW9uaW5nCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzE1MAotCi0gICAgICAgIERvIG5vdCByZW5k
ZXIgdGhlIGZ1bGwgZnJhbWUgd2hlbiB0aGVyZSBpcyBzb21lIGVsZW1lbnRzIHdpdGggZml4ZWQg
cG9zaXRpb25pbmcKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTMzMTUwCi0KLSAgICAgICAgVGhlIGZyYW1lIHZpZXcgdGFrZSBpbnRvIGFjb3VudCB0aGUg
bGlzdCBvZiBmaXhlZCBvYmplY3Qgd2hlbiBzY3JvbGxpbmcKLSAgICAgICAgdGhlIHZpZXcuIElm
IHRoZSBudW1iZXIgb2Ygb2JqZWN0IGlzIGxvd2VyIHRoYW4gYSBjZXJ0YWluIHRocmVzaG9sZCwg
dGhlIHBpeGVsCi0gICAgICAgIGFyZSBibGl0dGVkLCBhbmQgdGhlIGludmFsaWRhdGVkIGFyZWEg
dXBkYXRlZC4KLQotICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OkZyYW1lVmlldzo6YWRkRml4ZWRPYmplY3QpOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVW
aWV3OjpyZW1vdmVGaXhlZE9iamVjdCk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OnNj
cm9sbENvbnRlbnRzRmFzdFBhdGgpOgotICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6Ci0gICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JvbGxW
aWV3OjpzY3JvbGxDb250ZW50cyk6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzY3Jv
bGxDb250ZW50c0Zhc3RQYXRoKToKLSAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3Lmg6Ci0g
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyOjpyZXBhaW50UmVjdEluY2x1ZGluZ0Rlc2NlbmRhbnRzKToKLSAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaDoKLSAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6c3R5bGVXaWxsQ2hhbmdlKToK
LQotMjAxMC0wNi0yMyAgTWlraGFpbCBOYWdhbm92ICA8bW5hZ2Fub3ZAY2hyb21pdW0ub3JnPgot
Ci0gICAgICAgIFJldmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCi0KLSAgICAgICAgV2ViIEluc3Bl
Y3RvcjogRml4IGRpc3BsYXlpbmcgb2Ygc2V2ZXJhbCBDUFUgcHJvZmlsZXMgd2l0aCB0aGUgc2Ft
ZSBuYW1lLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MDk5MgotCi0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpz
OgotICAgICAgICAoV2ViSW5zcGVjdG9yLlByb2ZpbGVHcm91cFNpZGViYXJUcmVlRWxlbWVudC5w
cm90b3R5cGUub25zZWxlY3QpOgotCi0yMDEwLTA2LTIzICBBZGFtIEJhcnRoICA8YWJhcnRoQHdl
YmtpdC5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZC4gIGNsZWFuLWhlYWRlci1ndWFyZHMgdGhh
dCB3ZXJlIG1hZGUgZGlydHkgYnkgcmVjZW50Ci0gICAgICAgIHJlbmFtZXMuCi0KLSAgICAgICAg
KiBodG1sL0hUTUxEb2N1bWVudFBhcnNlci5oOgotICAgICAgICAqIGh0bWwvSFRNTFByZWxvYWRT
Y2FubmVyLmg6Ci0gICAgICAgICogaHRtbC9IVE1MVG9rZW5pemVyLmg6Ci0gICAgICAgICogaHRt
bC9IVE1MVHJlZUJ1aWxkZXIuaDoKLSAgICAgICAgKiBodG1sL0xlZ2FjeUhUTUxEb2N1bWVudFBh
cnNlci5oOgotICAgICAgICAqIGh0bWwvTGVnYWN5SFRNTFRyZWVCdWlsZGVyLmg6Ci0gICAgICAg
ICogaHRtbC9MZWdhY3lQcmVsb2FkU2Nhbm5lci5oOgotCi0yMDEwLTA2LTIzICBBZGFtIEJhcnRo
ICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwu
Ci0KLSAgICAgICAgUmVuYW1lIExlZ2FjeUhUTUxUcmVlQ29uc3RydWN0b3IgdG8gTGVnYWN5SFRN
TFRyZWVCdWlsZGVyCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MTA1MwotCi0gICAgICAgIFRoZXJlIHdhcyBzb21lIGRlYmF0ZSBhYm91dCB3aGV0aGVy
IHRvIGNhbGwgdGhpcyBjbGFzcyAoYW5kIHRoZQotICAgICAgICBub24tbGVnYWN5IHZlcnNpb24p
ICJ0cmVlIGJ1aWxkZXIiIG9yICJ0cmVlIGNvbnN0cnVjdG9yIi4gIE1hY2llagotICAgICAgICBw
b2ludGVkIG91dCB0aGF0IG90aGVyIGltcGxlbWVudGF0aW9ucyAoaW5jbHVkaW5nIE1vemlsbGEg
YW5kIEhUTUw1TGliKQotICAgICAgICBjYWxsIGl0IGEgdHJlZSBidWlsZGVyLiAgVGhlIHBhdGgg
b2YgbGVhc3QgcmVzaXN0YW5jZSBzZWVtcyB0byBiZSBjYWxsCi0gICAgICAgIGl0IHRoYXQgZm9y
IG5vdy4KLQotICAgICAgICAqIEFuZHJvaWQubWs6Ci0gICAgICAgICogQ01ha2VMaXN0cy50eHQ6
Ci0gICAgICAgICogR05VbWFrZWZpbGUuYW06Ci0gICAgICAgICogV2ViQ29yZS5neXBpOgotICAg
ICAgICAqIFdlYkNvcmUucHJvOgotICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qOgotICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAg
ICAgKiBkb20vRG9jdW1lbnQuY3BwOgotICAgICAgICAqIGRvbS9Eb2N1bWVudFBhcnNlci5oOgot
ICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6Omh0bWxUcmVlQ29uc3RydWN0b3IpOgot
ICAgICAgICAqIGh0bWwvSFRNTERvY3VtZW50UGFyc2VyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUxEb2N1bWVudFBhcnNlcjo6aHRtbFRyZWVDb25zdHJ1Y3Rvcik6Ci0gICAgICAgICogaHRt
bC9IVE1MRG9jdW1lbnRQYXJzZXIuaDoKLSAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVs
ZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6cmVt
b3ZlZEZyb21UcmVlKToKLSAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgotICAg
ICAgICAqIGh0bWwvSFRNTE1ldGVyRWxlbWVudC5jcHA6Ci0gICAgICAgICogaHRtbC9IVE1MUHJv
Z3Jlc3NFbGVtZW50LmNwcDoKLSAgICAgICAgKiBodG1sL0hUTUxUcmVlQnVpbGRlci5jcHA6Ci0g
ICAgICAgIChXZWJDb3JlOjpIVE1MVHJlZUJ1aWxkZXI6OkhUTUxUcmVlQnVpbGRlcik6Ci0gICAg
ICAgICogaHRtbC9IVE1MVHJlZUJ1aWxkZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxUcmVl
QnVpbGRlcjo6bGVnYWN5VHJlZUNvbnN0cnVjdG9yKToKLSAgICAgICAgKiBodG1sL0xlZ2FjeUhU
TUxEb2N1bWVudFBhcnNlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1l
bnRQYXJzZXI6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcik6Ci0gICAgICAgICogaHRtbC9MZWdh
Y3lIVE1MRG9jdW1lbnRQYXJzZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1
bWVudFBhcnNlcjo6aHRtbFRyZWVDb25zdHJ1Y3Rvcik6Ci0gICAgICAgICogaHRtbC9MZWdhY3lI
VE1MVHJlZUJ1aWxkZXIuY3BwOiBDb3BpZWQgZnJvbSBXZWJDb3JlL2h0bWwvTGVnYWN5SFRNTFRy
ZWVDb25zdHJ1Y3Rvci5jcHAuCi0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxk
ZXI6OkxlZ2FjeUhUTUxUcmVlQnVpbGRlcik6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1M
VHJlZUJ1aWxkZXI6On5MZWdhY3lIVE1MVHJlZUJ1aWxkZXIpOgotICAgICAgICAoV2ViQ29yZTo6
TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpyZXNldCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lI
VE1MVHJlZUJ1aWxkZXI6OnNldEN1cnJlbnQpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRN
TFRyZWVCdWlsZGVyOjpsaW1pdERlcHRoKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxU
cmVlQnVpbGRlcjo6aW5zZXJ0Tm9kZUFmdGVyTGltaXREZXB0aCk6Ci0gICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OnBhcnNlVG9rZW4pOgotICAgICAgICAoV2ViQ29yZTo6
TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpwYXJzZURvY3R5cGVUb2tlbik6Ci0gICAgICAgIChXZWJD
b3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6Omluc2VydE5vZGUpOgotICAgICAgICAoV2ViQ29y
ZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpoYW5kbGVFcnJvcik6Ci0gICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OnRleHRDcmVhdGVFcnJvckNoZWNrKToKLSAgICAgICAg
KFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRlcjo6Y29tbWVudENyZWF0ZUVycm9yQ2hlY2sp
OgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpoZWFkQ3JlYXRlRXJy
b3JDaGVjayk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OmJvZHlD
cmVhdGVFcnJvckNoZWNrKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRl
cjo6ZnJhbWVzZXRDcmVhdGVFcnJvckNoZWNrKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhU
TUxUcmVlQnVpbGRlcjo6Zm9ybUNyZWF0ZUVycm9yQ2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6
TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjppc2luZGV4Q3JlYXRlRXJyb3JDaGVjayk6Ci0gICAgICAg
IChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OnNlbGVjdENyZWF0ZUVycm9yQ2hlY2sp
OgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpkZENyZWF0ZUVycm9y
Q2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpkdENyZWF0
ZUVycm9yQ2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpy
cENyZWF0ZUVycm9yQ2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWls
ZGVyOjpydENyZWF0ZUVycm9yQ2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRy
ZWVCdWlsZGVyOjpuZXN0ZWRDcmVhdGVFcnJvckNoZWNrKToKLSAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeUhUTUxUcmVlQnVpbGRlcjo6bmVzdGVkUENsb3NlckNyZWF0ZUVycm9yQ2hlY2spOgotICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpuZXN0ZWRTdHlsZUNyZWF0ZUVy
cm9yQ2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjp0YWJs
ZUNlbGxDcmVhdGVFcnJvckNoZWNrKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVl
QnVpbGRlcjo6dGFibGVTZWN0aW9uQ3JlYXRlRXJyb3JDaGVjayk6Ci0gICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6Om5vZW1iZWRDcmVhdGVFcnJvckNoZWNrKToKLSAgICAg
ICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRlcjo6bm9mcmFtZXNDcmVhdGVFcnJvckNo
ZWNrKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRlcjo6bm9zY3JpcHRD
cmVhdGVFcnJvckNoZWNrKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRl
cjo6cENsb3NlckNyZWF0ZUVycm9yQ2hlY2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRN
TFRyZWVCdWlsZGVyOjpwQ2xvc2VyU3RyaWN0Q3JlYXRlRXJyb3JDaGVjayk6Ci0gICAgICAgIChX
ZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6Om1hcENyZWF0ZUVycm9yQ2hlY2spOgotICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpnZXROb2RlKToKLSAgICAgICAg
KFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRlcjo6YWxsb3dOZXN0ZWRSZWR1bmRhbnRUYWcp
OgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpwcm9jZXNzQ2xvc2VU
YWcpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjppc0hlYWRpbmdU
YWcpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjppc0lubGluZSk6
Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OmlzUmVzaWR1YWxTdHls
ZVRhZyk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OmlzQWZmZWN0
ZWRCeVJlc2lkdWFsU3R5bGUpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWls
ZGVyOjpoYW5kbGVSZXNpZHVhbFN0eWxlQ2xvc2VUYWdBY3Jvc3NCbG9ja3MpOgotICAgICAgICAo
V2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpyZW9wZW5SZXNpZHVhbFN0eWxlVGFncyk6
Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OnB1c2hCbG9jayk6Ci0g
ICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OnBvcEJsb2NrKToKLSAgICAg
ICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRlcjo6cG9wT25lQmxvY2tDb21tb24pOgot
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpwb3BPbmVCbG9jayk6Ci0g
ICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6Om1vdmVPbmVCbG9ja1RvU3Rh
Y2spOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpjaGVja0lmSGFz
UEVsZW1lbnRJblNjb3BlKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRl
cjo6cG9wSW5saW5lQmxvY2tzKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVp
bGRlcjo6ZnJlZUJsb2NrKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxUcmVlQnVpbGRl
cjo6Y3JlYXRlSGVhZCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6
OmhhbmRsZUlzaW5kZXgpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVy
OjpzdGFydEJvZHkpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVCdWlsZGVyOjpm
aW5pc2hlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MVHJlZUJ1aWxkZXI6OnJlcG9y
dEVycm9yVG9Db25zb2xlKToKLSAgICAgICAgKiBodG1sL0xlZ2FjeUhUTUxUcmVlQnVpbGRlci5o
OiBDb3BpZWQgZnJvbSBXZWJDb3JlL2h0bWwvTGVnYWN5SFRNTFRyZWVDb25zdHJ1Y3Rvci5oLgot
ICAgICAgICAqIGh0bWwvTGVnYWN5SFRNTFRyZWVDb25zdHJ1Y3Rvci5jcHA6IFJlbW92ZWQuCi0g
ICAgICAgICogaHRtbC9MZWdhY3lIVE1MVHJlZUNvbnN0cnVjdG9yLmg6IFJlbW92ZWQuCi0gICAg
ICAgICogaHRtbC9TdGVwUmFuZ2UuY3BwOgotICAgICAgICAqIGh0bWwvVmFsaWRpdHlTdGF0ZS5j
cHA6Ci0gICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNsaWRlci5jcHA6Ci0KLTIwMTAtMDYtMjMg
IEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBF
cmljIFNlaWRlbC4KLQotICAgICAgICBSZW5hbWUgdGhlIHByZWxvYWQgc2Nhbm5lcnMKLSAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxMDUyCi0KLSAgICAg
ICAgUmVuYW1lcyBQcmVsb2FkU2Nhbm5lciB0byBMZWdhY3lQcmVsb2FkU2Nhbm5lciBiZWNhdXNl
IHRoaXMgY29kZSBpcyBub3cKLSAgICAgICAgb2ZmIGJ5IGRlZmF1bHQuICBBbHNvLCByZW5hbWUg
SFRNTDVQcmVsb2FkU2Nhbm5lciB0bwotICAgICAgICBIVE1MUHJlbG9hZFNjYW5uZXIuICBXZSdy
ZSBub3QgY2FsbGluZyBpdCBQcmVsb2FkU2Nhbm5lciBiZWNhdXNlIHdlJ3ZlCi0gICAgICAgIGZh
Y3RvcmVkIG91dCB0aGUgQ1NTUHJlbG9hZFNjYW5uZXIgYW5kIHRoZSBIVE1MUHJlbG9hZFNjYW5u
ZXIgZnJvbSB0aGUKLSAgICAgICAgb3JpZ2luYWwgUHJlbG9hZFNjYW5uZXIuCi0KLSAgICAgICAg
KiBBbmRyb2lkLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIEdOVW1h
a2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJDb3JlLnBy
bzoKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAgICAgICAgKiBX
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogaHRtbC9IVE1MNVBy
ZWxvYWRTY2FubmVyLmNwcDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUw1UHJlbG9hZFNj
YW5uZXIuaDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUxEb2N1bWVudFBhcnNlci5jcHA6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OnB1bXBUb2tlbml6ZXIpOgot
ICAgICAgICAqIGh0bWwvSFRNTERvY3VtZW50UGFyc2VyLmg6Ci0gICAgICAgICogaHRtbC9IVE1M
UHJlbG9hZFNjYW5uZXIuY3BwOiBDb3BpZWQgZnJvbSBXZWJDb3JlL2h0bWwvSFRNTDVQcmVsb2Fk
U2Nhbm5lci5jcHAuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MUHJlbG9hZFNjYW5uZXI6OkhUTUxQ
cmVsb2FkU2Nhbm5lcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MUHJlbG9hZFNjYW5uZXI6OmFw
cGVuZFRvRW5kKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxQcmVsb2FkU2Nhbm5lcjo6c2Nhbik6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MUHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NUb2tlbik6Ci0g
ICAgICAgIChXZWJDb3JlOjpIVE1MUHJlbG9hZFNjYW5uZXI6OnNjYW5uaW5nQm9keSk6Ci0gICAg
ICAgICogaHRtbC9IVE1MUHJlbG9hZFNjYW5uZXIuaDogQ29waWVkIGZyb20gV2ViQ29yZS9odG1s
L0hUTUw1UHJlbG9hZFNjYW5uZXIuaC4KLSAgICAgICAgKiBodG1sL0xlZ2FjeUhUTUxEb2N1bWVu
dFBhcnNlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6
OnNjcmlwdEhhbmRsZXIpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFy
c2VyOjpzY3JpcHRFeGVjdXRpb24pOgotICAgICAgICAqIGh0bWwvTGVnYWN5SFRNTERvY3VtZW50
UGFyc2VyLmg6Ci0gICAgICAgICogaHRtbC9MZWdhY3lQcmVsb2FkU2Nhbm5lci5jcHA6IENvcGll
ZCBmcm9tIFdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAuCi0gICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lQcmVsb2FkU2Nhbm5lcjo6TGVnYWN5UHJlbG9hZFNjYW5uZXIpOgotICAgICAgICAo
V2ViQ29yZTo6TGVnYWN5UHJlbG9hZFNjYW5uZXI6On5MZWdhY3lQcmVsb2FkU2Nhbm5lcik6Ci0g
ICAgICAgIChXZWJDb3JlOjpMZWdhY3lQcmVsb2FkU2Nhbm5lcjo6YmVnaW4pOgotICAgICAgICAo
V2ViQ29yZTo6TGVnYWN5UHJlbG9hZFNjYW5uZXI6OmVuZCk6Ci0gICAgICAgIChXZWJDb3JlOjpM
ZWdhY3lQcmVsb2FkU2Nhbm5lcjo6cmVzZXQpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5UHJl
bG9hZFNjYW5uZXI6OnNjYW5uaW5nQm9keSk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lQcmVs
b2FkU2Nhbm5lcjo6d3JpdGUpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5UHJlbG9hZFNjYW5u
ZXI6OmNsZWFyTGFzdENoYXJhY3RlcnMpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5UHJlbG9h
ZFNjYW5uZXI6OnJlbWVtYmVyQ2hhcmFjdGVyKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVBy
ZWxvYWRTY2FubmVyOjpsYXN0Q2hhcmFjdGVyc01hdGNoKToKLSAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeVByZWxvYWRTY2FubmVyOjpjb25zdW1lRW50aXR5KToKLSAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeVByZWxvYWRTY2FubmVyOjp0b2tlbml6ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lQ
cmVsb2FkU2Nhbm5lcjo6cHJvY2Vzc0F0dHJpYnV0ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdh
Y3lQcmVsb2FkU2Nhbm5lcjo6ZW1pdENoYXJhY3Rlcik6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdh
Y3lQcmVsb2FkU2Nhbm5lcjo6dG9rZW5pemVDU1MpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5
UHJlbG9hZFNjYW5uZXI6OmVtaXRUYWcpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5UHJlbG9h
ZFNjYW5uZXI6OmVtaXRDU1NSdWxlKToKLSAgICAgICAgKiBodG1sL0xlZ2FjeVByZWxvYWRTY2Fu
bmVyLmg6IENvcGllZCBmcm9tIFdlYkNvcmUvaHRtbC9QcmVsb2FkU2Nhbm5lci5oLgotICAgICAg
ICAqIGh0bWwvUHJlbG9hZFNjYW5uZXIuY3BwOiBSZW1vdmVkLgotICAgICAgICAqIGh0bWwvUHJl
bG9hZFNjYW5uZXIuaDogUmVtb3ZlZC4KLSAgICAgICAgKiBwYWdlL1hTU0F1ZGl0b3IuY3BwOgot
ICAgICAgICAoV2ViQ29yZTo6WFNTQXVkaXRvcjo6ZGVjb2RlSFRNTEVudGl0aWVzKToKLQotMjAx
MC0wNi0yMyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAgIFlldCBtb3JlIEhUTUw1ID0+IEhUTUwgcmVu
YW1lcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEw
NTEKLQotICAgICAgICBUaGlzIHBhdGNoIHJlbmFtZXMgSFRNTDVEb2N1bWVudFBhcnNlciB0byBI
VE1MRG9jdW1lbnRQYXJzZXIgYW5kCi0gICAgICAgIEhUTUw1VHJlZUJ1aWxkZXIgdG8gSFRNTFRy
ZWVCdWlsZGVyLiAgVGhlcmUgd2FzIHNvbWUgZGlzY3Vzc2lvbiBhYm91dAotICAgICAgICB3aGV0
aGVyIHRvIHVzZSB0aGUgbmFtZSBIVE1MVHJlZUJ1aWxkZXIgb3IgSFRNTFRyZWVDb25zdHJ1Y3Rv
ciwgYnV0Ci0gICAgICAgIHRyZWUgYnVpbGRlciBzZWVtcyB0byBiZSB0aGUgZG9taW5hdGUgbmFt
ZSBpbiBvdGhlciBpbXBsZW1lbnRhdGlvbnMuCi0KLSAgICAgICAgKiBBbmRyb2lkLm1rOgotICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAg
ICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJDb3JlLnBybzoKLSAgICAgICAgKiBXZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogZG9tL0RvY3VtZW50RnJhZ21lbnQuY3BwOgotICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRGcmFnbWVudDo6cGFyc2VIVE1MKToKLSAgICAgICAgKiBo
dG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIuY3BwOiBSZW1vdmVkLgotICAgICAgICAqIGh0bWwvSFRN
TDVEb2N1bWVudFBhcnNlci5oOiBSZW1vdmVkLgotICAgICAgICAqIGh0bWwvSFRNTDVQcmVsb2Fk
U2Nhbm5lci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVByZWxvYWRTY2FubmVyOjpzY2Fu
KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1UHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NUb2tlbik6
Ci0gICAgICAgICogaHRtbC9IVE1MNVRyZWVCdWlsZGVyLmNwcDogUmVtb3ZlZC4KLSAgICAgICAg
KiBodG1sL0hUTUw1VHJlZUJ1aWxkZXIuaDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUxE
b2N1bWVudC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnQ6OmNyZWF0ZVBhcnNl
cik6Ci0gICAgICAgICogaHRtbC9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwOiBDb3BpZWQgZnJvbSBX
ZWJDb3JlL2h0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5jcHAuCi0gICAgICAgIChXZWJDb3JlOjpI
VE1MRG9jdW1lbnRQYXJzZXI6OkhUTUxEb2N1bWVudFBhcnNlcik6Ci0gICAgICAgIChXZWJDb3Jl
OjpIVE1MRG9jdW1lbnRQYXJzZXI6On5IVE1MRG9jdW1lbnRQYXJzZXIpOgotICAgICAgICAoV2Vi
Q29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpiZWdpbik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1M
RG9jdW1lbnRQYXJzZXI6OnN0b3BQYXJzaW5nKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1
bWVudFBhcnNlcjo6cHJvY2Vzc2luZ0RhdGEpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3Vt
ZW50UGFyc2VyOjpwdW1wVG9rZW5pemVySWZQb3NzaWJsZSk6Ci0gICAgICAgIChXZWJDb3JlOjpI
VE1MRG9jdW1lbnRQYXJzZXI6OmlzU2NoZWR1bGVkRm9yUmVzdW1lKToKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6cmVzdW1lUGFyc2luZ0FmdGVyWWllbGQpOgotICAgICAg
ICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpydW5TY3JpcHRzRm9yUGF1c2VkVHJlZUNv
bnN0cnVjdG9yKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6cHVtcFRv
a2VuaXplcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OndpbGxQdW1w
TGV4ZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpkaWRQdW1wTGV4
ZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjp3cml0ZSk6Ci0gICAg
ICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OmVuZCk6Ci0gICAgICAgIChXZWJDb3Jl
OjpIVE1MRG9jdW1lbnRQYXJzZXI6OmF0dGVtcHRUb0VuZCk6Ci0gICAgICAgIChXZWJDb3JlOjpI
VE1MRG9jdW1lbnRQYXJzZXI6OmVuZElmRGVsYXllZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1M
RG9jdW1lbnRQYXJzZXI6OmZpbmlzaCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQ
YXJzZXI6OmZpbmlzaFdhc0NhbGxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQ
YXJzZXI6OmV4ZWN1dGluZ1NjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQ
YXJzZXI6OmluU2NyaXB0RXhlY3V0aW9uKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1bWVu
dFBhcnNlcjo6bGluZU51bWJlcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJz
ZXI6OmNvbHVtbk51bWJlcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6
Omh0bWxUcmVlQ29uc3RydWN0b3IpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFy
c2VyOjppc1dhaXRpbmdGb3JTY3JpcHRzKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1bWVu
dFBhcnNlcjo6cmVzdW1lUGFyc2luZ0FmdGVyU2NyaXB0RXhlY3V0aW9uKToKLSAgICAgICAgKFdl
YkNvcmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6d2F0Y2hGb3JMb2FkKToKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6c3RvcFdhdGNoaW5nRm9yTG9hZCk6Ci0gICAgICAgIChX
ZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OnNob3VsZExvYWRFeHRlcm5hbFNjcmlwdEZyb21T
cmMpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpub3RpZnlGaW5pc2hl
ZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OmV4ZWN1dGVTY3JpcHRz
V2FpdGluZ0ZvclN0eWxlc2hlZXRzKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1bWVudFBh
cnNlcjo6c2NyaXB0KToKLSAgICAgICAgKiBodG1sL0hUTUxEb2N1bWVudFBhcnNlci5oOiBDb3Bp
ZWQgZnJvbSBXZWJDb3JlL2h0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oLgotICAgICAgICAqIGh0
bWwvSFRNTFBhcnNlclNjaGVkdWxlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MUGFyc2Vy
U2NoZWR1bGVyOjpIVE1MUGFyc2VyU2NoZWR1bGVyKToKLSAgICAgICAgKiBodG1sL0hUTUxQYXJz
ZXJTY2hlZHVsZXIuaDoKLSAgICAgICAgKiBodG1sL0hUTUxUcmVlQnVpbGRlci5jcHA6IENvcGll
ZCBmcm9tIFdlYkNvcmUvaHRtbC9IVE1MNVRyZWVCdWlsZGVyLmNwcC4KLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxUcmVlQnVpbGRlcjo6SFRNTFRyZWVCdWlsZGVyKToKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUxUcmVlQnVpbGRlcjo6fkhUTUxUcmVlQnVpbGRlcik6Ci0gICAgICAgIChXZWJDb3JlOjpI
VE1MVHJlZUJ1aWxkZXI6OmhhbmRsZVNjcmlwdFN0YXJ0VGFnKToKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUxUcmVlQnVpbGRlcjo6aGFuZGxlU2NyaXB0RW5kVGFnKToKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUxUcmVlQnVpbGRlcjo6dGFrZVNjcmlwdFRvUHJvY2Vzcyk6Ci0gICAgICAgIChXZWJDb3Jl
OjpIVE1MVHJlZUJ1aWxkZXI6OmFkanVzdGVkTGV4ZXJTdGF0ZSk6Ci0gICAgICAgIChXZWJDb3Jl
OjpIVE1MVHJlZUJ1aWxkZXI6OnBhc3NUb2tlblRvTGVnYWN5UGFyc2VyKToKLSAgICAgICAgKFdl
YkNvcmU6OkhUTUxUcmVlQnVpbGRlcjo6Y29uc3RydWN0VHJlZUZyb21Ub2tlbik6Ci0gICAgICAg
IChXZWJDb3JlOjpIVE1MVHJlZUJ1aWxkZXI6OnByb2Nlc3NUb2tlbik6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MVHJlZUJ1aWxkZXI6OmZpbmlzaGVkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxU
cmVlQnVpbGRlcjo6aXNTY3JpcHRpbmdGbGFnRW5hYmxlZCk6Ci0gICAgICAgICogaHRtbC9IVE1M
VHJlZUJ1aWxkZXIuaDogQ29waWVkIGZyb20gV2ViQ29yZS9odG1sL0hUTUw1VHJlZUJ1aWxkZXIu
aC4KLQotMjAxMC0wNi0yMyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAg
ICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAgIE1vcmUgSFRNTDUgPT4gSFRN
TCByZW5hbWVzCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MTA0OQotCi0gICAgICAgIFRoaXMgcGF0Y2ggcmVuYW1lcyBIVE1MNVNjcmlwdFJ1bm5lciwg
SFRNTDVTY3JpcHRSdW5uZXJIb3N0LCBhbmQKLSAgICAgICAgSFRNTDVUb2tlbiB0byByZW1vdmUg
dGhlICI1IiBmcm9tIHRoZWlyIG5hbWVzLiAgVGhlc2UgY2xhc2VzIGFyZW4ndAotICAgICAgICBz
cGVjaWZpYyB0byBIVE1MNSBhbmQgd2lsbCBiZSB1c2VkIGdvaW5nIGZvcndhcmQuCi0KLSAgICAg
ICAgKiBBbmRyb2lkLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIEdO
VW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJDb3Jl
LnBybzoKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAgICAgICAg
KiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogaHRtbC9DU1NQ
cmVsb2FkU2Nhbm5lci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpDU1NQcmVsb2FkU2Nhbm5lcjo6
c2Nhbik6Ci0gICAgICAgICogaHRtbC9DU1NQcmVsb2FkU2Nhbm5lci5oOgotICAgICAgICAqIGh0
bWwvSFRNTDVEb2N1bWVudFBhcnNlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3Vt
ZW50UGFyc2VyOjpIVE1MNURvY3VtZW50UGFyc2VyKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1
RG9jdW1lbnRQYXJzZXI6Om5vdGlmeUZpbmlzaGVkKToKLSAgICAgICAgKiBodG1sL0hUTUw1RG9j
dW1lbnRQYXJzZXIuaDoKLSAgICAgICAgKiBodG1sL0hUTUw1UHJlbG9hZFNjYW5uZXIuY3BwOgot
ICAgICAgICAoV2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6UHJlbG9hZFRhc2spOgot
ICAgICAgICAoV2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6cHJvY2Vzc0F0dHJpYnV0
ZXMpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVQcmVsb2FkU2Nhbm5lcjo6cHJvY2Vzc1Rva2Vu
KToKLSAgICAgICAgKiBodG1sL0hUTUw1UHJlbG9hZFNjYW5uZXIuaDoKLSAgICAgICAgKiBodG1s
L0hUTUw1U2NyaXB0UnVubmVyLmNwcDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUw1U2Ny
aXB0UnVubmVyLmg6IFJlbW92ZWQuCi0gICAgICAgICogaHRtbC9IVE1MNVNjcmlwdFJ1bm5lckhv
c3QuaDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUw1VG9rZW4uaDogUmVtb3ZlZC4KLSAg
ICAgICAgKiBodG1sL0hUTUw1VHJlZUJ1aWxkZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Y29u
dmVydFRvT2xkU3R5bGUpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVUcmVlQnVpbGRlcjo6aGFu
ZGxlU2NyaXB0RW5kVGFnKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1VHJlZUJ1aWxkZXI6OnBh
c3NUb2tlblRvTGVnYWN5UGFyc2VyKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1VHJlZUJ1aWxk
ZXI6OmNvbnN0cnVjdFRyZWVGcm9tVG9rZW4pOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVUcmVl
QnVpbGRlcjo6cHJvY2Vzc1Rva2VuKToKLSAgICAgICAgKiBodG1sL0hUTUw1VHJlZUJ1aWxkZXIu
aDoKLSAgICAgICAgKiBodG1sL0hUTUxTY3JpcHRSdW5uZXIuY3BwOiBDb3BpZWQgZnJvbSBXZWJD
b3JlL2h0bWwvSFRNTDVTY3JpcHRSdW5uZXIuY3BwLgotICAgICAgICAoV2ViQ29yZTo6SFRNTFNj
cmlwdFJ1bm5lcjo6SFRNTFNjcmlwdFJ1bm5lcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MU2Ny
aXB0UnVubmVyOjp+SFRNTFNjcmlwdFJ1bm5lcik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MU2Ny
aXB0UnVubmVyOjpzb3VyY2VGcm9tUGVuZGluZ1NjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpI
VE1MU2NyaXB0UnVubmVyOjppc1BlbmRpbmdTY3JpcHRSZWFkeSk6Ci0gICAgICAgIChXZWJDb3Jl
OjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlUGVuZGluZ1NjcmlwdCk6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0KToKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUxTY3JpcHRSdW5uZXI6Omhhc1NjcmlwdHNXYWl0aW5nRm9yTG9hZCk6Ci0gICAgICAgIChX
ZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjp3YXRjaEZvckxvYWQpOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6c3RvcFdhdGNoaW5nRm9yTG9hZCk6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxT
Y3JpcHRSdW5uZXI6OmhhdmVQYXJzaW5nQmxvY2tpbmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBhcnNpbmdCbG9ja2luZ1NjcmlwdHMpOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9y
TG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVubmVyOjpleGVjdXRlU2NyaXB0
c1dhaXRpbmdGb3JTdHlsZXNoZWV0cyk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0UnVu
bmVyOjpyZXF1ZXN0U2NyaXB0KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRSdW5uZXI6
OnJ1blNjcmlwdCk6Ci0gICAgICAgICogaHRtbC9IVE1MU2NyaXB0UnVubmVyLmg6IENvcGllZCBm
cm9tIFdlYkNvcmUvaHRtbC9IVE1MNVNjcmlwdFJ1bm5lci5oLgotICAgICAgICAqIGh0bWwvSFRN
TFNjcmlwdFJ1bm5lckhvc3QuaDogQ29waWVkIGZyb20gV2ViQ29yZS9odG1sL0hUTUw1U2NyaXB0
UnVubmVySG9zdC5oLgotICAgICAgICAoV2ViQ29yZTo6SFRNTFNjcmlwdFJ1bm5lckhvc3Q6On5I
VE1MU2NyaXB0UnVubmVySG9zdCk6Ci0gICAgICAgICogaHRtbC9IVE1MVG9rZW4uaDogQ29waWVk
IGZyb20gV2ViQ29yZS9odG1sL0hUTUw1VG9rZW4uaC4KLSAgICAgICAgKFdlYkNvcmU6OkhUTUxU
b2tlbjo6SFRNTFRva2VuKToKLSAgICAgICAgKiBodG1sL0hUTUxUb2tlbml6ZXIuY3BwOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTFRva2VuaXplcjo6bmV4dFRva2VuKToKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxUb2tlbml6ZXI6OmVtaXRDaGFyYWN0ZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRN
TFRva2VuaXplcjo6ZW1pdEN1cnJlbnRUb2tlbik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MVG9r
ZW5pemVyOjpzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbik6Ci0gICAgICAgICogaHRt
bC9IVE1MVG9rZW5pemVyLmg6Ci0KLTIwMTAtMDYtMjMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBS
ZW5hbWUgSFRNTDVFbnRpdHlQYXJzZXIgdG8gSFRNTEVudGl0eVBhcnNlcgotICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwNDgKLQotICAgICAgICBNb3N0
bHkgdGhlIHJlc3VsdCBvZiBkby13ZWJjb3JlLXJlbmFtZSwgYnV0IEkgdHdlYWtlZCB0aGUgaGVh
ZGVyIGd1YXJkCi0gICAgICAgIGFuZCB0aGUgbmFtZSBvZiB0aGUgZnJlZSBmdW5jdGlvbi4KLQot
ICAgICAgICAqIEFuZHJvaWQubWs6Ci0gICAgICAgICogQ01ha2VMaXN0cy50eHQ6Ci0gICAgICAg
ICogR05VbWFrZWZpbGUuYW06Ci0gICAgICAgICogV2ViQ29yZS5neXBpOgotICAgICAgICAqIFdl
YkNvcmUucHJvOgotICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgotICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAgKiBodG1s
L0hUTUw1RW50aXR5UGFyc2VyLmNwcDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUw1RW50
aXR5UGFyc2VyLmg6IFJlbW92ZWQuCi0gICAgICAgICogaHRtbC9IVE1MRW50aXR5UGFyc2VyLmNw
cDogQ29waWVkIGZyb20gV2ViQ29yZS9odG1sL0hUTUw1RW50aXR5UGFyc2VyLmNwcC4KLSAgICAg
ICAgKFdlYkNvcmU6OmNvbnN1bWVIVE1MRW50aXR5KToKLSAgICAgICAgKiBodG1sL0hUTUxFbnRp
dHlQYXJzZXIuaDogQ29waWVkIGZyb20gV2ViQ29yZS9odG1sL0hUTUw1RW50aXR5UGFyc2VyLmgu
Ci0gICAgICAgICogaHRtbC9IVE1MVG9rZW5pemVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhU
TUxUb2tlbml6ZXI6OnByb2Nlc3NFbnRpdHkpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFRva2Vu
aXplcjo6bmV4dFRva2VuKToKLQotMjAxMC0wNi0yMiAgWXV0YSBLaXRhbXVyYSAgPHl1dGFrQGNo
cm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292Lgot
Ci0gICAgICAgIEFkZCBhIG5ldyBjbGFzcyB0aGF0IHN0b3JlcyBpbmZvcm1hdGlvbiBhYm91dCBX
ZWJTb2NrZXQgaGFuZHNoYWtlIHJlc3BvbnNlLgotCi0gICAgICAgIEluIHRoZSBmdXR1cmUsIGlu
c3RhbmNlcyBvZiB0aGUgbmV3IGNsYXNzIHdpbGwgYmUgcGFzc2VkIHRvIHRoZSBXZWIgSW5zcGVj
dG9yCi0gICAgICAgIHNvIHRoYXQgaXQgd2lsbCBiZSBhYmxlIHRvIGRpc3BsYXkgaW5mb3JtYXRp
b24gYWJvdXQgV2ViU29ja2V0IGhhbmRzaGFrZQotICAgICAgICByZXNwb25zZS4KLQotICAgICAg
ICBXZWJTb2NrZXQ6IEFkZCBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZQotICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg3MjgKLQotICAgICAgICBUZXN0
OiB3ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tY3IuaHRtbAotCi0gICAgICAg
ICogR05VbWFrZWZpbGUuYW06Ci0gICAgICAgICogV2ViQ29yZS5neXBpOgotICAgICAgICAqIFdl
YkNvcmUucHJvOgotICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgotICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAgKiB3ZWJz
b2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjp0cmltQ29u
c29sZU1lc3NhZ2UpOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlOjpyZWFk
U2VydmVySGFuZHNoYWtlKToKLSAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldEhhbmRzaGFrZTo6
c2VydmVySGFuZHNoYWtlUmVzcG9uc2UpOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0SGFu
ZHNoYWtlOjpyZWFkU3RhdHVzTGluZSk6IE1vdmVkIGZyb20gZXh0cmFjdFJlc3BvbnNlQ29kZS4K
LSAgICAgICAgQWRkIG1vcmUgZXJyb3IgY2hlY2tzIGFuZCBtYWtlIGVycm9yIG1lc3NhZ2VzIG1v
cmUgZGVzY3JpcHRpdmUuCi0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2U6OnJl
YWRIVFRQSGVhZGVycyk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2U6OnBy
b2Nlc3NIZWFkZXJzKToKLSAgICAgICAgKiB3ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5o
OgotICAgICAgICAqIHdlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwOiBB
ZGRlZC4KLSAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlOjpDaGFs
bGVuZ2VSZXNwb25zZTo6Q2hhbGxlbmdlUmVzcG9uc2UpOgotICAgICAgICAoV2ViQ29yZTo6V2Vi
U29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OkNoYWxsZW5nZVJlc3BvbnNlOjpzZXQpOgotICAgICAg
ICAoV2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OldlYlNvY2tldEhhbmRzaGFr
ZVJlc3BvbnNlKToKLSAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNl
Ojp+V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UpOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29j
a2V0SGFuZHNoYWtlUmVzcG9uc2U6OnN0YXR1c0NvZGUpOgotICAgICAgICAoV2ViQ29yZTo6V2Vi
U29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OnNldFN0YXR1c0NvZGUpOgotICAgICAgICAoV2ViQ29y
ZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OnN0YXR1c1RleHQpOgotICAgICAgICAoV2Vi
Q29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OnNldFN0YXR1c1RleHQpOgotICAgICAg
ICAoV2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OmhlYWRlckZpZWxkcyk6Ci0g
ICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZTo6YWRkSGVhZGVyRmll
bGQpOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U6OmNsZWFy
SGVhZGVyRmllbGRzKToKLSAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldEhhbmRzaGFrZVJlc3Bv
bnNlOjpjaGFsbGVuZ2VSZXNwb25zZSk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5k
c2hha2VSZXNwb25zZTo6c2V0Q2hhbGxlbmdlUmVzcG9uc2UpOgotICAgICAgICAqIHdlYnNvY2tl
dHMvV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaDogQWRkZWQuCi0KLTIwMTAtMDYtMjMgIFl1
em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IFNo
aW5pY2hpcm8gSGFtYWppLgotCi0gICAgICAgIEltcGxlbWVudCBwYWdlIGZvcm1hdCBkYXRhIHBy
b2dyYW1taW5nIGludGVyZmFjZS4KLSAgICAgICAgVGhlIGZpbmFsIGdvYWwgaXMgdG8gaW1wbGVt
ZW50IENTUyBQYWdlZCBNZWRpYSBNb2R1bGUgTGV2ZWwgMyAoaHR0cDovL2Rldi53My5vcmcvY3Nz
d2cvY3NzMy1wYWdlLykuCi0gICAgICAgIFRvIGJlZ2luIHdpdGgsIHRoaXMgY2hhbmdlIGFkZHMg
bWV0aG9kcyB0byBrbm93OgotICAgICAgICAtIGlmIHBhZ2UgYm94IGlzIHZpc2libGUsCi0gICAg
ICAgIC0gdGhlIHBhZ2UgYXJlYSByZWN0YW5nbGUsIGFuZAotICAgICAgICAtIHByZWZlcnJlZCBw
YWdlIHNpemUuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM3NTM4Ci0KLSAgICAgICAgVGVzdDogcHJpbnRpbmcvcGFnZS1mb3JtYXQtZGF0YS5odG1s
Ci0KLSAgICAgICAgKiBXZWJDb3JlLmJhc2UuZXhwOgotICAgICAgICAqIGNzcy9DU1NQYXJzZXIu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVNpemVQYXJhbWV0ZXIpOgot
ICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkNT
U1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOgotICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5
bGVTZWxlY3Rvcjo6YXBwbHlQYWdlU2l6ZVByb3BlcnR5KToKLSAgICAgICAgKFdlYkNvcmU6OkNT
U1N0eWxlU2VsZWN0b3I6OnBhZ2VTaXplRnJvbU5hbWUpOgotICAgICAgICAoV2ViQ29yZTo6Q1NT
U3R5bGVTZWxlY3Rvcjo6bW1MZW5ndGgpOgotICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxl
Y3Rvcjo6aW5jaExlbmd0aCk6Ci0gICAgICAgICogY3NzL0NTU1N0eWxlU2VsZWN0b3IuaDoKLSAg
ICAgICAgKiBjc3MvaHRtbC5jc3M6Ci0gICAgICAgIChAcGFnZSk6Ci0gICAgICAgICogZG9tL0Rv
Y3VtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojppc1BhZ2VCb3hWaXNpYmxl
KToKLSAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpwYWdlQXJlYVJlY3RJblBpeGVscyk6Ci0g
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6cHJlZmVycmVkUGFnZVNpemVJblBpeGVscyk6Ci0g
ICAgICAgICogZG9tL0RvY3VtZW50Lmg6Ci0gICAgICAgICogcGFnZS9QcmludENvbnRleHQuY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6UHJpbnRDb250ZXh0Ojppc1BhZ2VCb3hWaXNpYmxlKToKLSAg
ICAgICAgKFdlYkNvcmU6OlByaW50Q29udGV4dDo6cGFnZUFyZWFSZWN0SW5QaXhlbHMpOgotICAg
ICAgICAoV2ViQ29yZTo6UHJpbnRDb250ZXh0OjpwcmVmZXJyZWRQYWdlU2l6ZUluUGl4ZWxzKToK
LSAgICAgICAgKiBwYWdlL1ByaW50Q29udGV4dC5oOgotICAgICAgICAqIHJlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5oOgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OnBhZ2VT
aXplKToKLSAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpzZXRQYWdlU2l6ZSk6Ci0g
ICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDoKLQot
MjAxMC0wNi0yMyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAgIFJlbmFtZSBsZXhlciBhbmQgbV9sZXhl
ciB0byB0b2tlbml6ZXIgYW5kIG1fdG9rZW5pemVyLCByZXNwZWN0aXZlbHkKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxMDQ2Ci0KLSAgICAgICAgVGhp
cyBpcyBhIGZvbGxvdyB1cCB0byB0aGUgcmVjZW50IEhUTUw1TGV4ZXIgPT4gSFRNTFRva2VuaXpl
ciByZW5hbWUuCi0KLSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIuY3BwOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6SFRNTDVEb2N1bWVudFBhcnNlcik6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpiZWdpbik6Ci0gICAgICAg
IChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpwdW1wTGV4ZXIpOgotICAgICAgICAoV2Vi
Q29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6d2lsbFB1bXBMZXhlcik6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpkaWRQdW1wTGV4ZXIpOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6bGluZU51bWJlcik6Ci0gICAgICAgIChXZWJDb3JlOjpI
VE1MNURvY3VtZW50UGFyc2VyOjpjb2x1bW5OdW1iZXIpOgotICAgICAgICAqIGh0bWwvSFRNTDVE
b2N1bWVudFBhcnNlci5oOgotICAgICAgICAqIGh0bWwvSFRNTDVQcmVsb2FkU2Nhbm5lci5jcHA6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVByZWxvYWRTY2FubmVyOjpzY2FuKToKLSAgICAgICAg
KFdlYkNvcmU6OkhUTUw1UHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NUb2tlbik6Ci0gICAgICAgICog
aHRtbC9IVE1MNVByZWxvYWRTY2FubmVyLmg6Ci0gICAgICAgICogaHRtbC9IVE1MNVRyZWVCdWls
ZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1VHJlZUJ1aWxkZXI6OkhUTUw1VHJlZUJ1
aWxkZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVUcmVlQnVpbGRlcjo6aGFuZGxlU2NyaXB0
U3RhcnRUYWcpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVUcmVlQnVpbGRlcjo6cGFzc1Rva2Vu
VG9MZWdhY3lQYXJzZXIpOgotICAgICAgICAqIGh0bWwvSFRNTDVUcmVlQnVpbGRlci5oOgotICAg
ICAgICAqIGh0bWwvSFRNTFRva2VuaXplci5oOgotICAgICAgICAqIGh0bWwvTGVnYWN5SFRNTERv
Y3VtZW50UGFyc2VyLmg6Ci0KLTIwMTAtMDYtMjMgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1t
ZXJtYW5uQHJpbS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAg
ICAgICAgUmVwcm9kdWNpYmxlIGNyYXNoIGluIGNvbS5hcHBsZS5XZWJDb3JlIDB4MDFlZDM3ODQg
V2ViQ29yZTo6UmVuZGVyTGluZUJveExpc3Q6OmFwcGVuZExpbmVCb3goV2ViQ29yZTo6SW5saW5l
Rmxvd0JveCopICsgMzYKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQwOTUzCi0KLSAgICAgICAgUkVHUkVTU0lPTiAocjU4MjA5LTU4MjMxKTogTWVtb3J5
IGNvcnJ1cHRpb24gd2l0aCBpbnZhbGlkIFNWRwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAxNzMKLQotICAgICAgICBGaXggc2V2ZXJhbCBjcmFzaGVz
LCBhbGwgcmVsYXRlZCB0byA8Zm9yZWlnbk9iamVjdD4gYW5kL29yIGludmFsaWQgU1ZHIGRvY3Vt
ZW50cy4KLSAgICAgICAgLSBPbmx5IGFsbG93IDxzdmc+IG5vZGVzLCBhcyBkaXJlY3QgY2hpbGRy
ZW4gb2YgYSA8Zm9yZWlnbk9iamVjdD4sIG5vdCBhbnkgb3RoZXIgInBhcnRpYWwiIFNWRyBjb250
ZW50LgotICAgICAgICAtIEFzc3VyZSB0byBjcmVhdGUgUmVuZGVyU1ZHUm9vdCBvYmplY3RzIGZv
ciA8c3ZnPiBub2RlcyBpbiA8Zm9yZWlnbk9iamVjdD4sIHRyZWF0IHRoZW0gYXMgIm91dGVybW9z
dCBTVkcgZWxlbWVudHMiLgotICAgICAgICAtIE5ldmVyIGFsbG93IGFueSBwYXJ0aWFsIFNWRyBj
b250ZW50IHRvIGFwcGVhciBpbiBhbnkgZG9jdW1lbnQuIE9ubHkgPHN2Zz4gZWxlbWVudHMgYXJl
IGFsbG93ZWQuCi0KLSAgICAgICAgVGVzdHM6IHN2Zy9jdXN0b20vYnVnNDUzMzEuc3ZnCi0gICAg
ICAgICAgICAgICBzdmcvZm9yZWlnbk9iamVjdC9kaXNhbGxvd2VkLXN2Zy1ub2Rlcy1hcy1kaXJl
Y3QtY2hpbGRyZW4uc3ZnCi0gICAgICAgICAgICAgICBzdmcvZm9yZWlnbk9iamVjdC9uby1jcmFz
aC13aXRoLXN2Zy1jb250ZW50LWluLWh0bWwtZG9jdW1lbnQuc3ZnCi0gICAgICAgICAgICAgICBz
dmcvZm9yZWlnbk9iamVjdC9zdmctZG9jdW1lbnQtYXMtZGlyZWN0LWNoaWxkLnN2ZwotICAgICAg
ICAgICAgICAgc3ZnL2ZvcmVpZ25PYmplY3Qvc3ZnLWRvY3VtZW50LWluLWh0bWwtZG9jdW1lbnQu
c3ZnCi0gICAgICAgICAgICAgICBzdmcvZm9yZWlnbk9iamVjdC90ZXh0LXRyZWYtMDItYi5zdmcK
LQotICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDogQWRkZWQgY2hpbGRTaG91bGRDcmVhdGVSZW5k
ZXJlciwgd2l0aCBFTkFCTEUoU1ZHKSBndWFyZHMuCi0gICAgICAgIChXZWJDb3JlOjpFbGVtZW50
OjpjaGlsZFNob3VsZENyZWF0ZVJlbmRlcmVyKTogT25seSBjcmVhdGUgYSByZW5kZXJlciBmb3Ig
YSBTVkcgY2hpbGQsIGlmIHdlJ3JlIGEgU1ZHIGVsZW1lbnQsIG9yIGlmIHRoZSBjaGlsZCBpcyBh
IDxzdmc+IGVsZW1lbnQuCi0gICAgICAgICogZG9tL0VsZW1lbnQuaDogQWRkZWQgY2hpbGRTaG91
bGRDcmVhdGVSZW5kZXJlciwgd2l0aCBFTkFCTEUoU1ZHKSBndWFyZHMuCi0gICAgICAgICogc3Zn
L1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlNWR0ZvcmVp
Z25PYmplY3RFbGVtZW50OjpjaGlsZFNob3VsZENyZWF0ZVJlbmRlcmVyKTogRGlzYWxsb3cgYXJi
aXRhcnkgU1ZHIGNvbnRlbnQsIG9ubHkgPHN2Zz4gZWxlbWVudHMgYXJlIGFsbG93ZWQgYXMgZGly
ZWN0IGNoaWxkcmVuIG9mIGEgPGZvcmVpZ25PYmplY3Q+Ci0gICAgICAgICogc3ZnL1NWR1NWR0Vs
ZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxlbWVudDo6aXNPdXRlcm1vc3RT
VkcpOiBCZSBzdXJlIHRvIGNyZWF0ZSBSZW5kZXJTVkdSb290IG9iamVjdHMgZm9yIDxzdmc+IGVs
ZW1lbnRzIGluc2lkZSA8Zm9yZWlnbk9iamVjdD4KLQotMjAxMC0wNi0yMiAgQWRhbSBCYXJ0aCAg
PGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgot
Ci0gICAgICAgIFJlbmFtZSBIVE1MNUxleGVyIHRvIEhUTUxUb2tlbml6ZXIKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxMDQ1Ci0KLSAgICAgICAgVGhp
cyBtaWdodCBiZSBzbGlnaHRseSBjb25mdXNpbmcgZ2l2ZW4gdGhhdCB0aGUgb2xkIGNsYXNzIHdh
cyBjYWxsZWQKLSAgICAgICAgSFRNTFRva2VuaXplciwgYnV0IGl0IG1hdGNoZXMgdGhlIHRlcm1p
bm9sb2d5IGluIHRoZSBIVE1MNSBzcGVjLgotCi0gICAgICAgICogQW5kcm9pZC5tazoKLSAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKLSAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKLSAgICAgICAg
KiBXZWJDb3JlLmd5cGk6Ci0gICAgICAgICogV2ViQ29yZS5wcm86Ci0gICAgICAgICogV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6Ci0gICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5jcHA6Ci0g
ICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpIVE1MNURvY3VtZW50UGFyc2Vy
KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OnB1bXBMZXhlcik6Ci0g
ICAgICAgICogaHRtbC9IVE1MNURvY3VtZW50UGFyc2VyLmg6Ci0gICAgICAgICogaHRtbC9IVE1M
NUxleGVyLmNwcDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUw1TGV4ZXIuaDogUmVtb3Zl
ZC4KLSAgICAgICAgKiBodG1sL0hUTUw1UHJlbG9hZFNjYW5uZXIuY3BwOgotICAgICAgICAoV2Vi
Q29yZTo6SFRNTDVQcmVsb2FkU2Nhbm5lcjo6cHJvY2Vzc1Rva2VuKToKLSAgICAgICAgKiBodG1s
L0hUTUw1UHJlbG9hZFNjYW5uZXIuaDoKLSAgICAgICAgKiBodG1sL0hUTUw1VHJlZUJ1aWxkZXIu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVUcmVlQnVpbGRlcjo6SFRNTDVUcmVlQnVpbGRl
cik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVRyZWVCdWlsZGVyOjpoYW5kbGVTY3JpcHRTdGFy
dFRhZyk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVRyZWVCdWlsZGVyOjphZGp1c3RlZExleGVy
U3RhdGUpOgotICAgICAgICAqIGh0bWwvSFRNTDVUcmVlQnVpbGRlci5oOgotICAgICAgICAqIGh0
bWwvSFRNTFRva2VuaXplci5jcHA6IENvcGllZCBmcm9tIFdlYkNvcmUvaHRtbC9IVE1MNUxleGVy
LmNwcC4KLSAgICAgICAgKFdlYkNvcmU6OkhUTUxOYW1lczo6aXNFbmRUYWdCdWZmZXJpbmdTdGF0
ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MVG9rZW5pemVyOjpIVE1MVG9rZW5pemVyKToKLSAg
ICAgICAgKFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6On5IVE1MVG9rZW5pemVyKToKLSAgICAgICAg
KFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OnJlc2V0KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxU
b2tlbml6ZXI6OnByb2Nlc3NFbnRpdHkpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFRva2VuaXpl
cjo6bmV4dFRva2VuKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OnRlbXBvcmFy
eUJ1ZmZlcklzKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OmFkZFRvUG9zc2li
bGVFbmRUYWcpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFRva2VuaXplcjo6aXNBcHByb3ByaWF0
ZUVuZFRhZyk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MVG9rZW5pemVyOjplbWl0Q2hhcmFjdGVy
KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OmVtaXRDb2RlUG9pbnQpOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTFRva2VuaXplcjo6ZW1pdFBhcnNlRXJyb3IpOgotICAgICAgICAo
V2ViQ29yZTo6SFRNTFRva2VuaXplcjo6ZW1pdEN1cnJlbnRUb2tlbik6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MVG9rZW5pemVyOjpzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbik6Ci0g
ICAgICAgICogaHRtbC9IVE1MVG9rZW5pemVyLmg6IENvcGllZCBmcm9tIFdlYkNvcmUvaHRtbC9I
VE1MNUxleGVyLmguCi0KLTIwMTAtMDYtMjIgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21h
bm5Abm9raWEuY29tPgotCi0gICAgICAgIFVucmV2aWV3ZWQgUXQvU3ltYmlhbiBidWlsZCBmaXgu
Ci0KLSAgICAgICAgRml4ICJtYWtlIGNsZWFuIiB0byBub3QgdHJ5IHRvIGV4ZWN1dGUgY2xlYW4g
Y29tbWFuZHMgZm9yCi0gICAgICAgIHRoZSBleHRyYSB0YXJnZXRzIHdlIHVzZSB0byBzaW11bGF0
ZSAibWFrZSBpbnN0YWxsIi4KLQotICAgICAgICAqIFdlYkNvcmUucHJvOiBVc2Ugbm9fY2xlYW4g
aW4gQ09ORklHIG9mIGV4dHJhIGNvbXBpbGVycy4KLQotMjAxMC0wNi0yMiAgRXJpYyBTZWlkZWwg
IDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQot
ICAgICAgICBSdW4gY2xlYW4taGVhZGVyLWd1YXJkcyB0byBmaXggc29tZSBoZWFkZXIgZ3VhcmRz
Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTA0NAot
Ci0gICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlcywgdGh1cyBubyB0ZXN0cy4KLQotICAgICAg
ICBUaGlzIGVudGlyZSBjaGFuZ2Ugd2FzIGdlbmVyYXRlZCBieSBydW5uaW5nCi0gICAgICAgIGNs
ZWFuLWhlYWRlci1ndWFyZHMsIGFuZCB0aGVuIHJldmVydGluZyBjaGFuZ2VzCi0gICAgICAgIHRv
IGZpbGVzIHdoaWNoIHNob3VsZG4ndCBiZSBjaGFuZ2VkLiAgVGhvc2Ugd2hpY2gKLSAgICAgICAg
YXJlIGxlZnQgYWxsIHNob3VsZCBiZSB1cGRhdGVkLgotCi0gICAgICAgIFNvbWUgb2YgdGhlc2Ug
Y2hhbmdlcyBhcmUganVzdCBmaXhpbmcgNzU1IHBlcm1pc3Npb25zCi0gICAgICAgIHRvIGJlIDY0
NCwgc2luY2UgaXQgc2VlbXMgdmFyaW91cyBmaWxlcyBoYXZlIHRoZSB3cm9uZwotICAgICAgICBl
eGVjdXRlIGJpdCB3aGljaCBkb24ndCBuZWVkIGl0LiAgY2xlYW4taGVhZGVyLWd1YXJkcwotICAg
ICAgICBtYWRlIHRob3NlICh3ZWxjb21lKSBwZXJtaXNzaW9uIGZpeGVzIHVuaW50ZW50aW9uYWxs
eS4KLQotICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxBdWRpb0VsZW1lbnRDb25z
dHJ1Y3Rvci5oOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxJbWFnZUVsZW1l
bnRDb25zdHJ1Y3Rvci5oOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxPcHRp
b25FbGVtZW50Q29uc3RydWN0b3IuaDoKLSAgICAgICAgKiBkb20vVG91Y2guaDoKLSAgICAgICAg
KiBkb20vVG91Y2hMaXN0Lmg6Ci0gICAgICAgICogZG9tL1hNTERvY3VtZW50UGFyc2VyLmg6Ci0g
ICAgICAgICogZG9tL1hNTERvY3VtZW50UGFyc2VyU2NvcGUuaDoKLSAgICAgICAgKiBodG1sL0hU
TUw1RG9jdW1lbnRQYXJzZXIuaDoKLSAgICAgICAgKiBodG1sL0xlZ2FjeUhUTUxUcmVlQ29uc3Ry
dWN0b3IuaDoKLSAgICAgICAgKiBsb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRSZXN1bHRDYWNo
ZS5oOgotICAgICAgICAqIHBhZ2UvT3JpZ2luQWNjZXNzRW50cnkuaDoKLSAgICAgICAgKiBwYWdl
L3dpbi9GcmFtZVdpbi5oOgotICAgICAgICAqIHBsYXRmb3JtL1RocmVhZFRpbWVycy5oOgotICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL0tleWJvYXJkQ29kZXMuaDoKLSAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Gb250UGxhdGZvcm1EYXRhQ2hyb21pdW1XaW4uaDoKLSAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Gb250VXRpbHNDaHJvbWl1bVdpbi5o
OgotICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVCbGVuZC5oOgotICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb2xvck1hdHJpeC5oOgotICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb21wb25lbnRUcmFuc2Zlci5oOgotICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb21wb3NpdGUuaDoKLSAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvRGF0YVNvdXJjZUdTdHJlYW1lci5oOgotICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9WaWRlb1NpbmtHU3RyZWFtZXIuaDoKLSAg
ICAgICAgIC0gSSBjaGVja2VkLCB0aGlzIGNyYXp5IGRlZmluZSB3YXMgbm90IHJlZmVyZW5jZWQK
LSAgICAgICAgICAgYW55d2hlcmUgZWxzZS4gIEl0J3Mgc2FmZSB0byBjaGFuZ2UgdGhlIG5hbWUu
IDopCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvaGFpa3UvRm9udFBsYXRmb3JtRGF0YS5o
OgotICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEu
aDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9za2lhL1NraWFGb250V2luLmg6Ci0gICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL0dyYXBoaWNzTGF5ZXJDQUNGLmg6Ci0gICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1FUTW92aWVXaW5UaW1lci5oOgotICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL3dpbi9SZWZDb3VudGVkR0RJSGFuZGxlLmg6Ci0gICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3Mvd2luL1dlYkxheWVyLmg6Ci0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3Mvd2luL1dlYlRpbGVkTGF5ZXIuaDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy93aW5j
ZS9Gb250UGxhdGZvcm1EYXRhLmg6Ci0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvd3gvRm9u
dFBsYXRmb3JtRGF0YS5oOgotICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0
b3JhZ2UuaDoKLSAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL0Zvcm1EYXRhU3RyZWFtQ0ZO
ZXQuaDoKLSAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvRm9ybURhdGFTdHJlYW1DdXJs
Lmg6Ci0gICAgICAgICogcGxhdGZvcm0vbmV0d29yay9xdC9EbnNQcmVmZXRjaEhlbHBlci5oOgot
ICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvcXQvUU5ldHdvcmtSZXBseUhhbmRsZXIuaDoKLSAg
ICAgICAgKiBwbGF0Zm9ybS93aW4vUGxhdGZvcm1TY3JvbGxCYXIuaDoKLSAgICAgICAgKiBwbHVn
aW5zL1BsdWdpbkRhdGFiYXNlLmg6Ci0gICAgICAgICogcGx1Z2lucy9QbHVnaW5QYWNrYWdlLmg6
Ci0gICAgICAgICogcGx1Z2lucy9QbHVnaW5TdHJlYW0uaDoKLSAgICAgICAgKiBwbHVnaW5zL3F0
L1BsdWdpbkNvbnRhaW5lclF0Lmg6Ci0gICAgICAgICogcGx1Z2lucy9zeW1iaWFuL25waW50ZXJm
YWNlLmg6Ci0gICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNlbGVjdGlvbkluZm8uaDoKLSAgICAg
ICAgKiByZW5kZXJpbmcvU1ZHUmVuZGVyU3VwcG9ydC5oOgotICAgICAgICAqIHN0b3JhZ2UvSURC
T2JqZWN0U3RvcmVJbXBsLmg6Ci0gICAgICAgICogc3ZnL2FuaW1hdGlvbi9TTUlMVGltZUNvbnRh
aW5lci5oOgotICAgICAgICAqIHdtbC9XTUxFcnJvckhhbmRsaW5nLmg6Ci0KLTIwMTAtMDYtMjIg
IEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBF
cmljIFNlaWRlbC4KLQotICAgICAgICBSZW5hbWUgSFRNTERvY3VtZW50UGFyc2VyIHRvIExlZ2Fj
eUhUTUxEb2N1bWVudFBhcnNlcgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDEwNDMKLQotICAgICAgICBBcyByZXF1ZXN0ZWQgYnkgRGFyaW4gQWRsZXIu
Ci0KLSAgICAgICAgKiBBbmRyb2lkLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAg
ICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAg
KiBXZWJDb3JlLnBybzoKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoK
LSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICog
Y3NzL0NTU1N0eWxlU2hlZXQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTaGVldDo6
Y2hlY2tMb2FkZWQpOgotICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6Ci0gICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudDo6d3JpdGUpOgotICAgICAgICAqIGRvbS9Eb2N1bWVudEZyYWdtZW50LmNw
cDoKLSAgICAgICAgKiBkb20vRG9jdW1lbnRQYXJzZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50UGFyc2VyOjphc0hUTUxEb2N1bWVudFBhcnNlcik6Ci0gICAgICAgICogZG9tL1hNTERv
Y3VtZW50UGFyc2VyTGlieG1sMi5jcHA6Ci0gICAgICAgICogZG9tL1hNTERvY3VtZW50UGFyc2Vy
UXQuY3BwOgotICAgICAgICAqIGh0bWwvSFRNTDVMZXhlci5oOgotICAgICAgICAoV2ViQ29yZTo6
SFRNTDVMZXhlcjo6Y29sdW1uTnVtYmVyKToKLSAgICAgICAgKiBodG1sL0hUTUw1VHJlZUJ1aWxk
ZXIuY3BwOgotICAgICAgICAqIGh0bWwvSFRNTERvY3VtZW50LmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxEb2N1bWVudDo6Y3JlYXRlUGFyc2VyKToKLSAgICAgICAgKiBodG1sL0hUTUxEb2N1
bWVudFBhcnNlci5jcHA6IFJlbW92ZWQuCi0gICAgICAgICogaHRtbC9IVE1MRG9jdW1lbnRQYXJz
ZXIuaDogUmVtb3ZlZC4KLSAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3Bw
OgotICAgICAgICAqIGh0bWwvSFRNTFBhcnNlclNjaGVkdWxlci5jcHA6Ci0gICAgICAgIChXZWJD
b3JlOjpwYXJzZXJDaHVua1NpemUpOgotICAgICAgICAqIGh0bWwvSFRNTFZpZXdTb3VyY2VEb2N1
bWVudC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MVmlld1NvdXJjZURvY3VtZW50OjpjcmVh
dGVQYXJzZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZXdTb3VyY2VEb2N1bWVudDo6YWRk
Vmlld1NvdXJjZVRva2VuKToKLSAgICAgICAgKiBodG1sL0hUTUxWaWV3U291cmNlRG9jdW1lbnQu
aDoKLSAgICAgICAgKiBodG1sL0xlZ2FjeUhUTUxEb2N1bWVudFBhcnNlci5jcHA6IENvcGllZCBm
cm9tIFdlYkNvcmUvaHRtbC9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwLgotICAgICAgICAoV2ViQ29y
ZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXIpOgot
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpyZXNldCk6Ci0gICAg
ICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmJlZ2luKToKLSAgICAgICAg
KFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6c2V0Rm9yY2VTeW5jaHJvbm91cyk6
Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OnByb2Nlc3NMaXN0
aW5nKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6cGFyc2VO
b25IVE1MVGV4dCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6
OnNjcmlwdEhhbmRsZXIpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFy
c2VyOjpzY3JpcHRFeGVjdXRpb24pOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3Vt
ZW50UGFyc2VyOjpwYXJzZUNvbW1lbnQpOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERv
Y3VtZW50UGFyc2VyOjpwYXJzZVNlcnZlcik6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1M
RG9jdW1lbnRQYXJzZXI6OnBhcnNlUHJvY2Vzc2luZ0luc3RydWN0aW9uKToKLSAgICAgICAgKFdl
YkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6cGFyc2VUZXh0KToKLSAgICAgICAgKFdl
YkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6cGFyc2VFbnRpdHkpOgotICAgICAgICAo
V2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpwYXJzZURvY3R5cGUpOgotICAgICAg
ICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpwYXJzZVRhZyk6Ci0gICAgICAg
IChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmNvbnRpbnVlUHJvY2Vzc2luZyk6
Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmFkdmFuY2UpOgot
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjp3aWxsV3JpdGVIVE1M
KToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6ZGlkV3JpdGVI
VE1MKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6d3JpdGUp
OgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpzdG9wUGFyc2lu
Zyk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OnByb2Nlc3Np
bmdEYXRhKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6dGlt
ZXJGaXJlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmVu
ZCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmZpbmlzaCk6
Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmZpbmlzaFdhc0Nh
bGxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OnByb2Nl
c3NUb2tlbik6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OnBy
b2Nlc3NEb2N0eXBlVG9rZW4pOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50
UGFyc2VyOjp+TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyKToKLSAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeUhUTUxEb2N1bWVudFBhcnNlcjo6ZW5sYXJnZUJ1ZmZlcik6Ci0gICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmVubGFyZ2VTY3JpcHRCdWZmZXIpOgotICAgICAg
ICAoV2ViQ29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpleGVjdXRlU2NyaXB0c1dhaXRp
bmdGb3JTdHlsZXNoZWV0cyk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQ
YXJzZXI6Om5vdGlmeUZpbmlzaGVkKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUhUTUxEb2N1
bWVudFBhcnNlcjo6ZXhlY3V0ZUV4dGVybmFsU2NyaXB0c0lmUmVhZHkpOgotICAgICAgICAoV2Vi
Q29yZTo6TGVnYWN5SFRNTERvY3VtZW50UGFyc2VyOjpleGVjdXRlRXh0ZXJuYWxTY3JpcHRzVGlt
ZXJGaXJlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OmNv
bnRpbnVlRXhlY3V0aW5nRXh0ZXJuYWxTY3JpcHRzKToKLSAgICAgICAgKFdlYkNvcmU6OkxlZ2Fj
eUhUTUxEb2N1bWVudFBhcnNlcjo6aXNXYWl0aW5nRm9yU2NyaXB0cyk6Ci0gICAgICAgIChXZWJD
b3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6OnNldFNyYyk6Ci0gICAgICAgIChXZWJDb3Jl
OjpwYXJzZUxlZ2FjeUhUTUxEb2N1bWVudEZyYWdtZW50KToKLSAgICAgICAgKiBodG1sL0xlZ2Fj
eUhUTUxEb2N1bWVudFBhcnNlci5oOiBDb3BpZWQgZnJvbSBXZWJDb3JlL2h0bWwvSFRNTERvY3Vt
ZW50UGFyc2VyLmguCi0gICAgICAgIChXZWJDb3JlOjpMZWdhY3lIVE1MRG9jdW1lbnRQYXJzZXI6
OmFzSFRNTERvY3VtZW50UGFyc2VyKToKLSAgICAgICAgKiBodG1sL0xlZ2FjeUhUTUxUcmVlQ29u
c3RydWN0b3IuY3BwOgotICAgICAgICAoV2ViQ29yZTo6TGVnYWN5SFRNTFRyZWVDb25zdHJ1Y3Rv
cjo6cmVwb3J0RXJyb3JUb0NvbnNvbGUpOgotICAgICAgICAqIGh0bWwvTGVnYWN5SFRNTFRyZWVD
b25zdHJ1Y3Rvci5oOgotICAgICAgICAqIGxvYWRlci9GVFBEaXJlY3RvcnlEb2N1bWVudC5jcHA6
Ci0gICAgICAgIChXZWJDb3JlOjpGVFBEaXJlY3RvcnlEb2N1bWVudFBhcnNlcjo6RlRQRGlyZWN0
b3J5RG9jdW1lbnRQYXJzZXIpOgotICAgICAgICAoV2ViQ29yZTo6RlRQRGlyZWN0b3J5RG9jdW1l
bnRQYXJzZXI6OmxvYWREb2N1bWVudFRlbXBsYXRlKToKLSAgICAgICAgKFdlYkNvcmU6OkZUUERp
cmVjdG9yeURvY3VtZW50UGFyc2VyOjpmaW5pc2gpOgotICAgICAgICAqIHBhZ2UvWFNTQXVkaXRv
ci5oOgotCi0yMDEwLTA2LTIyICBTaGluaWNoaXJvIEhhbWFqaSAgPGhhbWFqaUBjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCBhdHRlbXB0IHRvIGZpeCB0aGUgd2luZG93cyBidWls
ZC4KLQotICAgICAgICBTcGxpdCBvdXQgSFRNTDVEb2N1bWVudFBhcnNlciB5aWVsZC9yZXN1bWUg
bG9naWMgaW50byBhIHNlcGFyYXRlIGNsYXNzCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MTAxOAotCi0gICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2Vi
Q29yZS52Y3Byb2o6Ci0KLTIwMTAtMDYtMjIgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3Jn
PgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgU3BsaXQgb3V0
IEhUTUw1RG9jdW1lbnRQYXJzZXIgeWllbGQvcmVzdW1lIGxvZ2ljIGludG8gYSBzZXBhcmF0ZSBj
bGFzcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEw
MTgKLQotICAgICAgICBUaGUgSFRNTDVEb2N1bWVudFBhcnNlciBpcyBqdXN0IHRoZSBjb29yZGlu
YXRvciwgYW5kIHNob3VsZG4ndCBoYXZlCi0gICAgICAgIGFueSByZWFsIHBhcnNpbmcgbG9naWMg
b2YgaGlzIG93bi4gIENvbnRpbnVpbmcgYWxvbmcgdGhhdCBwYXRoLCBJJ20KLSAgICAgICAgbW92
aW5nIHRoZSB3aGVuLXRvLXlpZWxkL3Jlc3VtZSBsb2dpYyBvdXQgaW50byBhIHNlcGFyYXRlIGNs
YXNzLgotCi0gICAgICAgIEkgY291bGQgaGF2ZSBjcmVhdGUgYSBuZXcgSFRNTFBhcnNlclNjaGVk
dWxlckhvc3QgdmlydHVhbCBpbnRlcmZhY2UKLSAgICAgICAgdG8gYWxsb3cgdGhlIEhUTUxQYXJz
ZXJTY2hlZHVsZXIgdG8gdGFsayBiYWNrIHRvIHRoZQotICAgICAgICBIVE1MNURvY3VtZW50UGFy
c2VyLCBidXQgaW5zdGVhZCBJIGp1c3QgZXhwb3NlZCB0aGUgb25lIG1ldGhvZCBpdAotICAgICAg
ICBuZWVkcyAocmVzdW1lUGFyc2luZygpKSBhcyBhIHB1YmxpYyBtZXRob2QuICBTaW5jZSBubyBj
b2RlIGJlc2lkZXMKLSAgICAgICAgSFRNTERvY3VtZW50IChhbmQgRG9jdW1lbnRGcmFtZW50KSBl
dmVyIHNob3VsZCBrbm93IGFib3V0IHRoZQotICAgICAgICBIVE1MNURvY3VtZW50UGFyc2VyIERv
Y3VtZW50UGFyc2VyIHN1YmNsYXNzLCBubyBjbGFzcyBzaG91bGQgZXZlcgotICAgICAgICBzZWUg
dGhlIHJlc3VtZVBhcnNpbmcoKSBtZXRob2QgYW55d2F5LgotCi0gICAgICAgIE1vc3Qgb2YgdGhp
cyBjaGFuZ2UgaXMganVzdCBtb3ZpbmcgY29kZSBmcm9tIEhUTUw1RG9jdW1lbnRQYXJzZXIKLSAg
ICAgICAgdG8gdGhlIG5ldyBIVE1MUGFyc2VyU2NoZWR1bGVyLgotCi0gICAgICAgIFNvbWUgb2Yg
dGhpcyBjaGFuZ2UgaXMgd3JhcHBpbmcgcHJldmlvdXMgZGlyZWN0IGFjY2VzcyB0bwotICAgICAg
ICBtX2NvbnRpbnVlTmV4dENodW5rVGltZXIuaXNBY3RpdmUoKSB3aXRoIGlzU2NoZWR1bGVkRm9y
UmVzdW1lKCkuCi0KLSAgICAgICAgKiBBbmRyb2lkLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMu
dHh0OgotICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToK
LSAgICAgICAgKiBXZWJDb3JlLnBybzoKLSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6Ci0gICAgICAgICogaHRtbC9IVE1MNURvY3VtZW50UGFyc2VyLmNwcDoKLSAg
ICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OkhUTUw1RG9jdW1lbnRQYXJzZXIp
OgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6c3RvcFBhcnNpbmcpOgot
ICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6cHJvY2Vzc2luZ0RhdGEpOgot
ICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6cHVtcExleGVySWZQb3NzaWJs
ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjppc1NjaGVkdWxlZEZv
clJlc3VtZSk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpyZXN1bWVQ
YXJzaW5nKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OnB1bXBMZXhl
cik6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjplbmQpOgotICAgICAg
ICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6YXR0ZW1wdFRvRW5kKToKLSAgICAgICAg
KFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OmVuZElmRGVsYXllZCk6Ci0gICAgICAgICog
aHRtbC9IVE1MNURvY3VtZW50UGFyc2VyLmg6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3Vt
ZW50UGFyc2VyOjpkb2N1bWVudCk6Ci0gICAgICAgICAtIEV4cG9zZWQgZm9yIEhUTUxQYXJzZXJT
Y2hlZHVsZXIuCi0gICAgICAgICogaHRtbC9IVE1MUGFyc2VyU2NoZWR1bGVyLmNwcDogQWRkZWQu
Ci0gICAgICAgIChXZWJDb3JlOjpwYXJzZXJUaW1lTGltaXQpOiBNb3ZlZCBmcm9tIEhUTUw1RG9j
dW1lbnRQYXJzZXIuCi0gICAgICAgIChXZWJDb3JlOjpwYXJzZXJDaHVua1NpemUpOiBkaXR0by4K
LSAgICAgICAgKFdlYkNvcmU6OkhUTUxQYXJzZXJTY2hlZHVsZXI6OkhUTUxQYXJzZXJTY2hlZHVs
ZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFBhcnNlclNjaGVkdWxlcjo6fkhUTUxQYXJzZXJT
Y2hlZHVsZXIpOgotICAgICAgICAoV2ViQ29yZTo6aXNMYXlvdXRUaW1lckFjdGl2ZSk6Ci0gICAg
ICAgIChXZWJDb3JlOjpIVE1MUGFyc2VyU2NoZWR1bGVyOjpjb250aW51ZU5leHRDaHVua1RpbWVy
RmlyZWQpOgotICAgICAgICAgLSBNb3ZlZCBmcm9tIEhUTUw1RG9jdW1lbnRQYXJzZXIuCi0gICAg
ICAgICogaHRtbC9IVE1MUGFyc2VyU2NoZWR1bGVyLmg6IEFkZGVkLgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTFBhcnNlclNjaGVkdWxlcjo6UHVtcFNlc3Npb246OlB1bXBTZXNzaW9uKToKLSAgICAg
ICAgIC0gTW92ZWQgZnJvbSBIVE1MNURvY3VtZW50UGFyc2VyLgotICAgICAgICAoV2ViQ29yZTo6
SFRNTFBhcnNlclNjaGVkdWxlcjo6c2hvdWxkQ29udGludWVQYXJzaW5nKToKLSAgICAgICAgKFdl
YkNvcmU6OkhUTUxQYXJzZXJTY2hlZHVsZXI6OmlzU2NoZWR1bGVkRm9yUmVzdW1lKToKLQotMjAx
MC0wNi0yMiAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KLQotICAgICAg
ICBSZXZpZXdlZCBieSBZdXJ5IFNlbWlraGF0c2t5LgotCi0gICAgICAgIFdlYiBJbnNwZWN0b3I6
IG1vdmUgbm9kZUJ5UGF0aCBmcm9tIEluamVjdGVkU2NyaXB0IHRvIEluc3BlY3RvckJhY2tlbmQu
Ci0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTg4
Ci0KLSAgICAgICAgKiBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcDoKLSAgICAgICAg
KiBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0Lmg6Ci0gICAgICAgICogaW5zcGVjdG9yL0lu
amVjdGVkU2NyaXB0SG9zdC5pZGw6Ci0gICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tl
bmQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQmFja2VuZDo6cHVzaE5vZGVCeVBh
dGhUb0Zyb250ZW5kKToKLSAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5oOgot
ICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmlkbDoKLSAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
RE9NQWdlbnQ6OnB1c2hOb2RlQnlQYXRoVG9Gcm9udGVuZCk6Ci0gICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JET01BZ2VudDo6bm9kZUZvclBhdGgpOgotICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JET01BZ2VudC5oOgotICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZC5j
cHA6Ci0gICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JGcm9udGVuZDo6ZGlkUHVzaE5vZGVCeVBh
dGhUb0Zyb250ZW5kKToKLSAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuaDoK
LSAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0RPTUFnZW50LmpzOgotICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNQYW5lbC5qczoKLSAgICAgICAgKFdlYkluc3BlY3Rv
ci5FbGVtZW50c1BhbmVsLnByb3RvdHlwZS5zZXREb2N1bWVudCk6Ci0gICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qczoKLSAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL0luamVjdGVkU2NyaXB0QWNjZXNzLmpzOgotCi0yMDEwLTA2LTIyICBEYXZpZCBMZXZp
biAgPGxldmluQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJv
c2t1cnlha292LgotCi0gICAgICAgIFJFR1JFU1NJT046IChyNDcyOTEpOiBVcGxvYWQgcHJvZ3Jl
c3MgZXZlbnRzIGFyZSBub3QgZmlyZWQgZm9yIHNpbXBsZSBjcm9zcy1zaXRlIFhIUi4KLSAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MDI5Ci0KLSAgICAg
ICAgU3BlY2lmaWNhbGx5LCBXZWJLaXQgc2hvdWxkIGZpcmUgdXBsb2FkIGV2ZW50cyBpZiBvbmUg
b3IgbW9yZSBldmVudCBsaXN0ZW5lcnMgYXJlCi0gICAgICAgIHJlZ2lzdGVyZWQgb24gdGhlIFhN
TEh0dHBSZXF1ZXN0VXBsb2FkIG9iamVjdCB3aGVuIHNlbmQgaXMgY2FsbGVkIGluIGFuIGFzeW5j
IG1hbm5lci4KLQotICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6Ci0gICAgICAgIChX
ZWJDb3JlOjpYTUxIdHRwUmVxdWVzdDo6Y3JlYXRlUmVxdWVzdCk6IEFsbG93IHVwbG9hZCBldmVu
dHMgdG8gYmUgZmlyZWQgd2hlbiB0aGVyZSBhcmUKLSAgICAgICAgaGFuZGxlcnMgZm9yIHRoZW0g
aW4gdGhlIGNyb3NzLW9yaWdpbiBzaW1wbGUgcmVxdWVzdCBjYXNlLgotCi0yMDEwLTA2LTIyICBL
ZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBB
ZGFtIEJhcnRoLgotCi0gICAgICAgIEZpeCB1bmluaXRpYWxpemVkIFN1YmZyYW1lTG9hZGVyOjpt
X2NvbnRhaW5zUGx1Z2lucwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDEwMzUKLQotICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5jcHA6Ci0g
ICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6U3ViZnJhbWVMb2FkZXIpOgotICAgICAg
ICAgSW5pdGlhbGl6ZSBtX2NvbnRhaW5zUGx1Z2lucyB3aXRoIGZhbHNlLgotCi0yMDEwLTA2LTIy
ICBLaW51a28gWWFzdWRhICA8a2ludWtvQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdl
ZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEFkZCBCbG9iQnVpbGRlci5pZGwgdG8gZXhwb3Nl
IEJsb2JCdWlsZGVyIGludGVyZmFjZQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDA1OTMKLQotICAgICAgICAoUmVzdWJtaXR0aW5nIHdpdGggdGhlIGNv
cnJlY3QgZmlsZSBzZXQuKQotCi0gICAgICAgIEJsb2JCdWlsZGVyIGlzIGRlZmluZWQgaW4gRmls
ZUFQSSdzIEZpbGVXcml0ZXIgc3BlYy4KLSAgICAgICAgKGh0dHA6Ly9kZXYudzMub3JnLzIwMDkv
ZGFwL2ZpbGUtc3lzdGVtL2ZpbGUtd3JpdGVyLmh0bWwpCi0KLSAgICAgICAgQWxzbyByZW1vdmVz
IHRoZSBFTkFCTEVfRklMRV9XUklURVIgaWZkZWYgZ3VhcmQgZm9yIEJsb2JCdWlsZGVyLgotCi0g
ICAgICAgIFRlc3RzOiBodHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1kYXRhLWJsb2IuaHRtbAot
ICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtaHlicmlkLWJsb2IuaHRt
bAotICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtc2xpY2VkLWRhdGEt
YmxvYi5odG1sCi0KLSAgICAgICAgKiBBbmRyb2lkLmRlcml2ZWQuanNjYmluZGluZ3MubWs6Ci0g
ICAgICAgICogQW5kcm9pZC5kZXJpdmVkLnY4YmluZGluZ3MubWs6Ci0gICAgICAgICogQ01ha2VM
aXN0cy50eHQ6Ci0gICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOgotICAgICAgICAqIERlcml2
ZWRTb3VyY2VzLm1ha2U6Ci0gICAgICAgICogR05VbWFrZWZpbGUuYW06Ci0gICAgICAgICogV2Vi
Q29yZS5neXBpOgotICAgICAgICAqIFdlYkNvcmUucHJpOgotICAgICAgICAqIFdlYkNvcmUucHJv
OgotICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgotICAgICAgICAqIFdl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAgKiBodG1sL0Jsb2JCdWls
ZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkJsb2JCdWlsZGVyOjphcHBlbmQpOgotICAgICAg
ICAqIGh0bWwvQmxvYkJ1aWxkZXIuaDoKLSAgICAgICAgKiBodG1sL0Jsb2JCdWlsZGVyLmlkbDog
QWRkZWQuCi0gICAgICAgICogcGFnZS9ET01XaW5kb3cuaWRsOgotCi0yMDEwLTA2LTIyICBLZW50
IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBidWls
ZCBmaXggZm9yIHI2MTY0OC4KLQotICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNz
Q29udGV4dDNELmg6Ci0KLTIwMTAtMDYtMjIgIFZhbmdlbGlzIEtva2tldmlzICA8dmFuZ2VsaXNA
Y2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEtlbnQgVGFtdXJhLgotCi0gICAg
ICAgIERlZmluZSBHcmFwaGljc0NvbnRleHQzRDo6cGxhdGZvcm1MYXllcigpIGZvciBhbGwgcmVt
YWluaW5nIChub24gUExBVEZPUk0oTUFDKSkKLSAgICAgICAgcG9ydHMgdG8gZ2V0IFJlbmRlckxh
eWVyQmFja2luZy5jcHAgY29tcGlsaW5nIGFnYWluLgotICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwMjYKLQotICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL0dyYXBoaWNzQ29udGV4dDNELmg6Ci0gICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHQzRDo6cGxhdGZvcm1MYXllcik6Ci0KLTIwMTAtMDYtMjIgIEVyaWMgU2VpZGVsICA8ZXJpY0B3
ZWJraXQub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQuICBSb2xsaW5nIG91dCBodHRwOi8vdHJh
Yy53ZWJraXQub3JnL2NoYW5nZXNldC82MTYzOAotICAgICAgICBtYWRlIGEgZmV3IHRlc3RzIGNy
YXNoLgotCi0gICAgICAgIE1ha2UgUGVuZGluZ1NjcmlwdCBob2xkIGEgQ2FjaGVkUmVzb3VyY2VD
bGllbnQgb3BlbiBmb3IgaXRzIGxpZmV0aW1lCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MDk2OAotCi0gICAgICAgICogaHRtbC9IVE1MNURvY3VtZW50
UGFyc2VyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OndhdGNo
Rm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpub3RpZnlG
aW5pc2hlZCk6Ci0gICAgICAgICogaHRtbC9IVE1MNVNjcmlwdFJ1bm5lci5jcHA6Ci0gICAgICAg
IChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6fkhUTUw1U2NyaXB0UnVubmVyKToKLSAgICAg
ICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpzb3VyY2VGcm9tUGVuZGluZ1NjcmlwdCk6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6aXNQZW5kaW5nU2NyaXB0UmVh
ZHkpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OmV4ZWN1dGVQZW5kaW5n
U2NyaXB0KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpoYXNTY3JpcHRz
V2FpdGluZ0ZvckxvYWQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6Ondh
dGNoRm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6c3RvcFdh
dGNoaW5nRm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6ZXhl
Y3V0ZVNjcmlwdHNXYWl0aW5nRm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlw
dFJ1bm5lcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yU3R5bGVzaGVldHMpOgotICAgICAgICAo
V2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVlc3RTY3JpcHQpOgotICAgICAgICAqIGh0
bWwvSFRNTDVTY3JpcHRSdW5uZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVu
bmVyOjpQZW5kaW5nU2NyaXB0OjopOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5u
ZXI6OlBlbmRpbmdTY3JpcHQ6OlBlbmRpbmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRN
TDVTY3JpcHRSdW5uZXI6OlBlbmRpbmdTY3JpcHQ6OndhdGNoaW5nRm9yTG9hZCk6Ci0gICAgICAg
ICogaHRtbC9IVE1MNVNjcmlwdFJ1bm5lckhvc3QuaDoKLQotMjAxMC0wNi0yMiAgQWRlbGUgUGV0
ZXJzb24gIDxhZGVsZUBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRs
ZXIuCi0KLSAgICAgICAgRml4IGZvciBDcmFzaCB3aGVuIHRoZSByZW5kZXJlciBmb3IgdGhlIGJ1
dHRvbiBpbiA8aW5wdXQgdHlwZT0ibnVtYmVyIj4gZ29lcyBhd2F5IGR1cmluZyBldmVudCBoYW5k
bGluZwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEw
MTMKLQotICAgICAgICBUZXN0OiBmYXN0L2Zvcm1zL2lucHV0LW51bWJlci1jcmFzaC5odG1sCi0K
LSAgICAgICAgKiByZW5kZXJpbmcvVGV4dENvbnRyb2xJbm5lckVsZW1lbnRzLmNwcDogKFdlYkNv
cmU6OlNwaW5CdXR0b25FbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbGVyKToKLSAgICAgICAgTmls
IGNoZWNrIHRoZSBSZW5kZXJCb3ggc2luY2UgaXRzIHBvc3NpYmxlIHRoZSByZW5kZXJlciBoYXMg
Z29uZSBhd2F5IGR1cmluZyBldmVudCBoYW5kbGluZy4KLQotMjAxMC0wNi0yMiAgVG9ueSBHZW50
aWxjb3JlICA8dG9ueWdAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMg
U2VpZGVsLgotCi0gICAgICAgIFB1bGwgc2NyaXB0IGxpbmUgbnVtYmVyIGZyb20gRG9jdW1lbnRQ
YXJzZXIgaW5zdGVhZCBvZiBwdXNoaW5nIGl0IHRvIFNjcmlwdENvbnRyb2xsZXIKLSAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNjQ5Ci0KLSAgICAgICAg
VGhpcyBhcHByb2FjaCBpcyBjbGVhbmVyIGFuZCBpbXByb3ZlcyBXZWJDb3JlL2JlbmNobWFya3Mv
cGFyc2VyL2h0bWwtcGFyc2VyLmh0bWwgYnkgfjIlLgotCi0gICAgICAgIFRlc3RzOiBmYXN0L2pz
L3NjcmlwdC1saW5lLW51bWJlci5odG1sCi0KLSAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRD
b250cm9sbGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OlNjcmlw
dENvbnRyb2xsZXIpOgotICAgICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6ZXZlbnRI
YW5kbGVyTGluZU51bWJlcik6Ci0gICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxl
ci5oOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjcmlwdENvbnRyb2xsZXIuY3BwOgotICAgICAg
ICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6ZXZlbnRIYW5kbGVyTGluZU51bWJlcik6Ci0g
ICAgICAgIChXZWJDb3JlOjpTY3JpcHRDb250cm9sbGVyOjpldmVudEhhbmRsZXJDb2x1bW5OdW1i
ZXIpOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjcmlwdENvbnRyb2xsZXIuaDoKLSAgICAgICAg
KiBiaW5kaW5ncy92OC9TY3JpcHRFdmVudExpc3RlbmVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6
OmNyZWF0ZUF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIpOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4
UHJveHkuaDoKLSAgICAgICAgKiBkb20vWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcDoKLSAg
ICAgICAgKFdlYkNvcmU6OlhNTERvY3VtZW50UGFyc2VyOjpzdGFydEVsZW1lbnROcyk6Ci0gICAg
ICAgICogaHRtbC9IVE1MNURvY3VtZW50UGFyc2VyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhU
TUw1RG9jdW1lbnRQYXJzZXI6OnB1bXBMZXhlcik6Ci0gICAgICAgICogaHRtbC9IVE1MRG9jdW1l
bnRQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpwcm9j
ZXNzVG9rZW4pOgotCi0yMDEwLTA2LTIyICBUb255IEdlbnRpbGNvcmUgIDx0b255Z0BjaHJvbWl1
bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgTWFr
ZSBQZW5kaW5nU2NyaXB0IGhvbGQgYSBDYWNoZWRSZXNvdXJjZUNsaWVudCBvcGVuIGZvciBpdHMg
bGlmZXRpbWUKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTQwOTY4Ci0KLSAgICAgICAgVGhpcyByZXBsYWNlcyB0aGUgbWVjaGFuaXNtIGludHJvZHVjZWQg
aW4gcjYxMzc0IHdpdGggYSBzaW1wbGVyCi0gICAgICAgIGFwcHJvYWNoIGZyb20gcHJldmVudGlu
ZyB1bmV4cGVjdGVkIHB1cmdlczsgYWx3YXlzIGtlZXAgYSBjbGllbnQgb3Blbi4KLSAgICAgICAg
VGhpcyB3aWxsIGFwcHJvYWNoIHdpbGwgYWxsb3cgZGVmZXJyZWQgc2NyaXB0cyB0byBhZGQgYSBj
bGllbnQgYWZ0ZXIKLSAgICAgICAgdGhlIHJlc291cmNlIG1heSBoYXZlIGFscmVhZHkgYmVlbiBs
b2FkZWQgd2l0aG91dCBoYXZpbmcgdG8gd29ycnkgYWJvdXQKLSAgICAgICAgdGhlIGJ1ZmZlciBi
ZWluZyBwdXJnZWQgaW4gdGhlIG1lYW50aW1lLgotCi0gICAgICAgIE5vIG5ldyB0ZXN0cyBiZWNh
dXNlIG1ha2luZyBhIENhY2hlZFJlc291cmNlIHB1cmdlIGl0c2VsZiBpcyBub3QKLSAgICAgICAg
dGVzdGFibGUgZnJvbSBhIExheW91dFRlc3QuCi0KLSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1l
bnRQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6d2F0
Y2hGb3JMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6Om5vdGlm
eUZpbmlzaGVkKToKLSAgICAgICAgKiBodG1sL0hUTUw1U2NyaXB0UnVubmVyLmNwcDoKLSAgICAg
ICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjp+SFRNTDVTY3JpcHRSdW5uZXIpOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnNvdXJjZUZyb21QZW5kaW5nU2NyaXB0
KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjppc1BlbmRpbmdTY3JpcHRS
ZWFkeSk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRp
bmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OndhdGNoRm9y
TG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6c3RvcFdhdGNoaW5n
Rm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVNj
cmlwdHNXYWl0aW5nRm9yTG9hZCk6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5l
cjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yU3R5bGVzaGVldHMpOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVlc3RTY3JpcHQpOgotICAgICAgICAqIGh0bWwvSFRN
TDVTY3JpcHRSdW5uZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpQ
ZW5kaW5nU2NyaXB0OjpQZW5kaW5nU2NyaXB0KToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2Ny
aXB0UnVubmVyOjpQZW5kaW5nU2NyaXB0Ojp+UGVuZGluZ1NjcmlwdCk6Ci0gICAgICAgIChXZWJD
b3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6UGVuZGluZ1NjcmlwdDo6c2V0Q2FjaGVkU2NyaXB0KToK
LSAgICAgICAgKFdlYkNvcmU6OkhUTUw1U2NyaXB0UnVubmVyOjpQZW5kaW5nU2NyaXB0OjpjYWNo
ZWRTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OlBlbmRpbmdT
Y3JpcHQ6Om5vdGlmeUZpbmlzaGVkKToKLSAgICAgICAgKiBodG1sL0hUTUw1U2NyaXB0UnVubmVy
SG9zdC5oOgotCi0yMDEwLTA2LTIyICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KLQot
ICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEZyYWdtZW50IHBhcnNp
bmcgbmVlZHMgdG8gZ28gdGhyb3VnaCB0aGUgSFRNTDUgUGFyc2VyIGNvZGUgcGF0aAotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA2NDUKLQotICAgICAg
ICBBZGRlZCBhIG5ldyBIVE1MNURvY3VtZW50UGFyc2VyOjpwYXJzZUhUTUxEb2N1bWVudEZyYWdt
ZW50Ci0gICAgICAgIGNvZGVwYXRoIHdoaWNoIG9wdGlvbmFsbHkgY2FsbHMgdGhyb3VnaCB0byB0
aGUgb2xkIGZyYWdtZW50Ci0gICAgICAgIHBhcnNpbmcgcGF0aCwgbm93IHJlbmFtZWQgcGFyc2VM
ZWdhY3lIVE1MRG9jdW1lbnRGcmFnbWVudC4KLQotICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoK
LSAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudCk6Ci0g
ICAgICAgICAtIFVzZSBkb2N1bWVudCgpLT5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkgaW5zdGVh
ZAotICAgICAgICAgICBvZiBEb2N1bWVudEZyYWdtZW50OjpjcmVhdGUoKSB0byBtYXRjaCBvdGhl
ciBjYWxsZXJzCi0gICAgICAgICAgIChhbmQgbm90IGRlcGVuZCBvbiBEb2N1bWVudEZyYWdtZW50
LmgpLgotICAgICAgICAgLSBVcGRhdGUgY2FsbCB0byBwYXJzZUhUTUxEb2N1bWVudEZyYWdtZW50
IHRvIHVzZSB0aGUgbmV3Ci0gICAgICAgICAgIEhUTUw1IHBhcnNlciBjb2RlcGF0aC4KLSAgICAg
ICAgKiBkb20vTWFwcGVkQXR0cmlidXRlRW50cnkuaDoKLSAgICAgICAgIC0gQWRkIGEgRklYTUUg
YWJvdXQgdGhpcyBob3JyaWJsZSBlbnVtIHBsYWNlbWVudC4KLSAgICAgICAgICAgU2FkbHkgdGhp
cyB3aWxsIGNhdXNlIGEgd29ybGQtcmVidWlsZCBmb3IgZXZlcnlvbmUuCi0gICAgICAgICogaHRt
bC9IVE1MNURvY3VtZW50UGFyc2VyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1RG9jdW1l
bnRQYXJzZXI6OkhUTUw1RG9jdW1lbnRQYXJzZXIpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVE
b2N1bWVudFBhcnNlcjo6cnVuU2NyaXB0c0ZvclBhdXNlZFRyZWVDb25zdHJ1Y3Rvcik6Ci0gICAg
ICAgICAtIFRoZSBtYWluIHB1bXBMZXhlciBmdW5jdGlvbiBoYXMgZ290dGVuIHRvIGxhcmdlLiAg
TW92ZSB0aGUgc2NyaXB0Ci0gICAgICAgICAgIHJ1bm5pbmcgbG9naWMgaW50byB0aGlzIG5ldyBm
dW5jdGlvbi4KLSAgICAgICAgIC0gSGFuZGxlIHRoZSBjYXNlIHdoZXJlIHdlIGhhdmUgbm8gbV9z
Y3JpcHRSdW5uZXIgKGZyYWdtZW50IGNhc2UpLgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1
bWVudFBhcnNlcjo6cHVtcExleGVyKToKLSAgICAgICAgIC0gVXNlIG5ldyBydW5TY3JpcHRzRm9y
UGF1c2VkVHJlZUNvbnN0cnVjdG9yKCkuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50
UGFyc2VyOjpleGVjdXRpbmdTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVu
dFBhcnNlcjo6aW5TY3JpcHRFeGVjdXRpb24pOgotICAgICAgICAgLSBOZXcgZnVuY3Rpb24gdG8g
aGFuZGxlIHRoZSBjYXNlIHdoZXJlIG1fc2NyaXB0UnVubmVyIGlzIG51bGwuCi0gICAgICAgIChX
ZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpyZXN1bWVQYXJzaW5nQWZ0ZXJTY3JpcHRFeGVj
dXRpb24pOgotICAgICAgICAgLSBVc2UgaW5TY3JpcHRFeGVjdXRpb24oKSBpbnN0ZWFkIG9mIG1f
c2NyaXB0UnVubmVyLT5pblNjcmlwdEV4ZWN1dGlvbigpLgotICAgICAgICAoV2ViQ29yZTo6SFRN
TDVEb2N1bWVudFBhcnNlcjo6ZXhlY3V0ZVNjcmlwdCk6IGRpdHRvLgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6bm90aWZ5RmluaXNoZWQpOiBkaXR0by4KLSAgICAgICAg
KFdlYkNvcmU6OkhUTUw1RG9jdW1lbnRQYXJzZXI6OmV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclN0
eWxlc2hlZXRzKTogZGl0dG8uCi0gICAgICAgIChXZWJDb3JlOjpzaG91bGRVc2VMZWdhY3lQYXJz
ZXIpOgotICAgICAgICAgLSBIZWxwZXIgZnVuY3Rpb24gdG8gY2hlY2sgdGhlIGh0bWw1UGFyc2Vy
RW5hYmxlZCgpIHNldHRpbmcuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2Vy
OjpwYXJzZUhUTUxEb2N1bWVudEZyYWdtZW50KToKLSAgICAgICAgIC0gUnVuIEhUTUw1RG9jdW1l
bnRQYXJzZXIgaW4gZnJhZ21lbnQgbW9kZSwgb3Igb3B0aW9uYWxseSBydW4KLSAgICAgICAgICAg
dGhlIGxlZ2FjeSBwYXJzZXIgaWYgIWh0bWw1UGFyc2VyRW5hYmxlZCgpLgotICAgICAgICAqIGh0
bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oOgotICAgICAgICAqIGh0bWwvSFRNTDVUcmVlQnVpbGRl
ci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVRyZWVCdWlsZGVyOjpIVE1MNVRyZWVCdWls
ZGVyKToKLSAgICAgICAgKFdlYkNvcmU6OkhUTUw1VHJlZUJ1aWxkZXI6OnBhc3NUb2tlblRvTGVn
YWN5UGFyc2VyKToKLSAgICAgICAgIC0gSW1wbGVtZW50IHRoZSBGcmFnbWVudFNjcmlwdGluZ05v
dEFsbG93ZWQgaGFjayBmb3IgcGxhdGZvcm0vUGFzdGVib2FyZC4KLSAgICAgICAgKiBodG1sL0hU
TUw1VHJlZUJ1aWxkZXIuaDoKLSAgICAgICAgKiBodG1sL0hUTUxEb2N1bWVudFBhcnNlci5jcHA6
Ci0gICAgICAgIChXZWJDb3JlOjpwYXJzZUxlZ2FjeUhUTUxEb2N1bWVudEZyYWdtZW50KToKLSAg
ICAgICAgIC0gUmVuYW1lZCBmcm9tIHBhcnNlSFRNTERvY3VtZW50RnJhZ21lbnQKLSAgICAgICAg
KiBodG1sL0hUTUxEb2N1bWVudFBhcnNlci5oOgotICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6Omluc2VydEFkamFjZW50SFRNTCk6
Ci0gICAgICAgICAtIENhbGwgSFRNTDVEb2N1bWVudFBhcnNlcjo6cGFyc2VIVE1MRG9jdW1lbnRG
cmFnbWVudC4KLSAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGFzdGVib2FyZE1hYy5tbToKLSAgICAg
ICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6OmRvY3VtZW50RnJhZ21lbnQpOiBkaXR0by4KLSAgICAg
ICAgKiB4bWwvWFNMVFByb2Nlc3Nvci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpjcmVhdGVGcmFn
bWVudEZyb21Tb3VyY2UpOiBkaXR0by4KLQotMjAxMC0wNi0yMiAgQ2hyaXMgTWFycmluICA8Y21h
cnJpbkBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgotCi0g
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDY0MwotICAg
ICAgICAKLSAgICAgICAgRmluYWwgcGhhc2Ugb2YgbW92aW5nIG93bmVyc2hpcCBvZiBXZWJHTExh
eWVyIHRvIEdyYXBoaWNzQ29udGV4dDNELgotICAgICAgICBBcyBpdCB0dXJucyBvdXQsIEkgc3Rp
bGwgaGF2ZSB0byBoYXZlIGEgc2VwYXJhdGUgQ0dMQ29udGV4dE9iaiBmb3IKLSAgICAgICAgcmVu
ZGVyaW5nIGJlY2F1c2UgQ29yZSBBbmltYXRpb24gY29tcG9zaXRlcyBpbiBhIHNlcGFyYXRlIHRo
cmVhZCwKLSAgICAgICAgc28gd2UgbmVlZCB0byBkaXNjb25uZWN0IFdlYkdMIHJlbmRlcmluZyBm
cm9tIENBIGNvbXBvc2l0aW5nLiBCdXQKLSAgICAgICAgdGhpcyBjaGFuZ2UgaXMgc3RpbGwgd29y
dGh3aGlsZSBiZWNhdXNlIGl0IHJlZHVjZXMgZGVwZW5kZW5jaWVzCi0gICAgICAgIGFuZCBtYWtl
cyBpdCBlYXNpZXIgdG8gcG9ydCBXZWJHTCB0byBvdGhlciBwbGF0Zm9ybXMuCi0gICAgICAgIAot
ICAgICAgICBObyBuZXcgdGVzdHMgc2luY2UgdGhpcyBpcyBqdXN0IHJlc3RydWN0dXJpbmcgYW5k
IHRoZSBjdXJyZW50IHRlc3RzCi0gICAgICAgIGFyZSBhbGwgc3RpbGwgdmFsaWQgYW5kIGRvIGEg
c3VmZmljaWVudCB0ZXN0IG9mIFdlYkdMIGZ1bmN0aW9uYWxpdHkuCi0KLSAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oOgotICAgICAgICAoV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0M0Q6OnBsYXRmb3JtTGF5ZXIpOgotICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL0dyYXBoaWNzTGF5ZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXI6OnNl
dENvbnRlbnRzVG9XZWJHTCk6Ci0gICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyOjpzZXRX
ZWJHTE5lZWRzRGlzcGxheSk6Ci0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0dyYXBo
aWNzQ29udGV4dDNETWFjLm1tOiBBZGQgY3JlYXRpb24gb2YgV2ViR0xMYXllcgotICAgICAgICAo
V2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKToKLSAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvR3JhcGhpY3NMYXllckNBLmg6Ci0gICAgICAgIChXZWJD
b3JlOjpHcmFwaGljc0xheWVyQ0E6Oik6Ci0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFj
L0dyYXBoaWNzTGF5ZXJDQS5tbTogSGFuZGxlIHNldHRpbmcgb2YgV2ViR0xMYXllciBhcyBjb250
ZW50IHRoZSBzYW1lIGFzIGZvciBNZWRpYUxheWVyLiBBbHNvIGNoYW5nZWQgV2ViR0wgcmVsYXRl
ZCBuYW1lcyBmb3IgY2xhcml0eQotICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllckNBOjpH
cmFwaGljc0xheWVyQ0EpOgotICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllckNBOjpjb21t
aXRMYXllckNoYW5nZXNCZWZvcmVTdWJsYXllcnMpOgotICAgICAgICAoV2ViQ29yZTo6R3JhcGhp
Y3NMYXllckNBOjp1cGRhdGVDb250ZW50c1dlYkdMTGF5ZXIpOgotICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NMYXllckNBOjpzZXRDb250ZW50c1RvV2ViR0wpOgotICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NMYXllckNBOjpzZXRXZWJHTE5lZWRzRGlzcGxheSk6Ci0gICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL1dlYkdMTGF5ZXIuaDoKLSAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvV2ViR0xMYXllci5tbTogR290IHJpZCBvZiBzdG9yYWdlIGZvciBjb250ZXh0IGFuZCB0
ZXh0dXJlLCBub3cganVzdCBzdG9yZSBHcmFwaGljc0NvbnRleHQzRCBhbmQgZ2V0IHRoZW0gZnJv
bSB0aGVyZSB3aGVuIG5lZWRlZAotICAgICAgICAoLVtXZWJHTExheWVyIGNvcHlDR0xQaXhlbEZv
cm1hdEZvckRpc3BsYXlNYXNrOl0pOgotICAgICAgICAoLVtXZWJHTExheWVyIGNvcHlDR0xDb250
ZXh0Rm9yUGl4ZWxGb3JtYXQ6XSk6Ci0gICAgICAgICgtW1dlYkdMTGF5ZXIgZHJhd0luQ0dMQ29u
dGV4dDpwaXhlbEZvcm1hdDpmb3JMYXllclRpbWU6ZGlzcGxheVRpbWU6XSk6Ci0gICAgICAgICgt
W1dlYkdMTGF5ZXIgY29weUltYWdlU25hcHNob3RXaXRoQ29sb3JTcGFjZTpdKToKLSAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcDogQ2hhbmdlZCBpbml0IG9mIFdlYkdM
IGNvbnRlbnRzTGF5ZXIgdG8gcGFzcyBXZWJHTExheWVyIHJhdGhlciB0aGFuIEdyYXBoaWNzQ29u
dGV4dDNECi0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUdyYXBo
aWNzTGF5ZXJDb25maWd1cmF0aW9uKToKLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFj
a2luZzo6cmVuZGVyZXJDb250ZW50Q2hhbmdlZCk6Ci0KLTIwMTAtMDYtMjIgIERhcmluIEFkbGVy
ICA8ZGFyaW5AYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhdmUgSHlhdHQuCi0K
LSAgICAgICAgKiBodG1sL0hUTUxUYWJsZUNlbGxFbGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxUYWJsZUNlbGxFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZSk6IFJlbW92ZWQg
aW5jb3JyZWN0IEZJWE1FIGNvbW1lbnRzLgotCi0yMDEwLTA2LTIyICBEYW4gQmVybnN0ZWluICA8
bWl0ekBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgot
Ci0gICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MTE5NDAzPiBSRUdSRVNTSU9OIChyNjE1NDgpOiBQ
TFQgaXMgYWxtb3N0IDEuNSUgc2xvd2VyLCBHb29nbGUgcGFnZSBjeWNsZXIgc2xvd2VyCi0gICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTAxMgotCi0gICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHA6Ci0gICAgICAgIChXZWJD
b3JlOjpSZW5kZXJCbG9jazo6Y29tcHV0ZUhvcml6b250YWxQb3NpdGlvbnNGb3JMaW5lKTogUmVt
b3ZlZCBhIHJlZHVuZGFudCBzdGF0ZW1lbnQgdGhhdCB3YXMKLSAgICAgICAgbGVmdCBvdmVyIGlu
IHRoZSBvcmlnaW5hbCBwYXRjaCBhbmQgcmVzdWx0ZWQgaW4gZG91YmxlIHRoZSBjYWxscyB0byBS
ZW5kZXJUZXh0Ojp3aWR0aCgpIGhlcmUuCi0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6
ZmluZE5leHRMaW5lQnJlYWspOiBDaGFuZ2VkIHRoZSBvcmRlciBvZiBldmFsdWF0aW5nIGNvbmRp
dGlvbnMgZm9yIGEKLSAgICAgICAgcG90ZW50aWFsIHNwZWVkdXAuCi0KLTIwMTAtMDYtMjIgIERh
cmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFsZXhl
eSBQcm9za3VyeWFrb3YuCi0KLSAgICAgICAgQWxleGV5IGFza2VkIG1lIHRvIHRha2Ugb3V0IHRo
ZSBhdXRvcmVsZWFzZSBwb29scyBiZWNhdXNlIGhlIGJlbGlldmVzCi0gICAgICAgIHRoYXQgdGhl
cmUgaXMgbm8gY29kZSB0aGF0IHNob3VsZCBiZSBydW5uaW5nIHVzaW5nIE9iamVjdGl2ZS1DCi0g
ICAgICAgIGF1dG9yZWxlYXNlLiBNb3N0IGxpa2VseSwgdGhlIGNvZGUgdGhhdCBpcyB0cmlnZ2Vy
aW5nIHRoZXNlIHN0ZGVycgotICAgICAgICBtZXNzYWdlcyBpcyBpbmNvcnJlY3QsIGFuZCB0aGF0
IGJ1ZyBzaG91bGQgYmUgZml4ZWQgaW5zdGVhZC4KLQotICAgICAgICAqIHdvcmtlcnMvV29ya2Vy
UnVuTG9vcC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpXb3JrZXJSdW5Mb29wOjpydW4pOiBSb2xs
IG91dCB1c2Ugb2YgQXV0b2RyYWluZWRQb29sLgotCi0yMDEwLTA2LTIyICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBFaWRzb24uCi0K
LSAgICAgICAgRml4IGF1dG9yZWxlYXNlIHByb2JsZW0gc2VlbiB3aGVuIHJ1bm5pbmcgd29ya2Vy
IHJlZ3Jlc3Npb24gdGVzdHMuCi0gICAgICAgIFdlIHdlcmUgc2VlaW5nIGxvZ3MgdG8gc3RkZXJy
IHNheWluZyBhdXRvcmVsZWFzZSB3YXMgdXNlZCB3aXRob3V0Ci0gICAgICAgIGFuIGF1dG9yZWxl
YXNlIHBvb2wgYmVpbmcgc2V0IHVwLgotCi0gICAgICAgICogd29ya2Vycy9Xb3JrZXJSdW5Mb29w
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OldvcmtlclJ1bkxvb3A6OnJ1bik6IFVzZSBhbiBBdXRv
ZHJhaW5lZFBvb2wgYXMgdGhlIGZpbGUKLSAgICAgICAgdGhyZWFkLCBpY29uIGRhdGFiYXNlLCBh
bmQgZGF0YWJhc2UgdGhyZWFkIGRvLiBObyBlZmZlY3Qgb24gcGxhdGZvcm1zCi0gICAgICAgIG90
aGVyIHRoYW4gTWFjLgotCi0yMDEwLTA2LTIyICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBh
cHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAg
QVg6IElmIGFuIGVsZW1lbnQgdGhhdCBpcyBhIGNvbnRpbnVhdGlvbiBpcyByZW1vdmVkLCBpdHMg
cGFyZW50IHRyZWUgaXMgbm90IG5vdGlmaWVkIGFwcHJvcHJpYXRlbHkgdGhhdCB0aGVpciBjaGls
ZHJlbiBoYXZlIGNoYW5nZWQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTQxMDAwCi0KLSAgICAgICAgVGVzdDogYWNjZXNzaWJpbGl0eS9yZW1vdmVkLWNv
bnRpbnVhdGlvbi1lbGVtZW50LWNhdXNlcy1jcmFzaC5odG1sCi0KLSAgICAgICAgKiBhY2Nlc3Np
YmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaDoKLSAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2li
aWxpdHlPYmplY3Q6OnVwZGF0ZUNoaWxkcmVuSWZOZWNlc3NhcnkpOgotICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHA6Ci0gICAgICAgIChXZWJDb3Jl
OjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjpjaGlsZHJlbkNoYW5nZWQpOgotICAgICAgICAo
V2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6YWRkQ2hpbGRyZW4pOgotICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5oOgotCi0yMDEwLTA2
LTIyICBQZXRlciBLYXN0aW5nICA8cGthc3RpbmdAZ29vZ2xlLmNvbT4KLQotICAgICAgICBSZXZp
ZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIE92ZXJyaWRlIHNldEZhaWxlZCgpIGluIGVh
Y2ggaW1hZ2UgZGVjb2RlciB0byBjbGVhbiB1cCBhbnkgdGVtcG9yYXJ5Ci0gICAgICAgIG9iamVj
dHMuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTQx
MQotICAgICAgICAKLSAgICAgICAgSW4gYSBmZXcgY2FzZXMsIHdlIG5lZWQgdG8gYmUgY2FyZWZ1
bCB0byBhdm9pZCBkZWxldGluZyBvYmplY3RzIHVudGlsCi0gICAgICAgIGFmdGVyIHRoZXkncmUg
bm8gbG9uZ2VyIG5lZWRlZC4gIFRoZXNlIGNhc2VzIHVzdWFsbHkgbWVhbiBzb21lIGp1bXBpbmcK
LSAgICAgICAgdGhyb3VnaCBob29wcywgdG8gdGhlIGRldHJpbWVudCBvZiBjb2RlIHNpbXBsaWNp
dHkuCi0KLSAgICAgICAgTm8gbGF5b3V0IHRlc3RzIGJlY2F1c2UgdGhpcyBkb2VzIG5vdCBjaGFu
Z2UgdGhlIHZpc2libGUgb3V0cHV0IG9mCi0gICAgICAgIGRlY29kaW5nIGluIGFueSB3YXkuCi0K
LSAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuaDoKLSAgICAg
ICAgKFdlYkNvcmU6OkltYWdlRGVjb2Rlcjo6c2V0RGF0YSk6Ci0gICAgICAgICogcGxhdGZvcm0v
aW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5jcHA6Ci0gICAgICAgIChXZWJDb3Jl
OjpCTVBJbWFnZURlY29kZXI6OnNldEZhaWxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpCTVBJbWFn
ZURlY29kZXI6OmRlY29kZSk6Ci0gICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1w
L0JNUEltYWdlRGVjb2Rlci5oOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2Jt
cC9CTVBJbWFnZVJlYWRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpCTVBJbWFnZVJlYWRlcjo6
ZGVjb2RlQk1QKToKLSAgICAgICAgKFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjpyZWFkSW5mb0hl
YWRlclNpemUpOgotICAgICAgICAoV2ViQ29yZTo6Qk1QSW1hZ2VSZWFkZXI6OnByb2Nlc3NJbmZv
SGVhZGVyKToKLSAgICAgICAgKFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjpyZWFkSW5mb0hlYWRl
cik6Ci0gICAgICAgIChXZWJDb3JlOjpCTVBJbWFnZVJlYWRlcjo6cHJvY2Vzc0JpdG1hc2tzKToK
LSAgICAgICAgKFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjpwcm9jZXNzQ29sb3JUYWJsZSk6Ci0g
ICAgICAgIChXZWJDb3JlOjpCTVBJbWFnZVJlYWRlcjo6cHJvY2Vzc1JMRURhdGEpOgotICAgICAg
ICAoV2ViQ29yZTo6Qk1QSW1hZ2VSZWFkZXI6OnByb2Nlc3NOb25STEVEYXRhKToKLSAgICAgICAg
KiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuaDoKLSAgICAgICAg
KFdlYkNvcmU6OkJNUEltYWdlUmVhZGVyOjopOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRl
Y29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6R0lGSW1h
Z2VEZWNvZGVyOjpzZXRGYWlsZWQpOgotICAgICAgICAoV2ViQ29yZTo6R0lGSW1hZ2VEZWNvZGVy
OjpkZWNvZGUpOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFn
ZURlY29kZXIuaDoKLSAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1h
Z2VEZWNvZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OklDT0ltYWdlRGVjb2Rlcjo6c2V0RmFp
bGVkKToKLSAgICAgICAgKFdlYkNvcmU6OklDT0ltYWdlRGVjb2Rlcjo6ZGVjb2RlKToKLSAgICAg
ICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVyLmg6Ci0gICAg
ICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcDoK
LSAgICAgICAgKFdlYkNvcmU6OkpQRUdJbWFnZVJlYWRlcjo6ZGVjb2RlKToKLSAgICAgICAgKFdl
YkNvcmU6OkpQRUdJbWFnZURlY29kZXI6OnNldEZhaWxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpK
UEVHSW1hZ2VEZWNvZGVyOjpkZWNvZGUpOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29k
ZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5oOgotICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRl
Y29kZXJzL3BuZy9QTkdJbWFnZURlY29kZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6UE5HSW1h
Z2VSZWFkZXI6OmRlY29kZSk6Ci0gICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OlBO
R0ltYWdlRGVjb2Rlcik6Ci0gICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OnNldEZh
aWxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OmhlYWRlckF2YWlsYWJs
ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpQTkdJbWFnZURlY29kZXI6OmRlY29kZSk6Ci0gICAgICAg
ICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5oOgotCi0yMDEw
LTA2LTA0ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAgUmVtb3ZlIHNpZGUgZWZmZWN0
cyBvZiBmb3JtIHN1Ym1pc3Npb24gYW5kIHByZXBhcmUgRm9ybURhdGFCdWlsZGVyIGZvciBzcGxp
dHRpbmcgdXAuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MDE4NAotCi0gICAgICAgIFJlZmFjdG9yaW5nLCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3Rz
LgotCi0gICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9ybVN1Ym1pc3Npb24pOgotICAgICAgICAgICAg
KiBDaGFuZ2VkIHRvIHVzZSBuZXcgYWNjZXNzb3JzIG9uIEZvcm1EYXRhQnVpbGRlcjsKLSAgICAg
ICAgICAgICogU2ltcGxpZmllZCB0aGUgbG9naWMgYXJvdW5kIGFjdGlvbiBVUkw7Ci0gICAgICAg
ICAgICAqIFJlbW92ZWQgZm9ybSBzdWJtaXNzaW9uIHNpZGUgZWZmZWN0IG9mIGVsZW1lbnQncyBl
bmN0eXBlIHByb3BlcnR5IGJlaW5nIHVwZGF0ZWQgd2hlbgotICAgICAgICAgICAgICAgIHN1Ym1p
dHRpbmcgYSBtYWlsdG8gZm9ybTsKLSAgICAgICAgICAgICogUmVtb3ZlZCB1bm5lY2Vzc2FyeSB1
cGRhdGluZyBvZiBhY3Rpb24gVVJMIGZvciBtYWlsdG8gZm9ybXMuCi0gICAgICAgIChXZWJDb3Jl
OjpIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdCk6IE1vdmVkIGFjdGlvbiBVUkwgY2hlY2sgaW50byBw
cmVwYXJlRm9ybVN1Ym1pc3Npb24uCi0gICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6
OnBhcnNlTWFwcGVkQXR0cmlidXRlKTogVXBkYXRlZCB0byB1c2UgbmV3IG1ldGhvZHMgb24gRm9y
bURhdGFCdWlsZGVyLgotICAgICAgICAqIGh0bWwvSFRNTEZvcm1FbGVtZW50Lmg6IFJlbW92ZWQg
ZGVjbHMgZm9yIGlzTWFpbHRvRm9ybSBhbmQgZGF0YUVuY29kaW5nIG1ldGhvZHM7Ci0gICAgICAg
ICAgICBtb3ZlZCBtX3RhcmdldCBhbmQgbV91cmwgdG8gRm9ybURhdGFCdWlsZGVyLgotICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Rm9y
bURhdGE6OmFwcGVuZERPTUZvcm1EYXRhKTogUmVtb3ZlZCB1bm5lY2Vzc2FyeSBpbnN0YW50aWF0
aW9uIG9mIEZvcm1EYXRhQnVpbGRlci4KLSAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0Zvcm1E
YXRhQnVpbGRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YUJ1aWxkZXI6OnBhcnNl
QWN0aW9uKTogTW92ZWQgZnJvbSBIVE1MRm9ybUNvbnRyb2wuCi0gICAgICAgICogcGxhdGZvcm0v
bmV0d29yay9Gb3JtRGF0YUJ1aWxkZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkZvcm1EYXRhQnVp
bGRlcjo6YWN0aW9uKTogRGl0dG8uCi0gICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YUJ1aWxkZXI6
OnRhcmdldCk6IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6Rm9ybURhdGFCdWlsZGVyOjpzZXRU
YXJnZXQpOiBEaXR0by4KLQotMjAxMC0wNi0yMiAgWXV0YSBLaXRhbXVyYSAgPHl1dGFrQGNocm9t
aXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgotCi0g
ICAgICAgIEZpeCBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0IHNvIHRoYXQgaXQgZml0cyB0aGUg
bmV3IGhhbmRzaGFrZSBwcm90b2NvbC4KLQotICAgICAgICBUaGUgbmV3IFdlYlNvY2tldCBzcGVj
aWZpY2F0aW9uIChkcmFmdCA3NiBhbmQgbGF0ZXIpIGFsbG93cyBhIGJyb3dzZXIgdG8KLSAgICAg
ICAgc2VuZCBoZWFkZXIgZmllbGRzIGluIGFyYml0cmFyeSBvcmRlci4gVGh1cyB3ZSBjYW4gdXNl
IGEgSFRUUEhlYWRlck1hcCB0bwotICAgICAgICBzdG9yZSBoZWFkZXIgZmllbGRzIGluc3RlYWQg
b2YgVmVjdG9yIG9mIHBhaXJzIG9mIGEgZmllbGQgbmFtZSBhbmQKLSAgICAgICAgYSBmaWVsZCB2
YWx1ZS4KLQotICAgICAgICBUaGlzIHBhdGNoIGFsc28gZG9lcyByZWZhY3RvcmluZyBvZiBXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0IGNsYXNzCi0gICAgICAgIHRvIG1ha2UgaXQgc2ltcGxlciBh
bmQgZWFzaWVyIHRvIHVzZS4KLQotICAgICAgICBGaXggV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dCBzbyB0aGF0IGl0IGZpdHMgdGhlIG5ldyBoYW5kc2hha2UgcHJvdG9jb2wKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5ODY0Ci0KLSAgICAgICAgTm8g
bmV3IHRlc3RzLCBiZWNhdXNlIHRoZXJlIGlzIG5vIGZ1bmN0aW9uYWwgY2hhbmdlLgotCi0gICAg
ICAgICogd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuY3BwOgotICAgICAgICAoV2ViQ29y
ZTo6V2ViU29ja2V0SGFuZHNoYWtlOjpjbGllbnRIYW5kc2hha2VSZXF1ZXN0KToKLSAgICAgICAg
KiB3ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwOgotICAgICAgICAoV2Vi
Q29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdDo6S2V5Mzo6S2V5Myk6Ci0gICAgICAgIChX
ZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpLZXkzOjpzZXQpOgotICAgICAgICAo
V2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdDo6V2ViU29ja2V0SGFuZHNoYWtlUmVx
dWVzdCk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpyZXF1
ZXN0TWV0aG9kKToKLSAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3Q6
OnVybCk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjphZGRI
ZWFkZXJGaWVsZCk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0
OjpoZWFkZXJGaWVsZHMpOgotICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0SGFuZHNoYWtlUmVx
dWVzdDo6a2V5Myk6Ci0gICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0
OjpzZXRLZXkzKToKLSAgICAgICAgKiB3ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlcXVl
c3QuaDoKLQotMjAxMC0wNi0yMCAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4K
LQotICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KLQotICAgICAgICA8bWV0ZXI+IHNo
b3VsZCBiZSB5ZWxsb3cgd2hlbiAgbWluIDwgdmFsdWUgPCBsb3cgPCBvcHRpbXVtCi0gICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDgyNAotICAgICAgICAK
LSAgICAgICAgRml4ZWQgYSB3cm9uZyBjb25kaXRpb25hbCBvbiBIVE1MTWV0ZXJFbGVtZW50Ojpn
YXVnZVJlZ2lvbigpLgotICAgICAgICAKLSAgICAgICAgKiBodG1sL0hUTUxNZXRlckVsZW1lbnQu
Y3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTE1ldGVyRWxlbWVudDo6Z2F1Z2VSZWdpb24pOgot
Ci0gICAgICAgIFRlc3RzOiBmYXN0L2RvbS9IVE1MTWV0ZXJFbGVtZW50L21ldGVyLWFwcGVhcmFu
Y2VzLWNhcGFjaXR5Lmh0bWwKLSAgICAgICAgICAgICAgIGZhc3QvZG9tL0hUTUxNZXRlckVsZW1l
bnQvbWV0ZXItb3B0aW11bXMuaHRtbAotCi0yMDEwLTA2LTIyICBBZGFtIEJhcnRoICA8YWJhcnRo
QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAg
ICAgRm9sbG93IHRoZSBIVE1MNSBzcGVjIG1vcmUgY2xvc2VseSB3LnIudC4gd2hlbiB0byBzYXZl
IHRoZSBpbnNlcnRpb24gcG9pbnQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQwOTc2Ci0KLSAgICAgICAgVGhlIHNwZWMgYWx3YXlzIGluY3JlbWVudHMg
dGhlIG5lc3RpbmcgbGV2ZWwgYW5kIHNhdmVzIHRoZSBpbnNlcnRpb24KLSAgICAgICAgcG9pbnQg
YXQgdGhlIHNhbWUgdGltZS4gIEluIHRoaXMgcGF0Y2gsIHdlIG5vdyBkbyB0aG9zZSBvcGVyYXRp
b25zCi0gICAgICAgIHBhY2thZ2VkIGFzIGEgUkFJSS4KLQotICAgICAgICBBcyBhIHNpZGUgZWZm
ZWN0LCB0aGUgdGVzdCBjYXNlIGJlbG93IG5vIGxvbmdlciBBU1NFUlRzLiAgKFRoZSBvdXRwdXQK
LSAgICAgICAgaXMgd3JvbmcsIGJ1dCB3ZSdsbCBnZXQgdG8gdGhhdCBuZXh0LikKLQotICAgICAg
ICBUZXN0OiBmYXN0L3Rva2VuaXplci93cml0ZS1vbi1sb2FkLmh0bWwKLQotICAgICAgICAqIGh0
bWwvSFRNTDVTY3JpcHRSdW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6TmVzdFNjcmlwdDo6
TmVzdFNjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpOZXN0U2NyaXB0Ojp+TmVzdFNjcmlwdCk6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVNjcmlwdFJ1bm5lcjo6ZXhlY3V0ZVBlbmRpbmdTY3Jp
cHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OmV4ZWN1dGVTY3JpcHQp
OgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVlc3RTY3JpcHQpOgot
ICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJ1blNjcmlwdCk6Ci0gICAgICAg
ICogaHRtbC9IVE1MSW5wdXRTdHJlYW0uaDoKLQotMjAxMC0wNi0yMiAgQWRhbSBCYXJ0aCAgPGFi
YXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0g
ICAgICAgIEV4cG9zZSBIVE1MSW5wdXRTdHJlYW0gdG8gU2NyaXB0UnVubmVyIHNvIHRoYXQgU2Ny
aXB0UnVubmVyIGNhbiBzYXZlIHRoZSBpbnNlcnRpb24gcG9pbnQgaXRzZWxmCi0gICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDk3NQotCi0gICAgICAgIFRo
aXMgc2F2ZXMgdXMgaGF2aW5nIHRvIGNhbGwgYmFjayBpbnRvIHRoZSBIVE1MNURvY3VtZW50UGFy
c2VyIGVhY2gKLSAgICAgICAgdGltZSB3ZSBuZWVkIHRvIHNhdmUgdGhlIGluc2VydGlvbiBwb2lu
dC4gIFRoaXMgcHJlcGFyZXMgdXMgZm9yIGFub3RoZXIKLSAgICAgICAgcGxhY2Ugd2UgbmVlZCB0
byBzYXZlIHRoZSBpbnNlcnRpb24gcG9pbnQuCi0KLSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1l
bnRQYXJzZXIuY3BwOgotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oOgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6aW5wdXRTdHJlYW0pOgotICAgICAg
ICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVT
Y3JpcHRSdW5uZXI6OmV4ZWN1dGVTY3JpcHQpOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3Jp
cHRSdW5uZXI6OnJlcXVlc3RTY3JpcHQpOgotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5u
ZXJIb3N0Lmg6Ci0KLTIwMTAtMDYtMjIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4K
LQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBNb3ZlIEhUTUxJ
bnB1dFN0cmVhbSB0byBpdHMgb3duIGZpbGUKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwOTc0Ci0KLSAgICAgICAgTm8gbmV3IHRlc3RzLCBqdXN0IGNv
ZGUgbW90aW9uLgotCi0gICAgICAgICogR05VbWFrZWZpbGUuYW06Ci0gICAgICAgICogV2ViQ29y
ZS5neXBpOgotICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgotICAgICAg
ICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAgKiBodG1sL0hU
TUw1RG9jdW1lbnRQYXJzZXIuaDoKLQotMjAxMC0wNi0yMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3
ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgotCi0gICAgICAg
IFNhdmUgdGhlIGluc2VydGlvbiBwb2ludCBiZWZvcmUgYmVmb3JlbG9hZCBldmVudHMKLSAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTczCi0KLSAgICAg
ICAgV2UgbmVlZCB0byBzYXZlIHRoZSBpbnNlcnRpb24gcG9pbnQgYmVmb3JlIGRpc3BhdGNoaW5n
IHRoZSBiZWZvcmVsb2FkCi0gICAgICAgIGV2ZW50IGluIGNhc2Ugc29tZW9uZSBkZWNpZGVzIHRv
IGRvY3VtZW50LndyaXRlIGR1cmluZyBiZWZvcmVsb2FkLgotICAgICAgICBQcmlvciB0byB0aGlz
IHBhdGNoLCBzdWNoIHdyaXRlcyB3b3VsZCBwdW1wIHRoZSBsZXhlciB0b28gbXVjaCBhbmQKLSAg
ICAgICAgdG9rZW5pemUgdGhlIHJlc3Qgb2YgdGhlIGRvY3VtZW50IGJlZm9yZSBleGVjdXRpbmcg
dGhlIHNjcmlwdC4KLQotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5jcHA6Ci0g
ICAgICAgIChXZWJDb3JlOjpIVE1MNURvY3VtZW50UGFyc2VyOjpkaXNwYXRjaEJlZm9yZUxvYWQp
OgotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBhcnNlci5oOgotICAgICAgICAqIGh0bWwv
SFRNTDVTY3JpcHRSdW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5u
ZXI6OnJlcXVlc3RTY3JpcHQpOgotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRSdW5uZXJIb3N0
Lmg6Ci0KLTIwMTAtMDYtMjEgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAg
ICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBkb2N1bWVudC53cml0ZSBm
cm9tIEJlZm9yZUxvYWQgc2hvdWxkIG5vdCBhc3NlcnQKLSAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTcxCi0KLSAgICAgICAgV2UncmUgc2V0dGluZyB0
aGUgcGFyc2UgYmxvY2tpbmcgc2NyaXB0IHRvbyBlYXJseS4gIEl0J3Mgbm90IGFjdHVhbGx5Ci0g
ICAgICAgIGJsb2NraW5nIHBhcnNpbmcgeWV0LgotCi0gICAgICAgIFRlc3Q6IGZhc3QvdG9rZW5p
emVyL3dyaXRlLWJlZm9yZS1sb2FkLmh0bWwKLQotICAgICAgICAqIGh0bWwvSFRNTDVTY3JpcHRS
dW5uZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVTY3JpcHRSdW5uZXI6OnJlcXVlc3RT
Y3JpcHQpOgotCi0yMDEwLTA2LTIxICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5j
b20+Ci0KLSAgICAgICAgTm8gcmV2aWV3LiBRVCBidWlsZCBmaXggYWdhaW4uCi0KLSAgICAgICAg
QVg6IFZvaWNlT3ZlciBkb2VzIG5vdCBhbm5vdW5jZSBXQUktQVJJQSBzdGF0ZSBjaGFuZ2Ugb2Yg
YXJpYS1leHBhbmRlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDA5MjcKLQotICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oOgot
ICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6cG9zdE5vdGlmaWNhdGlvbik6Ci0KLTIw
MTAtMDYtMjEgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KLQotICAgICAg
ICBObyByZXZpZXcuIFFUIGJ1aWxkIGZpeC4KLQotICAgICAgICBBWDogVm9pY2VPdmVyIGRvZXMg
bm90IGFubm91bmNlIFdBSS1BUklBIHN0YXRlIGNoYW5nZSBvZiBhcmlhLWV4cGFuZGVkCi0gICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDkyNwotCi0gICAg
ICAgICogYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmg6Ci0gICAgICAgIChXZWJDb3JlOjpB
WE9iamVjdENhY2hlOjpwb3N0Tm90aWZpY2F0aW9uKToKLQotMjAxMC0wNi0yMSAgQ2hyaXMgRmxl
aXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEJldGgg
RGFraW4uCi0KLSAgICAgICAgQVg6IFZvaWNlT3ZlciBkb2VzIG5vdCBhbm5vdW5jZSBXQUktQVJJ
QSBzdGF0ZSBjaGFuZ2Ugb2YgYXJpYS1leHBhbmRlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5MjcKLQotICAgICAgICBUZXN0OiBwbGF0Zm9ybS9t
YWMvYWNjZXNzaWJpbGl0eS9hcmlhLWV4cGFuZGVkLW5vdGlmaWNhdGlvbnMuaHRtbAotCi0gICAg
ICAgICogYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6
OkFYT2JqZWN0Q2FjaGU6OmhhbmRsZUFyaWFFeHBhbmRlZENoYW5nZSk6Ci0gICAgICAgICogYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmg6Ci0gICAgICAgIChXZWJDb3JlOjpBWE9iamVjdENh
Y2hlOjpoYW5kbGVBcmlhRXhwYW5kZWRDaGFuZ2UpOgotICAgICAgICAqIGFjY2Vzc2liaWxpdHkv
QWNjZXNzaWJpbGl0eU9iamVjdC5oOgotICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU9i
amVjdDo6aGFuZGxlQXJpYUV4cGFuZGVkQ2hhbmdlZCk6Ci0gICAgICAgICogYWNjZXNzaWJpbGl0
eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkFjY2Vz
c2liaWxpdHlSZW5kZXJPYmplY3Q6OmhhbmRsZUFyaWFFeHBhbmRlZENoYW5nZWQpOgotICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5oOgotICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvbWFjL0FYT2JqZWN0Q2FjaGVNYWMubW06Ci0gICAgICAgIChXZWJDb3Jl
OjpBWE9iamVjdENhY2hlOjpwb3N0UGxhdGZvcm1Ob3RpZmljYXRpb24pOgotICAgICAgICAqIGRv
bS9FbGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnVwZGF0ZUFmdGVyQXR0
cmlidXRlQ2hhbmdlZCk6Ci0KLTIwMTAtMDYtMjEgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmll
dy5ib3RAZ21haWwuY29tPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI2MTU4
NS4KLSAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjE1ODUKLSAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTUwCi0KLSAgICAg
ICAgSXQgYnJva2UgYnVpbGRzIChSZXF1ZXN0ZWQgYnkga2ludWtvIG9uICN3ZWJraXQpLgotCi0g
ICAgICAgICogQW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgotICAgICAgICAqIEFuZHJv
aWQuZGVyaXZlZC52OGJpbmRpbmdzLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtl
OgotICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAg
ICAgICAgKiBXZWJDb3JlLnByaToKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvajoKLSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAg
ICAgICogaHRtbC9CbG9iQnVpbGRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpCbG9iQnVpbGRl
cjo6YXBwZW5kU3RyaW5nKToKLSAgICAgICAgKFdlYkNvcmU6OkJsb2JCdWlsZGVyOjphcHBlbmRC
bG9iKToKLSAgICAgICAgKiBodG1sL0Jsb2JCdWlsZGVyLmg6Ci0gICAgICAgICogcGFnZS9ET01X
aW5kb3cuaWRsOgotCi0yMDEwLTA2LTIxICBLaW51a28gWWFzdWRhICA8a2ludWtvQGNocm9taXVt
Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEFkZCBC
bG9iQnVpbGRlci5pZGwgdG8gZXhwb3NlIEJsb2JCdWlsZGVyIGludGVyZmFjZQotICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA1OTMKLQotICAgICAgICBC
bG9iQnVpbGRlciBpcyBkZWZpbmVkIGluIEZpbGVBUEkncyBGaWxlV3JpdGVyIHNwZWMuCi0gICAg
ICAgIChodHRwOi8vZGV2LnczLm9yZy8yMDA5L2RhcC9maWxlLXN5c3RlbS9maWxlLXdyaXRlci5o
dG1sKQotCi0gICAgICAgIEFsc28gcmVtb3ZlcyB0aGUgRU5BQkxFX0ZJTEVfV1JJVEVSIGlmZGVm
IGd1YXJkIGZvciBCbG9iQnVpbGRlci4KLQotICAgICAgICBUZXN0czogaHR0cC90ZXN0cy9sb2Nh
bC9ibG9iL3NlbmQtZGF0YS1ibG9iLmh0bWwKLSAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvbG9j
YWwvYmxvYi9zZW5kLWh5YnJpZC1ibG9iLmh0bWwKLSAgICAgICAgICAgICAgIGh0dHAvdGVzdHMv
bG9jYWwvYmxvYi9zZW5kLXNsaWNlZC1kYXRhLWJsb2IuaHRtbAotCi0gICAgICAgICogQW5kcm9p
ZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgotICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC52OGJp
bmRpbmdzLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAgICAqIERlcml2ZWRT
b3VyY2VzLmNwcDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgotICAgICAgICAqIEdO
VW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJDb3Jl
LnByaToKLSAgICAgICAgKiBXZWJDb3JlLnBybzoKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9X
ZWJDb3JlLnZjcHJvajoKLSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6Ci0gICAgICAgICogaHRtbC9CbG9iQnVpbGRlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpC
bG9iQnVpbGRlcjo6YXBwZW5kKToKLSAgICAgICAgKiBodG1sL0Jsb2JCdWlsZGVyLmg6Ci0gICAg
ICAgICogaHRtbC9CbG9iQnVpbGRlci5pZGw6IEFkZGVkLgotICAgICAgICAqIHBhZ2UvRE9NV2lu
ZG93LmlkbDoKLQotMjAxMC0wNi0yMSAgTmF0ZSBDaGFwaW4gIDxqYXBoZXRAY2hyb21pdW0ub3Jn
PgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgRnJhbWVMb2Fk
ZXIgY2xlYW51cDogU3BsaXQgaGlnaCBsZXZlbCBzdWJmcmFtZSBhbmQgcGx1Z2luCi0gICAgICAg
IGxvYWRpbmcgZnVuY3Rpb25zIGludG8gYSBzZXBhcmF0ZSBjbGFzcy4KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNDUzCi0KLSAgICAgICAgUmVmYWN0
b3Igb25seSwgbm8gbmV3IHRlc3RzLgotCi0gICAgICAgICogQW5kcm9pZC5tazoKLSAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKLSAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKLSAgICAgICAgKiBX
ZWJDb3JlLmJhc2UuZXhwOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAgICAgKiBXZWJD
b3JlLnBybzoKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKLSAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAgICogZG9tL0RP
TUltcGxlbWVudGF0aW9uLmNwcDoKLSAgICAgICAgKiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6Ci0g
ICAgICAgICogaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5jcHA6Ci0gICAgICAgICogaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcDoKLSAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgot
ICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5oOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OnN1YmZyYW1lTG9hZGVyKToKLSAgICAgICAgKiBsb2FkZXIvUGx1Z2luRG9jdW1lbnQu
Y3BwOgotICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5jcHA6IEFkZGVkLgotICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OlN1YmZyYW1lTG9hZGVyKToKLSAgICAgICAgKFdl
YkNvcmU6OnRvUGx1Z0luRWxlbWVudCk6Ci0gICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRl
cjo6Y2xlYXIpOgotICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnJlcXVlc3RGcmFt
ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdCk6Ci0g
ICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZE1lZGlhUGxheWVyUHJveHlQbHVnaW4p
OgotICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRn
ZXQpOgotICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6Ci0g
ICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6YWxsb3dQbHVnaW5zKToKLSAgICAgICAg
KFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpzaG91bGRVc2VQbHVnaW4pOgotICAgICAgICAoV2Vi
Q29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRQbHVnaW4pOgotICAgICAgICAoV2ViQ29yZTo6U3Vi
ZnJhbWVMb2FkZXI6OmNvbXBsZXRlVVJMKToKLSAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVMb2Fk
ZXIuaDogQWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6Y29udGFpbnNQ
bHVnaW5zKToKLSAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOgotICAgICAgICAqIHBhZ2UvWFNTQXVk
aXRvci5oOgotICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL01lZGlhUGxheWVyUHJv
eHkuY3BwOgotICAgICAgICAqIHBsdWdpbnMvTWltZVR5cGUuY3BwOgotICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJBcHBsZXQuY3BwOgotICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbWJlZGRl
ZE9iamVjdC5jcHA6Ci0KLTIwMTAtMDYtMjEgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVt
Lm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXguCi0KLSAgICAgICAgQmFkIG1l
cmdlLCBsZWZ0IGEgcmVmZXJlbmNlIHRvIG1fY29tbWl0dGVkRmlyc3RSZWFsRG9jdW1lbnRMb2Fk
IGluCi0gICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzYxNTY4LgotCi0g
ICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1l
TG9hZGVyOjp0cmFuc2l0aW9uVG9Db21taXR0ZWQpOgotCi0yMDEwLTA2LTIxICBOYXRlIENoYXBp
biAgPGphcGhldEBjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0
aC4KLQotICAgICAgICBSZW1vdmUgYSBjb3VwbGUgb2YgRnJhbWVMb2FkZXIncyB1bnVzZWQgYm9v
bGVhbiBtZW1iZXJzCi0gICAgICAgIChtX3JlY2VpdmVkRGF0YSwgbV9jYW5jZWxsaW5nV2l0aExv
YWRJblByb2Nlc3MpIGFuZCBtZXJnZQotICAgICAgICBzZXZlcmFsIG1vcmUgaW50byBhIHNpbmds
ZSBzdGF0ZSBtYWNoaW5lIGNhbGxlZCBGcmFtZUxvYWRlclN0YXRlTWFjaGluZQotICAgICAgICAo
bV9maXJzdExheW91dERvbmUsIG1fY3JlYXRpbmdJbml0aWFsRW1wdHlEb2N1bWVudCwKLSAgICAg
ICAgbV9pc0Rpc3BsYXlpbmdJbml0aWFsRW1wdHlEb2N1bWVudCwgbV9jb21taXR0ZWRGaXJzdFJl
YWxEb2N1bWVudExvYWQpLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zOTY5NQotCi0gICAgICAgIFJlZmFjdG9yIG9ubHksIHNvIG5vIG5ldyB0ZXN0
cy4KLQotICAgICAgICAqIFdlYkNvcmUuYmFzZS5leHA6Ci0gICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgotICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFdyaXRlci5j
cHA6Ci0gICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFdyaXRlcjo6Y3JlYXRlRG9jdW1lbnQpOgot
ICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRXcml0ZXI6OmJlZ2luKToKLSAgICAgICAgKiBsb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OkZyYW1l
TG9hZGVyKToKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjppbml0KToKLSAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpzdG9wTG9hZGluZyk6Ci0gICAgICAgIChXZWJDb3JlOjpG
cmFtZUxvYWRlcjo6ZGlkT3BlblVSTCk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6
ZGlkRXhwbGljaXRPcGVuKToKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpjbGVhcik6
Ci0gICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6ZGlkQmVnaW5Eb2N1bWVudCk6Ci0gICAg
ICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6ZmluaXNoZWRQYXJzaW5nKToKLSAgICAgICAgKFdl
YkNvcmU6OkZyYW1lTG9hZGVyOjpwcm92aXNpb25hbExvYWRTdGFydGVkKToKLSAgICAgICAgKFdl
YkNvcmU6OkZyYW1lTG9hZGVyOjpsb2dDYW5DYWNoZVBhZ2VEZWNpc2lvbik6Ci0gICAgICAgIChX
ZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9nQ2FuQ2FjaGVGcmFtZURlY2lzaW9uKToKLSAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpmcmFtZUhhc0xvYWRlZCk6Ci0gICAgICAgIChXZWJDb3Jl
OjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxMb2FkKToKLSAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjp0cmFuc2l0aW9uVG9Db21taXR0ZWQpOgotICAgICAgICAoV2ViQ29yZTo6
RnJhbWVMb2FkZXI6OmZpbmlzaGVkTG9hZGluZ0RvY3VtZW50KToKLSAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjpjaGVja0xvYWRDb21wbGV0ZUZvclRoaXNGcmFtZSk6Ci0gICAgICAgIChX
ZWJDb3JlOjpGcmFtZUxvYWRlcjo6ZGlkRmlyc3RMYXlvdXQpOgotICAgICAgICAoV2ViQ29yZTo6
RnJhbWVMb2FkZXI6OmZyYW1lTG9hZENvbXBsZXRlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpGcmFt
ZUxvYWRlcjo6ZGlzcGF0Y2hEaWRDb21taXRMb2FkKToKLSAgICAgICAgKiBsb2FkZXIvRnJhbWVM
b2FkZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpzdGF0ZU1hY2hpbmUpOgot
ICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlclN0YXRlTWFjaGluZS5jcHA6IEFkZGVkLgotICAg
ICAgICAqIGxvYWRlci9GcmFtZUxvYWRlclN0YXRlTWFjaGluZS5oOiBBZGRlZC4KLSAgICAgICAg
KiBsb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SGlzdG9y
eUNvbnRyb2xsZXI6OnJlc3RvcmVTY3JvbGxQb3NpdGlvbkFuZFZpZXdTdGF0ZSk6Ci0gICAgICAg
IChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6c2F2ZURvY3VtZW50U3RhdGUpOgotICAgICAg
ICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6UHJvZ3Jl
c3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6Ci0gICAgICAgICogbG9hZGVyL1JlZGlyZWN0
U2NoZWR1bGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJlZGlyZWN0U2NoZWR1bGVyOjpzY2hl
ZHVsZUxvY2F0aW9uQ2hhbmdlKToKLSAgICAgICAgKFdlYkNvcmU6OlJlZGlyZWN0U2NoZWR1bGVy
OjpzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKToKLQotMjAxMC0wNi0yMSAgS2V2aW4gT2xsaXZpZXIg
IDxrZXZpbm9AdGhlb2xsaXZpZXJzLmNvbT4KLQotICAgICAgICBbd3hdIEJ1aWxkIGZpeC4gRml4
IGhlYWRlciBpbmNsdWRlcyBmb3IgRU5BQkxFKERBVEFCQVNFKQotCi0gICAgICAgICogYmluZGlu
Z3MvanMvSlNFeGNlcHRpb25CYXNlLmNwcDoKLQotMjAxMC0wNi0yMSAgQW5kZXJzIENhcmxzc29u
ICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0gICAgICAgIEZpeCBjbGFuZysrIGJ1aWxkLgotCi0g
ICAgICAgICogbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmg6Ci0KLTIwMTAtMDYtMjEgIERpbWl0cmkg
R2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLCBi
dWlsZCBmaXguCi0KLSAgICAgICAgQWRkIGEgbWlzc2luZyBpbmNsdWRlIGluIEFzeW5jSW1hZ2VS
ZXNpemVyLmgKLQotICAgICAgICAqIGh0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuaDogQWRkZWQgdGhl
IEludFNpemUgaW5jbHVkZS4KLQotMjAxMC0wNi0yMSAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBs
ZS5jb20+Ci0KLSAgICAgICAgQ2FsbCBOb3RpZnlBZGRyQ2hhbmdlIGFnYWluIGVhY2ggdGltZSB3
ZSBhcmUgbm90aWZpZWQgb2YgYSBjaGFuZ2UKLQotICAgICAgICBOb3RpZnlBZGRyQ2hhbmdlIG9u
bHkgbm90aWZpZXMgeW91IG9mIGEgc2luZ2xlIGNoYW5nZS4gSWYgeW91IHdhbnQgdG8KLSAgICAg
ICAgbGlzdGVuIGZvciBzdWJzZXF1ZW50IGNoYW5nZXMsIHlvdSBoYXZlIHRvIGNhbGwgaXQgYWdh
aW4uCi0KLSAgICAgICAgRml4ZXMgPGh0dHA6Ly93ZWJraXQub3JnL2IvMzMwMDQ+IE5ldHdvcmtT
dGF0ZU5vdGlmaWVyIGlnbm9yZXMgYWxsCi0gICAgICAgIHN0YXRlIGNoYW5nZXMgYWZ0ZXIgdGhl
IGZpcnN0LgotCi0gICAgICAgIE5vIHRlc3QgcG9zc2libGUsIGFzIHdlIGRvbid0IGhhdmUgYSB3
YXkgdG8gbW9kaWZ5IHRoZSBzeXN0ZW0ncwotICAgICAgICBuZXR3b3JrIGFkYXB0ZXJzIHdoZW4g
cnVubmluZyB0ZXN0cy4KLQotICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24uCi0K
LSAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3dpbi9OZXR3b3JrU3RhdGVOb3RpZmllcldpbi5j
cHA6Ci0gICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RhdGVOb3RpZmllcjo6YWRkckNoYW5nZUNh
bGxiYWNrKTogQ2FsbAotICAgICAgICByZWdpc3RlckZvckFkZHJlc3NDaGFuZ2UgYXMgc29vbiBh
cyB3ZSdyZSBub3RpZmllZCBvZiBhbiBhZGRyZXNzCi0gICAgICAgIGNoYW5nZSwgc28gd2UnbGwg
YWxzbyBnZXQgbm90aWZpZWQgb2YgdGhlICpuZXh0KiBhZGRyZXNzIGNoYW5nZS4gSQotICAgICAg
ICBhZGRlZCB0aGUgY2FsbCBoZXJlIGluc3RlYWQgb2YgaW4gYWRkcmVzc0NoYW5nZWQgKHdoaWNo
IGlzIGNhbGxlZAotICAgICAgICBsYXRlciBvbiB0aGUgbWFpbiB0aHJlYWQpIHRvIG1pbmltaXpl
IHRoZSB0aW1lIGJldHdlZW4gdGhlIGNhbGxiYWNrCi0gICAgICAgIGFuZCByZWdpc3RlcmluZyBh
Z2FpbiAoc28gdGhhdCB3ZSB3b24ndCBtaXNzIGNoYW5nZXMgdGhhdCBoYXBwZW4gaW4KLSAgICAg
ICAgcmFwaWQgc3VjY2Vzc2lvbikuCi0KLTIwMTAtMDYtMjEgIERhbiBCZXJuc3RlaW4gIDxtaXR6
QGFwcGxlLmNvbT4KLQotICAgICAgICBSZWxlYXNlIGJ1aWxkIGZpeAotCi0gICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjp0cnlI
eXBoZW5hdGluZyk6Ci0KLTIwMTAtMDYtMjEgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KLQotICAgICAgICBXaW5kb3dzIGJ1aWxkIGZpeAotCi0gICAgICAgICogV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2o6IEZpeGVkIGEgdHlwby4KLQotMjAxMC0wNi0yMSAgRGFuIEJlcm5z
dGVpbiAgPG1pdHpAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
LgotCi0gICAgICAgIENTUzM6IEltcGxlbWVudCB0aGUgJ2h5cGhlbnMnIGFuZCAnaHlwaGVuYXRl
LWNoYXJhY3RlcicgcHJvcGVydGllcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTAyMjgKLQotICAgICAgICBUZXN0czogZmFzdC90ZXh0L2h5cGhlbmF0
ZS1jaGFyYWN0ZXIuaHRtbAotICAgICAgICAgICAgICAgZmFzdC90ZXh0L2h5cGhlbnMuaHRtbAot
Ci0gICAgICAgIEFkZGVkIC13ZWJraXQtaHlwaGVucyBhbmQgLXdlYmtpdC1oeXBoZW5hdGUtY2hh
cmFjdGVyIGFzIHNwZWNpZmllZCBpbgotICAgICAgICA8aHR0cDovL3d3dy53My5vcmcvVFIvMjAx
MC9XRC1jc3MzLWdjcG0tMjAxMDA2MDgvI2h5cGhlbmF0aW9uPi4KLQotICAgICAgICAqIEFuZHJv
aWQubWs6IEFkZGVkIEh5cGhlbmF0aW9uLmNwcC4KLSAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDog
RGl0dG8uCi0gICAgICAgICogR05VbWFrZWZpbGUuYW06IEFkZGVkIEh5cGhlbmF0aW9uLntjcHAs
aH0uCi0gICAgICAgICogV2ViQ29yZS5iYXNlLmV4cDogRXhwb3J0ZWQgd2tHZXRIeXBoZW5hdGlv
bkxvY2F0aW9uQmVmb3JlSW5kZXgoKS4KLSAgICAgICAgKiBXZWJDb3JlLmd5cGk6IEFkZGVkIEh5
cGhlbmF0aW9uLntjcHAsaH0uCi0gICAgICAgICogV2ViQ29yZS5wcm86IEFkZGVkIEh5cGhlbmF0
aW9uLntjcHAsaH0uCi0gICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6IEFk
ZGVkIEh5cGhlbmF0aW9uLntjcHAsaH0uCi0gICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOiBBZGRlZCBIeXBoZW5hdGlvbi57Y3BwLGh9LgotICAgICAgICAqIGNzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uOjpnZXRQcm9wZXJ0eUNTU1ZhbHVlKTogQWRkZWQgdGhlIC13
ZWJraXQtaHlwaGVuYXRlLWNoYXJhY3RlcgotICAgICAgICBhbmQgLXdlYmtpdC1oeXBoZW5zIGNh
c2VzLgotICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q1NT
UGFyc2VyOjpwYXJzZVZhbHVlKTogVmFsaWRhdGUgdmFsdWVzIGZvciB0aGUgbmV3IHByb3BlcnRp
ZXMuCi0gICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKLSAgICAgICAg
KFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6IEFkZGVkLiBN
YXBzIGZyb20gYSBIeXBoZW5zIHZhbHVlIHRvIGFuIGlkZW50aWZpZXIuCi0gICAgICAgIChXZWJD
b3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgSHlwaGVucyk6IEFkZGVkLiBNYXBzIGZy
b20gYW4gaWRlbnRpZmllciB0byBhIEh5cGhlbnMgdmFsdWUuCi0gICAgICAgICogY3NzL0NTU1By
b3BlcnR5TmFtZXMuaW46IEFkZGVkIC13ZWJraXQtaHlwaGVuYXRlLWNoYXJhY3RlciBhbmQgLXdl
YmtpdC1oeXBoZW5zLgotICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKLSAgICAg
ICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOiBBcHBseSB0aGUg
bmV3IHByb3BlcnRpZXMgdG8gdGhlIFJlbmRlclN0eWxlLgotICAgICAgICAqIGNzcy9DU1NWYWx1
ZUtleXdvcmRzLmluOgotICAgICAgICAqIHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJm
YWNlLmg6IEFkZGVkIHdrR2V0SHlwaGVuYXRpb25Mb2NhdGlvbkJlZm9yZUluZGV4LgotICAgICAg
ICAqIHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tOiBEaXR0by4KLSAgICAg
ICAgKiBwbGF0Zm9ybS90ZXh0L0NoYXJhY3Rlck5hbWVzLmg6IEFkZGVkIHRoZSBoeXBoZW4gY2hh
cmFjdGVyLgotICAgICAgICAqIHBsYXRmb3JtL3RleHQvSHlwaGVuYXRpb24uY3BwOiBBZGRlZC4K
LSAgICAgICAgKFdlYkNvcmU6Omxhc3RIeXBoZW5Mb2NhdGlvbik6IEFkZGVkIHRoaXMgZGVmYXVs
dCBpbXBsZW1lbnRhdGlvbiBmb3IgcGxhdGZvcm1zIHRoYXQgZG8gbm90IGltcGxlbWVudAotICAg
ICAgICBoeXBoZW5hdGlvbiB5ZXQuIEl0IGNhbGxzIG5vdEltcGxlbWVudGVkKCkgYW5kIHJldHVy
bnMgMC4KLSAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L0h5cGhlbmF0aW9uLmg6IEFkZGVkLgotICAg
ICAgICAqIHBsYXRmb3JtL3RleHQvY2YvSHlwaGVuYXRpb25DRi5jcHA6IEFkZGVkLgotICAgICAg
ICAoV2ViQ29yZTo6bGFzdEh5cGhlbkxvY2F0aW9uKTogUmV0dXJucyB0aGUgbGFzdCBoeXBoZW5h
dGlvbiBsb2NhdGlvbiBvY2N1cnJpbmcgaW4gdGhlIGdpdmVuIHN0cmluZyBiZWZvcmUKLSAgICAg
ICAgdGhlIGdpdmVuIGluZGV4LiBVc2VzIHRoZSBjdXJyZW50IHNlYXJjaCBsb2NhbGUgKHdoaWNo
IGlzIGJhc2VkIG9uIHRoZSB0b3AgbGFuZ3VhZ2UgcHJlZmVyZW5jZSBvZiB0aGUgdXNlcikKLSAg
ICAgICAgZm9yIGh5cGhlbmF0aW9uLgotICAgICAgICAqIHBsYXRmb3JtL3RleHQvbWFjL0h5cGhl
bmF0aW9uTWFjLm1tOiBBZGRlZC4KLSAgICAgICAgKFdlYkNvcmU6Omxhc3RIeXBoZW5Mb2NhdGlv
bik6IFJldHVybnMgdGhlIGxhc3QgaHlwaGVuYXRpb24gbG9jYXRpb24gb2NjdXJyaW5nIGluIHRo
ZSBnaXZlbiBzdHJpbmcgYmVmb3JlCi0gICAgICAgIHRoZSBnaXZlbiBpbmRleC4gUmV0dXJucyAw
IGlmIHRoZSBjdXJyZW50IHNlYXJjaCBsb2NhbGUgaXMgbm90ICJlbiIsIGJlY2F1c2UgdGhlIHBs
YXRmb3JtIG9ubHkga25vd3MgaG93IHRvCi0gICAgICAgIGh5cGhlbmF0ZSBFbmdsaXNoLgotICAg
ICAgICAqIHJlbmRlcmluZy9CaWRpUnVuLmg6Ci0gICAgICAgIChXZWJDb3JlOjpCaWRpUnVuOjpC
aWRpUnVuKTogQWRkZWQgYSBib29sZWFuIG1lbWJlciwgbV9oYXNIeXBoZW4sIGFuZCBpbml0aWFs
aXplZCBpdCB0byBmYWxzZSBpbiB0aGUgY29uc3RydWN0b3IuCi0gICAgICAgICogcmVuZGVyaW5n
L0lubGluZUJveC5oOgotICAgICAgICAoV2ViQ29yZTo6SW5saW5lQm94OjpJbmxpbmVCb3gpOiBS
ZW5hbWVkIG1faGFzRWxsaXBzaXNCb3ggdG8gbV9oYXNFbGxpcHNpc0JveE9ySHlwaGVuLCBiZWNh
dXNlIHRoaXMgYml0IGlzIG5vdwotICAgICAgICBzaGFyZWQgYnkgdHdvIHN1YmNsYXNzOiBSb290
SW5saW5lQm94IHVzZXMgaXQgZm9yIGhhc0VsbGlwc2lzQm94KCksIHdoaWxlIElubGluZVRleHRC
b3ggdXNlcyBpdCBmb3IgaGFzSHlwaGVuKCkuCi0gICAgICAgICogcmVuZGVyaW5nL0lubGluZVRl
eHRCb3guY3BwOgotICAgICAgICAoV2ViQ29yZTo6YWRqdXN0Q2hhcmFjdGVyc0FuZExlbmd0aEZv
ckh5cGhlbik6IEFkZGVkIHRoaXMgaGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgaHlwaGVuIHN0
cmluZyBmcm9tIHRoZSBzdHlsZQotICAgICAgICBhbmQgcmV0dXJuIGEgVUNoYXIqIGFuZCBsZW5n
dGggZm9yIHRoZSBjb25jYXRlbmF0aW9uIG9mIHRoZSBnaXZlbiB0ZXh0IHdpdGggdGhlIGh5cGhl
biBzdHJpbmcuCi0gICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpzZWxlY3Rpb25SZWN0
KTogSWYgdGhlIHNlbGVjdGVkIHJhbmdlIHRvdWNoZXMgdGhlIGVuZCBhbmQgdGhlIGJveCBoYXMg
YSBoeXBoZW4sCi0gICAgICAgIGNvbXB1dGUgdGhlIHdpZHRoIG9mIHRoZSB0ZXh0IHdpdGggdGhl
IGh5cGhlbiBzdHJpbmcgY29uY2F0ZW5hdGVkIHRvIGl0LgotICAgICAgICAoV2ViQ29yZTo6SW5s
aW5lVGV4dEJveDo6cGFpbnQpOiBJZiB0aGUgYm94IGhhcyBhIGh5cGhlbiwgZHJhdyB0aGUgdGV4
dCB3aXRoIHRoZSBoeXBoZW4gc3RyaW5nIGNvbmNhdGVuYXRlZCB0byBpdC4KLSAgICAgICAgKFdl
YkNvcmU6OklubGluZVRleHRCb3g6OnBhaW50U2VsZWN0aW9uKTogU2ltaWxhcmx5IGNvbmNhdGVu
YXRlIHRoZSBoeXBoZW4gc3RyaW5nLgotICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVUZXh0Qm94
Lmg6Ci0gICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpoYXNIeXBoZW4pOiBBZGRlZCB0
aGlzIGFjY2Vzc29yLgotICAgICAgICAoV2ViQ29yZTo6SW5saW5lVGV4dEJveDo6c2V0SGFzSHlw
aGVuKTogRGl0dG8uCi0gICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmg6Ci0gICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHA6Ci0gICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJCbG9jazo6Y29uc3RydWN0TGluZSk6IENvcHkgdGhlIG1faGFzSHlwaGVuIGZsYWcg
ZnJvbSB0aGUgcnVuIHRvIGl0cyB0ZXh0IGJveC4KLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJs
b2NrOjpjb21wdXRlSG9yaXpvbnRhbFBvc2l0aW9uc0ZvckxpbmUpOiBBZGQgdGhlIHdpZHRoIG9m
IHRoZSBoeXBoZW4gc3RyaW5nIHdoZW4gY29tcHV0aW5nIHRoZQotICAgICAgICB3aWR0aCBvZiBh
IGJveCB0aGF0IGhhcyBhIGh5cGhlbi4KLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjps
YXlvdXRJbmxpbmVDaGlsZHJlbik6IElmIHRoZSBsaW5lIHdhcyBoeXBoZW5hdGVkLCBzZXQgdGhl
IG1faGFzSHlwaGVuIGZsYWcgb24gdGhlCi0gICAgICAgIGxvZ2ljYWxseSBsYXN0IHJ1bi4KLSAg
ICAgICAgKFdlYkNvcmU6OnRyeUh5cGhlbmF0aW5nKTogQWRkZWQgdGhpcyBoZWxwZXIgZnVuY3Rp
b24gd2hpY2ggY2hlY2tzIGlmIGEgcGllY2Ugb2YgdGV4dCB0aGF0IGRvZXMgbm90IGZpdCBvbiB0
aGUKLSAgICAgICAgbGluZSBjb3VsZCBiZSBoeXBoZW5hdGVkIHN1Y2ggdGhhdCB0aGUgcGFydCBi
ZWZvcmUgdGhlIGh5cGhlbiwgaW5jbHVkaW5nIHRoZSBoeXBoZW4sIHdvdWxkIGZpdC4gR2l2ZW4g
dGhlIGFtb3VudAotICAgICAgICBvZiBzcGFjZSByZW1haW5pbmcgb24gdGhlIGxpbmUsIGl0IGZp
bmRzIHRoZSBsb25nZXN0IHByZWZpeCB0aGF0IGNhbiBmaXQgaW4gdGhlIHJlbWFpbmluZyBzcGFj
ZSAod2hpY2ggbGVhdmluZyByb29tIGZvcgotICAgICAgICB0aGUgaHlwaGVuKSwgYW5kIHRoZW4g
Y2hlY2tzIGZvciBhIGh5cGhlbmF0aW9uIGxvY2F0aW9uIHdpdGhpbiB0aGF0IHByZWZpeC4KLSAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpmaW5kTmV4dExpbmVCcmVhayk6IEluIHRoZSAn
aHlwaGVuczogbm9uZScgY2FzZSwgcHJldmVudCBsaW5lIGJyZWFrcyBhdCBzb2Z0IGh5cGhlbnMu
Ci0gICAgICAgIEluIHRoZSAnaHlwaGVuczogYXV0bycgY2FzZSwgdHJ5IGh5cGhlbmF0aW5nIHdo
ZW4gYSB3b3JkIHdpbGwgbm90IGZpdCBpbiB0aGUgcmVtYWluaW5nIHNwYWNlIG9uIHRoZSBsaW5l
LgotICAgICAgICAqIHJlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OlJvb3RJbmxpbmVCb3g6OmRldGFjaEVsbGlwc2lzQm94KTogQ2hhbmdlZCB0byB1c2UgaGFz
RWxsaXBzaXNCb3goKSBhbmQgc2V0SGFzRWxsaXBzaXNCb3goKS4KLSAgICAgICAgKFdlYkNvcmU6
OlJvb3RJbmxpbmVCb3g6OmNsZWFyVHJ1bmNhdGlvbik6IERpdHRvLgotICAgICAgICAoV2ViQ29y
ZTo6Um9vdElubGluZUJveDo6cGxhY2VFbGxpcHNpcyk6IERpdHRvLgotICAgICAgICAoV2ViQ29y
ZTo6Um9vdElubGluZUJveDo6cGFpbnRFbGxpcHNpc0JveCk6IERpdHRvLgotICAgICAgICAoV2Vi
Q29yZTo6Um9vdElubGluZUJveDo6bm9kZUF0UG9pbnQpOiBEaXR0by4KLSAgICAgICAgKFdlYkNv
cmU6OlJvb3RJbmxpbmVCb3g6OmVsbGlwc2lzQm94KTogRGl0dG8uCi0gICAgICAgICogcmVuZGVy
aW5nL1Jvb3RJbmxpbmVCb3guaDoKLSAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6Omhh
c0VsbGlwc2lzQm94KTogQWRkZWQgdGhpcyBhY2Nlc3Nvci4KLSAgICAgICAgKFdlYkNvcmU6OlJv
b3RJbmxpbmVCb3g6OnNldEhhc0VsbGlwc2lzQm94KTogRGl0dG8uCi0gICAgICAgICogcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxl
OjpkaWZmKTogUmV0dXJuIGEgbGF5b3V0IGhpbnQgaWYgdGhlIGh5cGhlbnMgc2V0dGluZyBvciBo
eXBoZW5hdGUtY2hhcmFjdGVyIGRpZmZlcnMuCi0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHls
ZTo6aHlwaGVuU3RyaW5nKTogQWRkZWQuIEZvciBoeXBoZW5hdGUtY2hhcmFjdGVyOiBhdXRvLCBy
ZXR1cm5zIHRoZSBoeXBoZW4gY2hhcmFjdGVyLgotICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5oOgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6Omh5cGhlbnMp
OiBBZGRlZCB0aGlzIGFjY2Vzc29yLgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6
Omh5cGhlbmF0ZUNoYXJhY3Rlcik6IERpdHRvLgotICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVk
RmxhZ3M6OnNldEh5cGhlbnMpOiBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZs
YWdzOjpzZXRIeXBoZW5hdGVDaGFyYWN0ZXIpOiBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6Oklu
aGVyaXRlZEZsYWdzOjppbml0aWFsSHlwaGVucyk6IEFkZGVkLiBSZXR1cm5zIEh5cGhlbnNNYW51
YWwuCi0gICAgICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6aW5pdGlhbEh5cGhlbmF0ZUNo
YXJhY3Rlcik6IEFkZGVkLiBSZXR1cm5zIHRoZSBudWxsIHN0cmluZywgY29ycmVzcG9uZGluZyB0
bwotICAgICAgICBhIHZhbHVlIG9mICdhdXRvJy4KLSAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUv
UmVuZGVyU3R5bGVDb25zdGFudHMuaDoKLSAgICAgICAgQWRkZWQgYSBIeXBoZW5zIGVudW0uCi0g
ICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwOgotICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5oZXJpdGVk
RGF0YSk6IEluaXRpYWxpemUgYW5kIGNvcHkgdGhlIG5ldyBtZW1iZXJzLgotICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSk6IENvbXBhcmUgdGhlIG5l
dyBtZW1iZXJzLgotICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWRE
YXRhLmg6IEFkZGVkIHR3byBuZXcgbWVtYmVyczogaHlwaGVucyBhbmQgaHlwaGVuYXRlQ2hhcmFj
dGVyLgotCi0yMDEwLTA2LTAzICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5v
cmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCi0KLSAgICAgICAgUGx1bWIg
Rm9ybVN1Ym1pc3Npb24gdGhyb3VnaCB0byBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbi4KLSAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMTM3Ci0KLSAgICAg
ICAgTm8gYmVoYXZpb3IgY2hhbmdlLCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgotCi0gICAg
ICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEZv
cm1FbGVtZW50OjpwcmVwYXJlRm9ybVN1Ym1pc3Npb24pOiBNb3ZlZCBjcmVhdGlvbiBvZiBhY3Rp
b24gVVJMCi0gICAgICAgICAgICBpbnN0YW5jZSBoZXJlIGZyb20gRnJhbWVMb2FkZXI6OnN1Ym1p
dCwgYmVjYXVzZSBpdCBtYWtlcyBtb3JlIHNlbnNlIGhlcmUsCi0gICAgICAgICAgICBhbHNvIGFk
ZGVkIGEgRklYTUUgdG8gaW52ZXN0aWdhdGUgZXhpc3RpbmcgY29kZSBsYXRlci4KLSAgICAgICAg
KiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwOgotICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1p
c3Npb246OkZvcm1TdWJtaXNzaW9uKTogQ2hhbmdlZCBhY3Rpb24gdG8gYmUgYSBLVVJMLCBub3Qg
YSBTdHJpbmcuCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKTogRGl0
dG8uCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cG9wdWxhdGVGcmFtZUxvYWRS
ZXF1ZXN0KTogQWRkZWQsIG1vdmluZyB0aGUgbG9naWMgZnJvbQotICAgICAgICAgICAgRnJhbWVM
b2FkZXI6OnN1Ym1pdCBjbG9zZXIgdG8gdGhlIGRhdGEuCi0gICAgICAgICogbG9hZGVyL0Zvcm1T
dWJtaXNzaW9uLmg6Ci0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6YWN0aW9uKTog
Q2hhbmdlZCB0eXBlIHRvIEtVUkwuCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6
Y2xlYXJUYXJnZXQpOiBBZGRlZC4KLSAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpy
ZWZlcnJlcik6IEFkZGVkLgotICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnNldFJl
ZmVycmVyKTogQWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6b3JpZ2lu
KTogQWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6c2V0T3JpZ2luKTog
QWRkZWQuCi0gICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OkZyYW1lTG9hZGVyOjpzdWJtaXRGb3JtKTogQ2xlYW5lZCB1cCB0byBtYWtlIGl0IG1vcmUg
YWJvdXQgZGVjaXNpb24tbWFraW5nLAotICAgICAgICAgICAgbm90IGRhdGEgbWFuaXB1bGF0aW9u
LgotICAgICAgICAqIGxvYWRlci9SZWRpcmVjdFNjaGVkdWxlci5jcHA6Ci0gICAgICAgIChXZWJD
b3JlOjpTY2hlZHVsZWRGb3JtU3VibWlzc2lvbjo6U2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24pOiBD
aGFuZ2VkIHRvIGFjY2VwdCBGb3JtU3VibWlzc2lvbiBhcyBhcmd1bWVudC4KLSAgICAgICAgKFdl
YkNvcmU6OlNjaGVkdWxlZEZvcm1TdWJtaXNzaW9uOjpmaXJlKTogQ2hhbmdlZCB0byB1c2UgRm9y
bVN1Ym1pc3Npb24uCi0gICAgICAgIChXZWJDb3JlOjpSZWRpcmVjdFNjaGVkdWxlcjo6c2NoZWR1
bGVGb3JtU3VibWlzc2lvbik6IFJlbW92ZWQgYXNzZXJ0IHRoYXQgbm8gbG9uZ2VyIG1ha2VzIHNl
bnNlLAotICAgICAgICAgICAgY2hhbmdlZCB0byB1c2UgRm9ybVN1Ym1pc3Npb24uCi0gICAgICAg
ICogbG9hZGVyL1JlZGlyZWN0U2NoZWR1bGVyLmg6IFVwZGF0ZWQgU2NoZWR1bGVkRm9ybVN1Ym1p
c3Npb24gZGVjbCB0byBob2xkIEZvcm1TdWJtaXNzaW9uIHJlZi4KLQotMjAxMC0wNi0yMSAgU2F0
aXNoIFNhbXBhdGggIDxzYXRpc2hAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5
IFN0ZXZlIEJsb2NrLgotCi0gICAgICAgIFNwZWVjaCBJbnB1dCBQYXRjaCAwOiBBZGRlZCBjb21w
aWxhdGlvbiBhcmd1bWVudCB0byBjb25kaXRpb25hbGx5IGNvbXBpbGUgcGVuZGluZyBwYXRjaGVz
LgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4NzgK
LQotICAgICAgICBObyBuZXcgdGVzdHMgYXJlIG5lZWRlZCwgYmVjYXVzZSB0aGVyZSBpcyBubyBu
ZXcgZnVuY3Rpb25hbGl0eS4KLQotICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnOgotICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNv
cmUucHJpOgotCi0yMDEwLTA2LTIxICBIYW5zIFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+
Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgSmVyZW15IE9ybG93LgotCi0gICAgICAgIERlbGV0ZSBE
T00gc3RvcmFnZSBkYXRhYmFzZXMgd2hlbiB0aGV5IGFyZSBlbXB0eS4KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzY3Ci0KLSAgICAgICAgRXZlbiBp
ZiBhIHBhZ2UgY2xlYXJzIGl0cyBsb2NhbCBzdG9yYWdlLCB0aGUgZGF0YWJhc2UgZmlsZSBmb3Ig
aXQgc3RheXMgYXJvdW5kLAotICAgICAgICBhbmQgdGhlcmUgaXMgY3VycmVudGx5IG5vIG1lY2hh
bmlzbSB0aGF0IGRlbGV0ZXMgdGhlbS4KLQotICAgICAgICBBZnRlciBkb2luZyB0aGUgImZpbmFs
IHN5bmMiIG9mIGEgc3RvcmFnZSBhcmVhLCB0aGUgU3RvcmFnZUFyZWFTeW5jTWFzdGVyIHNob3Vs
ZAotICAgICAgICBzZWUgaWYgdGhlIGRhdGFiYXNlIGlzIGVtcHR5LCBhbmQgaW4gdGhhdCBjYXNl
IGRlbGV0ZSBpdC4KLQotICAgICAgICBUZXN0czoKLSAgICAgICAgIG1hbnVhbC10ZXN0cy9sb2Nh
bHN0b3JhZ2UtZW1wdHktZGF0YWJhc2UuaHRtbAotCi0gICAgICAgICogbWFudWFsLXRlc3RzL2xv
Y2Fsc3RvcmFnZS1lbXB0eS1kYXRhYmFzZS5odG1sOgotICAgICAgICBBZGRlZCBsaW5rIHRvIGNs
ZWFyIGxvY2FsIHN0b3JhZ2UgZm9yIHRlc3RpbmcgdGhhdCB0aGUgZmlsZSBpcyByZW1vdmVkLgot
ICAgICAgICAqIHN0b3JhZ2UvTG9jYWxTdG9yYWdlVGFzay5jcHA6Ci0gICAgICAgIChXZWJDb3Jl
OjpMb2NhbFN0b3JhZ2VUYXNrOjpMb2NhbFN0b3JhZ2VUYXNrKToKLSAgICAgICAgQWRkZWQgbG9j
YWwgc3RvcmFnZSB0YXNrIHR5cGUgRGVsZXRlRW1wdHlEYXRhYmFzZS4KLSAgICAgICAgKFdlYkNv
cmU6OkxvY2FsU3RvcmFnZVRhc2s6OnBlcmZvcm1UYXNrKToKLSAgICAgICAgRGl0dG8uCi0gICAg
ICAgICogc3RvcmFnZS9Mb2NhbFN0b3JhZ2VUYXNrLmg6Ci0gICAgICAgIChXZWJDb3JlOjpMb2Nh
bFN0b3JhZ2VUYXNrOjopOgotICAgICAgICBEaXR0by4KLSAgICAgICAgKFdlYkNvcmU6OkxvY2Fs
U3RvcmFnZVRhc2s6OmNyZWF0ZURlbGV0ZUVtcHR5RGF0YWJhc2UpOgotICAgICAgICBEaXR0by4K
LSAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VBcmVhU3luYy5jcHA6Ci0gICAgICAgIChXZWJDb3Jl
OjpTdG9yYWdlQXJlYVN5bmM6OnNjaGVkdWxlRmluYWxTeW5jKToKLSAgICAgICAgV2hlbiBzY2hl
ZHVsaW5nIGZpbmFsIHN5bmMsIGFsc28gc2NoZWR1bGUgRGVsZXRlRW1wdHlEYXRhYmFzZS4KLSAg
ICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VBcmVhU3luYzo6c3luYyk6Ci0gICAgICAgIFJldHVybiBl
YXJseSBpZiBmaW5hbCBzeW5jIGhhcyBub3RoaW5nIHRvIHN5bmMuCi0gICAgICAgIChXZWJDb3Jl
OjpTdG9yYWdlQXJlYVN5bmM6OmRlbGV0ZUVtcHR5RGF0YWJhc2UpOgotICAgICAgICBBZGRlZCBm
dW5jdGlvbiB0byBjaGVjayBpZiBhIGRhdGFiYXNlIGlzIGVtcHR5IGFuZCBpbiB0aGF0IGNhc2Ug
ZGVsZXRlIGl0LgotICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFTeW5jLmg6Ci0gICAgICAg
IERpdHRvLgotICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN5bmNNYW5hZ2VyLmNwcDoKLSAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VTeW5jTWFuYWdlcjo6c2NoZWR1bGVEZWxldGVFbXB0eURhdGFi
YXNlKToKLSAgICAgICAgQWRkZWQgZnVuY3Rpb24gZm9yIHNjaGVkdWxpbmcgRGVsZXRlRW1wdHlE
YXRhYmFzZSB0YXNrLgotICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN5bmNNYW5hZ2VyLmg6Ci0g
ICAgICAgIERpdHRvLgotCi0yMDEwLTA2LTIxICBCYWxhenMgS2VsZW1lbiAgPGtiQGluZi51LXN6
ZWdlZC5odT4KLQotICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAg
ICBbUXRdIEF2b2lkIHVubmVjZXNzYXJ5IGltYWdlIGNvbnZlcnNpb24gaW4gUkdCQTMyQnVmZmVy
Ojp6ZXJvRmlsbCgpCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MDkxMAotCi0gICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvUkdCQTMy
QnVmZmVyUXQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6UkdCQTMyQnVmZmVyOjp6ZXJvRmlsbCk6
Ci0KLTIwMTAtMDYtMjEgIEJlbmphbWluIFBvdWxhaW4gIDxiZW5qYW1pbi5wb3VsYWluQG5va2lh
LmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4K
LQotICAgICAgICBbUXRdIERlY29kZSBpbWFnZXMgZGlyZWN0bHkgdG8gUVBpeG1hcAotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA3OTcKLQotICAgICAg
ICBEZWNvZGUgaW1hZ2VzIHRvIFFQaXhtYXAgZGlyZWN0bHkgaW5zdGVhZCBvZiBRSW1hZ2Ugd2hl
biBwb3NzaWJsZS4KLSAgICAgICAgUkdCQTMyQnVmZmVyIHRyYW5zZm9ybXMgdGhlIHBpeG1hcCBi
YWNrIHRvIGltYWdlIGlmCi0gICAgICAgIG5lY2Vzc2FyeS4KLQotICAgICAgICBUaGlzIGltcHJv
dmUgdGhlIHBlcmZvcm1hbmNlIHdpdGggY2VydGFpbiBncmFwaGljIHN5c3RlbSwgYW5kCi0gICAg
ICAgIGNhbiByZWR1Y2UgbWVtb3J5IHVzYWdlLgotCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvcXQvSW1hZ2VEZWNvZGVyUXQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEZWNvZGVy
UXQ6OnNldERhdGEpOgotICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEZWNvZGVyUXQ6OmludGVybmFs
SGFuZGxlQ3VycmVudEltYWdlKToKLSAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9J
bWFnZURlY29kZXIuaDoKLSAgICAgICAgKFdlYkNvcmU6OlJHQkEzMkJ1ZmZlcjo6Z2V0QWRkcik6
Ci0gICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvUkdCQTMyQnVmZmVyUXQuY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6UkdCQTMyQnVmZmVyOjpjbGVhcik6Ci0gICAgICAgIChXZWJD
b3JlOjpSR0JBMzJCdWZmZXI6Onplcm9GaWxsKToKLSAgICAgICAgKFdlYkNvcmU6OlJHQkEzMkJ1
ZmZlcjo6Y29weUJpdG1hcERhdGEpOgotICAgICAgICAoV2ViQ29yZTo6UkdCQTMyQnVmZmVyOjpz
ZXRTaXplKToKLSAgICAgICAgKFdlYkNvcmU6OlJHQkEzMkJ1ZmZlcjo6YXNOZXdOYXRpdmVJbWFn
ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpSR0JBMzJCdWZmZXI6OnNldFBpeG1hcCk6Ci0KLTIwMTAt
MDYtMjAgIER1bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9taXVtLm9yZz4KLQotICAgICAgICBS
ZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIEFkZGluZyB0aGUgU1FMRXhjZXB0aW9u
IGNsYXNzIHdoaWNoIHdpbGwgYmUgdXNlZCB0byByZXBvcnQgc3luYyBEQiBlcnJvcnMuCi0gICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDYwNwotCi0gICAg
ICAgICogQW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgotICAgICAgICAqIEFuZHJvaWQu
ZGVyaXZlZC52OGJpbmRpbmdzLm1rOgotICAgICAgICAqIENNYWtlTGlzdHMudHh0OgotICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKLSAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgot
ICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgotICAgICAgICAqIFdlYkNvcmUuZ3lwaToKLSAgICAg
ICAgKiBXZWJDb3JlLnByaToKLSAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
ajoKLSAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Ci0gICAgICAg
ICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OnNldERP
TUV4Y2VwdGlvbik6Ci0gICAgICAgICogYmluZGluZ3MvanMvSlNFeGNlcHRpb25CYXNlLmNwcDoK
LSAgICAgICAgKFdlYkNvcmU6OnRvRXhjZXB0aW9uQmFzZSk6Ci0gICAgICAgICogYmluZGluZ3Mv
djgvVjhQcm94eS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpzZXRET01FeGNlcHRp
b24pOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4UHJveHkuaDoKLSAgICAgICAgKiBkb20vRXhj
ZXB0aW9uQ29kZS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjopOgotICAgICAgICAoV2ViQ29yZTo6
Z2V0RXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uKToKLSAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29k
ZS5oOgotICAgICAgICAoV2ViQ29yZTo6KToKLSAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6
Ci0gICAgICAgICogc3RvcmFnZS9TUUxFeGNlcHRpb24uaDogQWRkZWQuCi0gICAgICAgIChXZWJD
b3JlOjpTUUxFeGNlcHRpb246OmNyZWF0ZSk6Ci0gICAgICAgIChXZWJDb3JlOjpTUUxFeGNlcHRp
b246Oik6Ci0gICAgICAgIChXZWJDb3JlOjpTUUxFeGNlcHRpb246OlNRTEV4Y2VwdGlvbik6Ci0g
ICAgICAgICogc3RvcmFnZS9TUUxFeGNlcHRpb24uaWRsOiBBZGRlZC4KLQotMjAxMC0wNi0yMCAg
WXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KLQotICAgICAgICBSZXZpZXdl
ZCBieSBQYXZlbCBGZWxkbWFuLgotCi0gICAgICAgIFt2OF0gV2ViIEluc3BlY3RvcjogZG9uJ3Qg
YWRkIFNjcmlwdERlYnVnU2VydmVyIGFzIHY4IGxpc3RlbmVyIGlmIGJyb3dzZXIgZXhwb3Nlcwot
ICAgICAgICB2OCBkZWJ1Z2dpbmcgcHJvdG9jb2wuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg0NAotCi0gICAgICAgICogYmluZGluZ3MvdjgvU2Ny
aXB0RGVidWdTZXJ2ZXIuY3BwOgotICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RGVidWdTZXJ2ZXI6
OlNjcmlwdERlYnVnU2VydmVyKToKLSAgICAgICAgKFdlYkNvcmU6OlNjcmlwdERlYnVnU2VydmVy
OjphZGRMaXN0ZW5lcik6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHREZWJ1Z1NlcnZlcjo6c2V0
RW5hYmxlZCk6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHREZWJ1Z1NlcnZlcjo6aXNEZWJ1Z2dl
ckFsd2F5c0VuYWJsZWQpOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1NjcmlwdERlYnVnU2VydmVy
Lmg6Ci0KLTIwMTAtMDYtMjAgIEd5dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNv
bT4KLQotICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4KLQotICAgICAgICBbRUZMXSBCdWls
ZCBicmVhayBmb3IgcjYxNTI3Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Bvc3Rf
YnVnLmNnaSAKLQotICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBBZGQgbG9hZGVyL0Zvcm1TdWJt
aXNzaW9uLmNwcAotCi0yMDEwLTA2LTIwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBs
ZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KLQotICAgICAgICBS
ZW1vdmUgYm9ndXMgY29uc3QgcXVhbGlmaWVycy4KLQotICAgICAgICAqIHBsYXRmb3JtL21hYy9Q
YXN0ZWJvYXJkSGVscGVyLmg6Ci0KLTIwMTAtMDYtMjAgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFy
b2dhQHBhcm9nYS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgS2VudCBUYW11cmEuCi0KLSAg
ICAgICAgQnVpbGRmaXggZm9yIE5vdGlmaWNhdGlvbkNlbnRlci5oLgotICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4OTAKLQotICAgICAgICBTY3JpcHRF
eGVjdXRpb25Db250ZXh0Ojpjb21wbGV0ZVVSTCBpcyB1c2VkIGluIGhlYWRlciwKLSAgICAgICAg
YnV0IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCB3YXNuJ3QgaW5jbHVkZWQuCi0KLSAgICAgICAg
KiBub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oOgotCi0yMDEwLTA2LTIwICBUb255
IEdlbnRpbGNvcmUgIDx0b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkg
RXJpYyBTZWlkZWwuCi0KLSAgICAgICAgUmVjb2duaXplIGFzeW5jIGF0dHJpYnV0ZSBvbiBIVE1M
IHNjcmlwdCB0YWdzLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzkwMjYKLQotICAgICAgICBUaGlzIGRvZXMgbm90IGltcGxlbWVudCBhc3luYyBiZWhh
dmlvciwgaXQgb25seSBwYXJzZXMgdGhlIGFzeW5jCi0gICAgICAgIGF0dHJpYnV0ZSBmb3IgSFRN
TCBzY3JpcHQgdGFncy4gU1ZHIHNjcmlwdCB0YWdzIGNvbnRpbnVlIHRvIG5vdAotICAgICAgICBz
dXBwb3J0IHRoZSBhc3luYyBhdHRyaWJ1dGUuCi0KLSAgICAgICAgVGVzdHM6IGZhc3QvZG9tL0hU
TUxTY3JpcHRFbGVtZW50L3NjcmlwdC1hc3luYy1hdHRyLmh0bWwKLSAgICAgICAgICAgICAgIHN2
Zy9kb20vU1ZHU2NyaXB0RWxlbWVudC9zY3JpcHQtYXN5bmMtYXR0ci5zdmcKLQotICAgICAgICAq
IGRvbS9TY3JpcHRFbGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEVsZW1lbnRE
YXRhOjppc0FzeW5jaHJvbm91cyk6Ci0gICAgICAgIChXZWJDb3JlOjpTY3JpcHRFbGVtZW50RGF0
YTo6aXNEZWZlcnJlZCk6Ci0gICAgICAgICogZG9tL1NjcmlwdEVsZW1lbnQuaDoKLSAgICAgICAg
KiBodG1sL0hUTUxBdHRyaWJ1dGVOYW1lcy5pbjoKLSAgICAgICAgKiBodG1sL0hUTUxTY3JpcHRF
bGVtZW50LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkhUTUxTY3JpcHRFbGVtZW50Ojphc3luYyk6
Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0RWxlbWVudDo6c2V0QXN5bmMpOgotICAgICAg
ICAoV2ViQ29yZTo6SFRNTFNjcmlwdEVsZW1lbnQ6OmRlZmVyKToKLSAgICAgICAgKFdlYkNvcmU6
OkhUTUxTY3JpcHRFbGVtZW50Ojphc3luY0F0dHJpYnV0ZVZhbHVlKToKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUxTY3JpcHRFbGVtZW50OjpkZWZlckF0dHJpYnV0ZVZhbHVlKToKLSAgICAgICAgKiBo
dG1sL0hUTUxTY3JpcHRFbGVtZW50Lmg6Ci0gICAgICAgICogaHRtbC9IVE1MU2NyaXB0RWxlbWVu
dC5pZGw6Ci0gICAgICAgICogc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwOgotICAgICAgICAoV2Vi
Q29yZTo6U1ZHU2NyaXB0RWxlbWVudDo6YXN5bmNBdHRyaWJ1dGVWYWx1ZSk6Ci0gICAgICAgIChX
ZWJDb3JlOjpTVkdTY3JpcHRFbGVtZW50OjpkZWZlckF0dHJpYnV0ZVZhbHVlKToKLSAgICAgICAg
KiBzdmcvU1ZHU2NyaXB0RWxlbWVudC5oOgotCi0yMDEwLTA2LTIwICBOaWtpdGEgVmFzaWx5ZXYg
IDxtZUBlbHYxcy5ydT4KKyAgICAgICAgRXhwb3NlZCB0aGUgaW1hZ2UgcmVzaXppbmcgQVBJIHRv
IEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBsZXRlIGF0IHRoaXMgc3RhZ2UuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1NAogCi0g
ICAgICAgIFJldmlld2VkIGJ5IEpvc2VwaCBQZWNvcmFyby4KLQotICAgICAgICBXZWIgSW5zcGVj
dG9yOiBBdXRvLWNvbXBsZXRpb24gZm9yIENTUyBwcm9wZXJ0eSBuYW1lcyBpbiBTdHlsZXMgcGFu
ZQotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTczNzQK
LQotICAgICAgICBBZGRlZCBhdXRvY29tcGxldGlvbiBmb3IgQ1NTIHByb3BlcnRpZXMuIEEgc3Vn
Z2VzdGlvbiBmb3IgYSBwcm9wZXJ0eQotICAgICAgICBzaG93cyB3aGVuIHlvdSB0eXBlLiBZb3Ug
Y2FuIGFsc28gY3ljbGUgdGhyb3VnaCBrbm93biBwcm9wZXJ0eSBuYW1lcwotICAgICAgICB1c2lu
ZyB0aGUgVXAgYW5kIERvd24gYXJyb3cga2V5cy4KLQotICAgICAgICAqIFdlYkNvcmUuZ3lwaToK
LSAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0NTU0NvbXBsZXRpb25zLmpzOiBBZGRlZC4K
LSAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NDb21wbGV0aW9ucyk6Ci0gICAgICAgIChXZWJJbnNw
ZWN0b3IuQ1NTQ29tcGxldGlvbnMuc3RhcnRzV2l0aCk6Ci0gICAgICAgIChXZWJJbnNwZWN0b3Iu
Q1NTQ29tcGxldGlvbnMuZmlyc3RTdGFydHNXaXRoKToKLSAgICAgICAgKFdlYkluc3BlY3Rvci5D
U1NDb21wbGV0aW9ucy5fZmlyc3RJbmRleE9mUHJlZml4KToKLSAgICAgICAgKFdlYkluc3BlY3Rv
ci5DU1NDb21wbGV0aW9ucy5uZXh0KToKLSAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NDb21wbGV0
aW9ucy5wcmV2aW91cyk6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTQ29tcGxldGlvbnMuX2Ns
b3Nlc3QpOgotICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUu
anM6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3Rv
dHlwZSk6Ci0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJLaXQucXJjOgotICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWw6Ci0gICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC91dGlsaXRpZXMuanM6Ci0gICAgICAgIChUZXh0LnByb3RvdHlwZS5zZWxl
Y3QpOgotICAgICAgICAoKToKLQotMjAxMC0wNi0xNCAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXpr
b3ZAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgotCi0g
ICAgICAgIEludHJvZHVjZSBGb3JtU3VibWlzc2lvbiwgdGhlIHN0cnVjdHVyZSByZXByZXNlbnRp
bmcgYSBmb3JtIHN1Ym1pc3Npb24uCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD00MDA4NAotCi0gICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5
LCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgotCi0gICAgICAgICogR05VbWFrZWZpbGUuYW06
IEFkZGVkIEZvcm1TdWJtaXNzaW9uLmgvY3BwLgorICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBB
ZGRlZCBmaWxlcy4KKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5jcHA6IERpdHRvLgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFt
OiBEaXR0by4KICAgICAgICAgKiBXZWJDb3JlLmd5cGk6IERpdHRvLgorICAgICAgICAqIFdlYkNv
cmUucHJpOiBEaXR0by4KICAgICAgICAgKiBXZWJDb3JlLnBybzogRGl0dG8uCiAgICAgICAgICog
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6IERpdHRvLgogICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogRGl0dG8uCi0gICAgICAgICogaHRtbC9IVE1MRm9y
bUVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJl
Rm9ybVN1Ym1pc3Npb24pOiBSZW5hbWVkIHByZXBhcmVGb3JtRGF0YSB0byBwcmVwYXJlRm9ybVN1
Ym1pc3Npb24sCi0gICAgICAgICAgICBhZGRlZCBjb2RlIGZvciBwb3B1bGF0aW5nIGEgRm9ybVN1
Ym1pc3Npb24gaW5zdGFuY2UsIG1vdmVkIHRoZSBsb29wIG9mIGFjY3VtdWxhdGluZyB0ZXh0IGlu
cHV0Ci0gICAgICAgICAgICB2YWx1ZXMgaW50byB0aGlzIGZ1bmN0aW9ucyAoaXQgYmVsb25ncyBo
ZXJlIGxvZ2ljYWxseSkuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1p
dCk6IE1vZGlmaWVkIHRvIHVzZSBwcmVwYXJlRm9ybVN1Ym1pc3Npb24uCi0gICAgICAgICogaHRt
bC9IVE1MRm9ybUVsZW1lbnQuaDoKLSAgICAgICAgKiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3Bw
OiBBZGRlZC4KLSAgICAgICAgKiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uaDogQWRkZWQuCi0gICAg
ICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjpzdWJtaXRGb3JtKTogTW9kaWZpZWQgdG8gdXNlIEZvcm1TdWJtaXNzaW9uLiBTdG9wcGVk
IHBsdW1iaW5nIGZ1cnRoZXIgdG8ga2VlcAotICAgICAgICAgICAgdGhlIHBhdGNoIHNpemUgZG93
bi4KLSAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDogTW9kaWZpZWQgc3VibWl0Rm9ybSBz
aWduYXR1cmUuCi0KLTIwMTAtMDYtMjAgIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0
Lm9yZz4KLQotICAgICAgICBVbnJldmlld2VkIHJvbGxvdXQgcjYxNTA2LCBiZWNhdXNlIGl0IG1h
ZGUgMSB0ZXN0IGNyYXNoLgotCi0gICAgICAgIENhdXNlcyBjcmFzaC4gV2lsbCBhcHByb2FjaCB0
aGUgc29sdXRpb24gaW4gYSBkaWZmZXJlbnQgd2F5LgotCi0yMDEwLTA2LTIwICBKb3NlcGggUGVj
b3Jhcm8gIDxqb2VwZWNrQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgVGltb3Ro
eSBIYXRjaGVyLgotCi0gICAgICAgIFdlYiBJbnNwZWN0b3I6IFNob3VsZCBBdXRvY29tcGxldGUg
U3R5bGUgUHJvcGVydGllcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Mzg0NDgKLQotICAgICAgICBUaGlzIEF1dG9jb21wbGV0ZXMgc3R5bGUgcHJvcGVy
dGllcyB3aGVuIGluIHRoZSBjb25zb2xlLgotCi0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVu
ZC9JbmplY3RlZFNjcmlwdC5qczoKLSAgICAgICAgKGluamVjdGVkU2NyaXB0Q29uc3RydWN0b3Ip
OgotCi0yMDEwLTA2LTIwICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KLQotICAg
ICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAgICBbUXRdIE5QUF9TZXRX
aW5kb3cgc2VlbXMgdG8gbm90IGJlIGNhbGxlZCB3aGVuIFRlc3ROZXRzY2FwZVBsdWdpbiBpcyBt
b3ZlZAotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NjcwMgotCi0gICAgICAgIHNldE5QV2luZG93SWZOZWVkZWQoKSBpcyBjYWxsZWQgb24gcGFpbnQo
KSBpbiBQbHVnaW5WaWV3UXQsIHdoaWNoIGRvZXNuJ3QKLSAgICAgICAgd29yayBmb3IgRFJULiBT
byBjYWxsIGl0IGlmIHdlIGFyZSBpbiBEUlQgbW9kZSBhbmQgdGhlIHdpbmRvdyBnZW9tZXRyeQot
ICAgICAgICBoYXMgY2hhbmdlZC4KLQotICAgICAgICBVbnNraXBzIHBsdWdpbnMvcmVlbnRyYW50
LXVwZGF0ZS13aWRnZXQtcG9zaXRpb25zLmh0bWwKLQotICAgICAgICAqIHBsdWdpbnMvcXQvUGx1
Z2luVmlld1F0LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OnVwZGF0ZVBsdWdp
bldpZGdldCk6Ci0KLTIwMTAtMDYtMTkgIFRvbnkgR2VudGlsY29yZSAgPHRvbnlnQGNocm9taXVt
Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAgIFBlcnNp
c3QgVjgncyBTY3JpcHREYXRhIHRvIHRoZSBtZW1vcnkgY2FjaGUuCi0gICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODY2MQotCi0gICAgICAgIFRoaXMgc3Rv
cmVzIFY4J3MgU2NyaXB0RGF0YSBpbiB0aGUgbWVtb3J5IGNhY2hlIGFuZCBhbHNvIGNhdXNlcyB0
aGUKLSAgICAgICAgbmV0d29yayBwbGF0Zm9ybSBsYXllciB0byBiZSBub3RpZmllZCBvZiB0aGUg
YXZhaWxhYmxlIGNhY2hlYWJsZQotICAgICAgICBtZXRhZGF0YS4KLQotICAgICAgICBDaHJvbWl1
bSdzIG1vcmVqcyBiZW5jaG1hcmsgc2hvd2VkIGEgfjclIGltcHJvdmVtZW50IHdoZW4gdGhpcyB3
YXMKLSAgICAgICAgb3JpZ2luYWxseSBzdWJtaXR0ZWQgKGJlZm9yZSBpdCBoYWQgdG8gYmUgcm9s
bGVkIGJhY2spLgotCi0gICAgICAgIFRlc3Q6IGZhc3QvanMvcGFyc2VyLWhpZ2gtYnl0ZS1jaGFy
YWN0ZXIuaHRtbAotCi0gICAgICAgICogYmluZGluZ3MvdjgvU2NyaXB0U291cmNlQ29kZS5oOgot
ICAgICAgICAoV2ViQ29yZTo6U2NyaXB0U291cmNlQ29kZTo6U2NyaXB0U291cmNlQ29kZSk6Ci0g
ICAgICAgIChXZWJDb3JlOjpTY3JpcHRTb3VyY2VDb2RlOjpjYWNoZWRTY3JpcHQpOgotICAgICAg
ICAqIGJpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwOgotICAgICAgICAoV2ViQ29yZTo6VjhQcm94eTo6
Y29tcGlsZVNjcmlwdCk6Ci0gICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpwcmVjb21waWxlU2Ny
aXB0KToKLSAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OmV2YWx1YXRlKToKLSAgICAgICAgKiBi
aW5kaW5ncy92OC9WOFByb3h5Lmg6Ci0KLTIwMTAtMDYtMTkgIEt3YW5nIFl1bCBTZW8gIDxza3l1
bEBjb21wYW55MTAwLm5ldD4KLQotICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KLQot
ICAgICAgICBbQlJFV01QXSBQb3J0IFNvY2tldFN0cmVhbQotICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzk2NzEKLQotICAgICAgICBQb3J0IFNvY2tldFN0
cmVhbSB3aXRoIEJSRVcgTVAncyBJU29ja2V0IGludGVyZmFjZS4KLQotICAgICAgICAqIHBsYXRm
b3JtL25ldHdvcmsvYnJldy9Tb2NrZXRTdHJlYW1FcnJvci5oOiBBZGRlZC4KLSAgICAgICAgKFdl
YkNvcmU6OlNvY2tldFN0cmVhbUVycm9yOjpTb2NrZXRTdHJlYW1FcnJvcik6Ci0gICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9icmV3L1NvY2tldFN0cmVhbUhhbmRsZS5oOiBBZGRlZC4KLSAgICAg
ICAgKFdlYkNvcmU6OlNvY2tldFN0cmVhbUhhbmRsZTo6Y3JlYXRlKToKLSAgICAgICAgKiBwbGF0
Zm9ybS9uZXR3b3JrL2JyZXcvU29ja2V0U3RyZWFtSGFuZGxlQnJldy5jcHA6IEFkZGVkLgotICAg
ICAgICAoV2ViQ29yZTo6c29ja2V0U3RyZWFtQ29ubmVjdENhbGxiYWNrKToKLSAgICAgICAgKFdl
YkNvcmU6OmdldEhvc3RCeU5hbWVDYWxsYmFjayk6Ci0gICAgICAgIChXZWJDb3JlOjpzb2NrZXRS
ZWFkYWJsZUNhbGxiYWNrKToKLSAgICAgICAgKFdlYkNvcmU6Om5ldHdvcmtNYW5hZ2VyKToKLSAg
ICAgICAgKFdlYkNvcmU6OlNvY2tldFN0cmVhbUhhbmRsZVByaXZhdGU6OlNvY2tldFN0cmVhbUhh
bmRsZVByaXZhdGUpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlUHJpdmF0
ZTo6flNvY2tldFN0cmVhbUhhbmRsZVByaXZhdGUpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0
U3RyZWFtSGFuZGxlUHJpdmF0ZTo6c29ja2V0Q29ubmVjdGVkKToKLSAgICAgICAgKFdlYkNvcmU6
OlNvY2tldFN0cmVhbUhhbmRsZVByaXZhdGU6OnNvY2tldFJlYWR5UmVhZCk6Ci0gICAgICAgIChX
ZWJDb3JlOjpTb2NrZXRTdHJlYW1IYW5kbGVQcml2YXRlOjpjb25uZWN0KToKLSAgICAgICAgKFdl
YkNvcmU6OlNvY2tldFN0cmVhbUhhbmRsZVByaXZhdGU6OnNlbmQpOgotICAgICAgICAoV2ViQ29y
ZTo6U29ja2V0U3RyZWFtSGFuZGxlUHJpdmF0ZTo6Y2xvc2UpOgotICAgICAgICAoV2ViQ29yZTo6
U29ja2V0U3RyZWFtSGFuZGxlUHJpdmF0ZTo6c29ja2V0Q2xvc2VkKToKLSAgICAgICAgKFdlYkNv
cmU6OlNvY2tldFN0cmVhbUhhbmRsZVByaXZhdGU6OnNvY2tldEVycm9yKToKLSAgICAgICAgKFdl
YkNvcmU6OlNvY2tldFN0cmVhbUhhbmRsZTo6U29ja2V0U3RyZWFtSGFuZGxlKToKLSAgICAgICAg
KFdlYkNvcmU6OlNvY2tldFN0cmVhbUhhbmRsZTo6flNvY2tldFN0cmVhbUhhbmRsZSk6Ci0gICAg
ICAgIChXZWJDb3JlOjpTb2NrZXRTdHJlYW1IYW5kbGU6OnBsYXRmb3JtU2VuZCk6Ci0gICAgICAg
IChXZWJDb3JlOjpTb2NrZXRTdHJlYW1IYW5kbGU6OnBsYXRmb3JtQ2xvc2UpOgotICAgICAgICAo
V2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlOjpyZWNlaXZlZENy
ZWRlbnRpYWwpOgotICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlOjpyZWNlaXZl
ZFJlcXVlc3RUb0NvbnRpbnVlV2l0aG91dENyZWRlbnRpYWwpOgotICAgICAgICAoV2ViQ29yZTo6
U29ja2V0U3RyZWFtSGFuZGxlOjpyZWNlaXZlZENhbmNlbGxhdGlvbik6Ci0gICAgICAgICogcGxh
dGZvcm0vbmV0d29yay9icmV3L1NvY2tldFN0cmVhbUhhbmRsZVByaXZhdGUuaDogQWRkZWQuCi0K
LTIwMTAtMDYtMTkgIE5pa2l0YSBWYXNpbHlldiAgPG1lQGVsdjFzLnJ1PgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCi0KLSAgICAgICAgV2ViIEluc3BlY3RvcjogUHJldmVu
dCBmcm9tIGNvcHlpbmcgImZpbGVuYW1lLmNzcyIgaW4gU3R5bGVzIHBhbmUKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNDIwCi0KLSAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1NlY3Rpb24uanM6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuU2Vj
dGlvbi5wcm90b3R5cGUuc2V0IHN1YnRpdGxlKToKLSAgICAgICAgKFdlYkluc3BlY3Rvci5TZWN0
aW9uLnByb3RvdHlwZS5nZXQgc3VidGl0bGVBc1RleHQpOgotICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUuanM6Ci0gICAgICAgIChXZWJJbnNwZWN0b3IuU3R5
bGVQcm9wZXJ0aWVzU2VjdGlvbik6Ci0gICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNw
ZWN0b3IuY3NzOgotICAgICAgICAoLnN0eWxlcy1zZWN0aW9uIC5zdWJ0aXRsZTo6YmVmb3JlLCAu
c3R5bGVzLXNlY3Rpb24gLnN1YnRpdGxlIGE6OmJlZm9yZSk6Ci0KLTIwMTAtMDYtMTkgIEFsZXgg
TWlsb3dza2kgIDxhbGV4QG1pbG93c2tpLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KLQotICAgICAgICBBIGZpeCBmb3IgYSBjaGFuZ2UgaW4gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5OTQxIAotICAgICAgICB0aGF0IGNhdXNlZCBhIGNv
bXBpbGUgZXJyb3IgaW4gTWF0aE1MLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDA4MjcKLQotICAgICAgICAqIG1hdGhtbC9NYXRoTUxFbGVtZW50LmNw
cDoKLSAgICAgICAgKFdlYkNvcmU6Ok1hdGhNTEVsZW1lbnQ6Ok1hdGhNTEVsZW1lbnQpOgotCi0y
MDEwLTA2LTE5ICBLYXJ0aWtheWEgR3VwdGEgIDxrYWd1cHRhQHJpbS5jb20+Ci0KLSAgICAgICAg
UmV2aWV3ZWQgYnkgTmlrb2xhcyBaaW1tZXJtYW5uLgotCi0gICAgICAgIENQUCBiaW5kaW5ncyBt
aXNzaW5nIHNvbWUgQVBJcwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDA1NzAKLQotICAgICAgICBBZGQgbWlzc2luZyBDKysgRE9NIEFQSSBiaW5kaW5n
cy4gU3BlY2lmaWNhbGx5OgotICAgICAgICAtIE5vZGVGaWx0ZXIgY2FsbGJhY2sgc3VwcG9ydAot
ICAgICAgICAtIE1pc3NpbmcgY3VzdG9tIG1ldGhvZCBpbXBsZW1lbnRhdGlvbnMgaW4gSFRNTENv
bGxlY3Rpb24gYW5kIEhUTUxPcHRpb25zQ29sbGVjdGlvbgotICAgICAgICAtIE1pc3NpbmcgRXZl
bnRUYXJnZXQgc3RhdGljIHR5cGUtZGV0ZXJtaW5hdGlvbiBtZXRob2RzCi0gICAgICAgIC0gRml4
IENQUCBiaW5kaW5nIGdlbmVyYXRvciB0byBub3QgZ2VuZXJhdGUgZC1wdHJzIGZvciBjbGFzc2Vz
IHRoYXQgZXh0ZW5kIEV2ZW50VGFyZ2V0IGFuZCBqdXN0IHVzZSB0aGUgcGFyZW50J3MgZC1wdHIg
aW5zdGVhZAotICAgICAgICAtIFN3aXRjaCBiaW5kaW5nIGdlbmVyYXRvciB0byB1c2UgRE9NV2lu
ZG93IGluc3RlYWQgb2YgQWJzdHJhY3RWaWV3IHNvIHRoYXQgbmVjZXNzYXJ5IFczQy1kZWZpbmVk
IG1ldGhvZHMgKGUuZy4gZ2V0Q29tcHV0ZWRTdHlsZSkgYXJlIGFjY2Vzc2libGUuCi0KLSAgICAg
ICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NRE9NV2luZG93Q3VzdG9tLmNwcDogQWRkZWQuCi0gICAg
ICAgIChXZWJET01ET01XaW5kb3c6OmFkZEV2ZW50TGlzdGVuZXIpOgotICAgICAgICAoV2ViRE9N
RE9NV2luZG93OjpyZW1vdmVFdmVudExpc3RlbmVyKToKLSAgICAgICAgKiBiaW5kaW5ncy9jcHAv
V2ViRE9NRXZlbnRUYXJnZXQuY3BwOgotICAgICAgICAodG9XZWJLaXQpOgotICAgICAgICAqIGJp
bmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oOgotICAgICAgICAqIGJpbmRpbmdzL2NwcC9X
ZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHA6IEFkZGVkLgotICAgICAgICAoV2ViRE9NSFRN
TENvbGxlY3Rpb246Oml0ZW0pOgotICAgICAgICAoV2ViRE9NSFRNTENvbGxlY3Rpb246Om5hbWVk
SXRlbSk6Ci0gICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlv
bkN1c3RvbS5jcHA6IEFkZGVkLgotICAgICAgICAoV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9u
OjpsZW5ndGgpOgotICAgICAgICAoV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uOjpzZXRMZW5n
dGgpOgotICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcDog
QWRkZWQuCi0gICAgICAgIChXZWJET01Ob2RlRmlsdGVyOjphY2NlcHROb2RlKToKLSAgICAgICAg
KHRvV2ViS2l0KToKLSAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbi5jcHA6IEFkZGVkLgotICAgICAgICAoV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlv
bjo6V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbik6Ci0gICAgICAgIChXZWJOYXRpdmVOb2Rl
RmlsdGVyQ29uZGl0aW9uOjp+V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbik6Ci0gICAgICAg
IChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjphY2NlcHROb2RlKToKLSAgICAgICAgKiBi
aW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oOiBBZGRlZC4KLSAgICAg
ICAgKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmNyZWF0ZSk6Ci0gICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtOgotICAgICAgICAqIGRvbS9Ob2RlRmls
dGVyLmlkbDoKLSAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6Ci0KLTIwMTAtMDYtMTkgIFZh
bmdlbGlzIEtva2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmll
d2VkIGJ5IERpbWl0cmkgR2xhemtvdi4KLQotICAgICAgICBbY2hyb21pdW1dIEFkZGluZyBhIGNv
bmRpdGlvbmFsIGd5cCBkZXBlbmRlbmN5IGZvciB0aGUgV2ViQ29yZSB0YXJnZXQgdG8gCi0gICAg
ICAgIHRoZSBnbGVzMl9jX2xpYiB3aGljaCBpcyByZXF1aXJlZCBieSB0aGUgZ3B1IGNvbXBvc2l0
b3IuIFRoZSBkZXBlbmRlbmN5IHdpbGwKLSAgICAgICAgb25seSBraWNrIGluIGlmIHRoZSBhY2Nl
bGVyYXRlZF9jb21wb3NpdGluZyBwYXRoIGlzIGVuYWJsZWQuCi0gICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDgwMQotCi0gICAgICAgICogV2ViQ29yZS5n
eXAvV2ViQ29yZS5neXA6Ci0KLTIwMTAtMDYtMTkgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFyb25A
bm9raWEuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFu
c2VuLgotCi0gICAgICAgIFtRdF0gUGxhdGZvcm0gcGx1Z2luJ3MgbXVsdGktc2VsZWN0IGRvZXMg
bm90IHRha2UgT3B0R3JvdXAgaW50byBhY2NvdW50Ci0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDcxOAotCi0gICAgICAgIEluIG11bHRpLXNlbGVjdCBl
bGVtZW50cywgb3B0Z3JvdXAgZWxlbWVudHMgYXJlIGNvdW50ZWQgaW4gdGhlIGluZGV4IGNhbGN1
bGF0aW9uLAotICAgICAgICBidXQgaW4gc2luZ2xlLXNlbGVjdCB0aGV5IGFyZSBub3QuIEtlZXAg
dGhlIHNhbWUgbG9naWMgZXZlbiB3aGVuIE5PX0xJU1RCT1hfUkVOREVSSU5HCi0gICAgICAgIGlz
IGVuYWJsZWQuCi0gICAgICAgIEFkZGVkIHRlc3RzIHRvIHRoZSBleGlzdGluZyBtYW51YWwgdGVz
dCwgYXMgdGVzdGluZyB0aGlzIHJlcXVpcmVzIGEgc3BlY2lhbCBidWlsZCwgaW4gd2hpY2gKLSAg
ICAgICAgTk9fTElTVEJPWF9SRU5ERVJJTkcgaXMgZW5hYmxlZC4KLQotICAgICAgICAqIGh0bWwv
SFRNTFNlbGVjdEVsZW1lbnQuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SFRNTFNlbGVjdEVsZW1l
bnQ6Omxpc3RCb3hTZWxlY3RJdGVtKToKLSAgICAgICAgKiBtYW51YWwtdGVzdHMvbm8tbGlzdGJv
eC1yZW5kZXJpbmcuaHRtbDoKLSAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWVudUxpc3Q6Omxpc3RCb3hTZWxlY3RJdGVtKToK
LQotMjAxMC0wNi0xOSAgVGhvbWFzIFZhbiBMZW50ZW4gIDx0aG9tYXN2bEBjaHJvbWl1bS5vcmc+
Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgTGV2aW4uCi0KLSAgICAgICAgV2FybmluZ3Mg
ZnJvbSAtV2V4dHJhIGluIGEgQ2hyb21pdW0gTWFjIGJ1aWxkCi0gICAgICAgIDEuIGNoZWNrcyBv
ZiB1bnNpZ25lZCA+PSAwCi0gICAgICAgIDIuIGVudW1lcmFsIGFuZCBub24tZW51bWVyYWwgdHlw
ZSBpbiBjb25kaXRpb25hbCBleHByZXNzaW9uCi0gICAgICAgIDMuIGNvcHkgY3RvcnMgdGhhdCBk
b24ndCBjYWxsIHRoZSBzdXBlciBjb3B5IGN0b3Igb3IgY3RvcgotICAgICAgICBObyBmdW5jdGlv
bmFsaXR5IGNoYW5nZSBzbyBubyBuZXcgdGVzdHMuCi0KLSAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzkxCi0KLSAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9DaHJvbWl1bURhdGFPYmplY3QuY3BwOgotICAgICAgICAoV2ViQ29yZTo6Q2hyb21pdW1E
YXRhT2JqZWN0OjpDaHJvbWl1bURhdGFPYmplY3QpOgotICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL1RoZW1lQ2hyb21pdW1NYWMubW06Ci0gICAgICAgIChXZWJDb3JlOjp1cGRhdGVTdGF0ZXMp
OgotICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1tOgotICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6dXBkYXRlQWN0aXZlU3RhdGUpOgot
Ci0yMDEwLTA2LTE5ICBCZW4gTXVyZG9jaCAgPGJlbm1AZ29vZ2xlLmNvbT4KLQotICAgICAgICBS
ZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgotCi0gICAgICAgIEZpeCBidWlsZCBicmVhayB3aXRo
IGluc3BlY3RvciBkaXNhYmxlZC4KLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQwNzkwCi0KLSAgICAgICAgUmVwbGFjZSBhICNpbmNsdWRlIHdpdGggYSBm
b3J3YXJkIGRlY2xhcmF0aW9uLgotCi0gICAgICAgIEZpeGluZyBhIGJ1aWxkIGJyZWFrIHNvIG5v
IG5ldyB0ZXN0cyByZXF1aXJlZC4KLQotICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDb250
cm9sbGVyLmg6IEZvcndhcmQgZGVjbGFyZSBJbnNwZWN0b3JWYWx1ZQotICAgICAgICAgICByYXRo
ZXIgdGhhbiAjaW5jbHVkaW5nIGl0cyBoZWFkZXIgd2hpY2ggaGFzIGl0cyBjb250ZW50IGd1YXJk
ZWQKLSAgICAgICAgICAgb3V0LgotCi0yMDEwLTA2LTE5ICBaaGUgU3UgIDxzdXpoZUBjaHJvbWl1
bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgotCi0gICAgICAgIFtj
aHJvbWl1bV1SZWZhY3RvciBpbnB1dCBtZXRob2QgcmVsYXRlZCBBUElzLgotICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA2MDgKLQotICAgICAgICBObyBu
ZXcgdGVzdHMgYXJlIG5lZWRlZCwgYmVjYXVzZSB0aGVyZSBpcyBubyBuZXcgZnVuY3Rpb25hbGl0
eS4KLQotICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKLSAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6c2V0Rm9jdXNlZE5vZGUpOgotCi0yMDEwLTA2LTE5ICBHZW9y
Z2UgV3JpZ2h0ICA8Z3dyaWdodEByaW0uY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEdlb3Jn
ZSBTdGFpa29zLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MDcyMAotCi0gICAgICAgIE1ha2Ugc2V0V2FwSW5wdXRGb3JtYXQoKSBwdWJsaWMgYWdh
aW4gYXMgQ1NTU3R5bGVTZWxlY3Rvci5jcHAgY2FsbHMgdGhpcyB3aGVuIFdDU1MgaXMgZW5hYmxl
ZC4KLQotICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgotICAgICAgICAoV2ViQ29y
ZTo6SFRNTElucHV0RWxlbWVudDo6ZGF0YSk6Ci0KLTIwMTAtMDYtMDIgIFJvYmVydCBIb2dhbiAg
PHJvYmVydEB3ZWJraXQub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0K
LSAgICAgICAgW1F0XSBTdXBwb3J0IGV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdvcmxkKCkKLQot
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAwNzkKLQot
ICAgICAgICBnZXRPd25Qcm9wZXJ0eU5hbWVzKCkgY3Jhc2hlcyBpZiBQcm9wZXJ0eU5hbWVBcnJh
eSBpcyBzaXplIDAuIFRoaXMgY2hhbmdlIGFsbG93cwotICAgICAgICBodHRwL3Rlc3RzL3dvcmxk
LXJldXNlLmh0bWwgYW5kIGRpZENsZWFyV2luZG93T2JqZWN0Lmh0bWwgdG8gZmFpbCBpbnN0ZWFk
IG9mIGNyYXNoLgotCi0gICAgICAgICogV2ViQ29yZS5wcm86IEFkZCBxd2Vic2NyaXB0d29ybGQu
KgotICAgICAgICAqIGJyaWRnZS9xdC9xdF9ydW50aW1lLmNwcDoKLSAgICAgICAgKEpTQzo6Qmlu
ZGluZ3M6OmNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQpOgotCi0yMDEwLTA2LTE5ICBUb255IEdlbnRp
bGNvcmUgIDx0b255Z0BjaHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBT
ZWlkZWwuCi0KLSAgICAgICAgU29tZSB2ZXJ5IG1pbm9yIGNsZWFudXBzIGZvciBIVE1MNSBQYXJz
ZXIKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNjM4
Ci0KLSAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ugbm8gbmV3IGZ1bmN0aW9uYWxpdHkuCi0K
LSAgICAgICAgKiBodG1sL0hUTUw1RG9jdW1lbnRQYXJzZXIuY3BwOgotICAgICAgICAoV2ViQ29y
ZTo6KTogTWFrZSBjdG9yIGV4cGxpY2l0LgotICAgICAgICAqIGh0bWwvSFRNTDVEb2N1bWVudFBh
cnNlci5oOgotICAgICAgICAoV2ViQ29yZTo6SFRNTDVEb2N1bWVudFBhcnNlcjo6SW5zZXJ0aW9u
UG9pbnRSZWNvcmQ6Okluc2VydGlvblBvaW50UmVjb3JkKTogTWFrZSBjdG9yIGV4cGxpY2l0Lgot
ICAgICAgICAqIGh0bWwvSFRNTDVMZXhlci5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MTmFt
ZXM6OmlzRW5kVGFnQnVmZmVyaW5nU3RhdGUpOiBVc2Ugc3dpdGNoIHRvIGdlbmVyYXRlIGFuIGVm
ZmljaWVudCB0YWJsZSB3aXRoIHNpbmdsZSBicmFuY2guCi0gICAgICAgICogaHRtbC9IVE1MNVRv
a2VuLmg6Ci0gICAgICAgIChXZWJDb3JlOjpIVE1MNVRva2VuOjpmb3JjZVF1aXJrcyk6IEFkZCBj
b25zdC4KLSAgICAgICAgKiBodG1sL0hUTUw1VHJlZUJ1aWxkZXIuaDoKLSAgICAgICAgKFdlYkNv
cmU6OkhUTUw1VHJlZUJ1aWxkZXI6OmlzUGF1c2VkKTogQWRkIGNvbnN0LgotCi0yMDEwLTA2LTE4
ICBBYXJvbiBCb29kbWFuICA8YWFAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJlbW92ZSBXZWJL
aXQ6OldlYkRvY3VtZW50Ojppc1hIVE1MRG9jdW1lbnQuCi0gICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDgxNQotCi0gICAgICAgICogZG9tL0RvY3VtZW50
Lmg6IHJlbW92ZSBpc1hIVE1MKCkgZ2V0dGVyLgotCi0yMDEwLTA2LTE5ICBBYXJvbiBCb29kbWFu
ICA8YWFAY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI2
MTQ2Ni4KLSAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjE0NjYKLSAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwODE2Ci0KLSAg
ICAgICAgTGFuZGVkIHdyb25nIGNoYW5nZQotCi0gICAgICAgICogYmluZGluZ3MvdjgvVjhET01X
aW5kb3dTaGVsbC5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvd1NoZWxsOjppbml0
Q29udGV4dElmTmVlZGVkKToKLSAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxs
Lmg6Ci0KLTIwMTAtMDYtMTggIEFhcm9uIEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+Ci0KLSAg
ICAgICAgV2ViS2l0IEFQSTogVW5kbyBzdGF0aWMgaG9va3MgaW50byBWOCB3aGVuIFdlYktpdCBp
cyBzaHV0IGRvd24uCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MDgxNgotCi0gICAgICAgICogYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVsbC5jcHA6
Ci0gICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvd1NoZWxsOjppbml0Q29udGV4dElmTmVlZGVk
KToKLSAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93U2hlbGw6OmluaXRpYWxpemVWOElmTmVl
ZGVkKToKLSAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93U2hlbGw6OnVuaW5pdGlhbGl6ZVY4
SWZOZWVkZWQpOgotICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4RE9NV2luZG93U2hlbGwuaDoKLQot
MjAxMC0wNi0xOCAgSmVzc2llIEJlcmxpbiAgPGpiZXJsaW5Ad2Via2l0Lm9yZz4KLQotICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KLQotICAgICAgICBCdWcgMTk1MDkgLSBEYXRhYmFz
ZSBUYWJsZXMgaW4gdGhlIEluc3BlY3RvciBzaG91bGQgYmUgc29ydGFibGUKLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTA5Ci0KLSAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1N0b3JhZ2VQYW5lbC5qczoKLSAgICAgICAgKFdlYkluc3BlY3Rv
ci5TdG9yYWdlUGFuZWwucHJvdG90eXBlLmRhdGFHcmlkRm9yUmVzdWx0KToKLSAgICAgICAgTWFr
ZSBlYWNoIGNvbHVtbiBpbiB0aGUgRGF0YUdyaWQgc29ydGFibGUuCi0gICAgICAgIChXZWJJbnNw
ZWN0b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlwZS5fc29ydERhdGFHcmlkLmNvbXBhcmF0b3IpOgot
ICAgICAgICBNYWtlIHN1cmUgdG8gc29ydCBudW1lcmljIGNvbHVtbnMgYnkgdGhlaXIgbnVtZXJp
YyB2YWx1ZXMsIGluc3RlYWQgb2YgbGV4aWNvZ3JhcGhpY2FsbHkuCi0gICAgICAgIChXZWJJbnNw
ZWN0b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlwZS5fc29ydERhdGFHcmlkKToKLSAgICAgICAgU29y
dCB0aGUgZW50cmllcyBpbiB0aGUgRGF0YUdyaWQgYmFzZWQgb24gdGhlIHNlbGVjdGVkIGNvbHVt
bi4KLQotMjAxMC0wNi0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgot
Ci0gICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgotCi0gICAgICAgIE1vcmUgY2xhbmcr
KyB3YXJuaW5nIGZpeGVzLgotCi0gICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5k
Q2xpZW50TG9jYWwuY3BwOgotICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRnJvbnRlbmRDbGll
bnRMb2NhbDo6cmVzdG9yZUF0dGFjaGVkV2luZG93SGVpZ2h0KToKLSAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9tYWMvRm9udFBsYXRmb3JtRGF0YS5oOgotICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL21hYy9XZWJMYXllci5tbToKLSAgICAgICAgKC1bQ0FMYXllciBfZGVzY3JpcHRpb25X
aXRoUHJlZml4Ol0pOgotCi0yMDEwLTA2LTE4ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBj
aHJvbWl1bS5vcmc+Ci0KLSAgICAgICAgVW5yZXZpZXdlZCwgYnVpbGQgZml4LgotCi0gICAgICAg
ICogV2ViQ29yZS5neXAvV2ViQ29yZS5neXA6IE1vZGlmaWVkIGluY2x1c2lvbiBydWxlIGluIHRv
IGFjdHVhbGx5IGFkZCBXZWJTeXN0ZW1JbnRlcmZhY2UubW0uCi0KLTIwMTAtMDYtMTggIERpbWl0
cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KLQotICAgICAgICBVbnJldmlld2Vk
LCBidWlsZCBmaXguCi0KLSAgICAgICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDogUmVuYW1l
ZCBXZWJTeXN0ZW1JbnRlcmZhY2UubSB0byBXZWJTeXN0ZW1JbnRlcmZhY2UubW0uCi0KLTIwMTAt
MDYtMTggIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KLQotICAgICAgICBS
ZXZpZXdlZCBieSBTYW0gV2VpbmlnLgotCi0gICAgICAgIE1ha2UgV2ViQ29yZVN5c3RlbUludGVy
ZmFjZS5oIGEgQysrIG9ubHkgaGVhZGVyCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD00MDg2NwotCi0gICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVT
eXN0ZW1JbnRlcmZhY2UuaDoKLQotMjAxMC0wNi0xOCAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9A
Y2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAg
ICAgQ29udmVydCBjb2x1bW4gc3BhbiBmcm9tIGFuIHVuc2lnbmVkIHNob3J0IHR5cGUgdG8gYW4g
dW5zaWduZWQgaW50Ci0gICAgICAgIHR5cGUuIEZpeGVzIGEgZGl2aWRlLWJ5LXplcm8gY3Jhc2gg
YXJpc2luZyBmcm9tIHVzaW5nIGEgemVybyBjb2xzcGFuCi0gICAgICAgIHZhbHVlIGNvbWluZyBm
cm9tIGEgbmFycm93IGNhc3Qgb2YgYW4gaW50IHRvIGFuIHVuc2lnbmVkIHNob3J0LgotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA4MTIKLQotICAgICAg
ICBUZXN0OiBmYXN0L3RhYmxlL3plcm8tY29sc3Bhbi1jcmFzaC5odG1sCi0KLSAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyVGFibGUuaDogQ2hhbmdlIHNwYW4gZnJvbSB1bnNpZ25lZCBzaG9ydCB0
byB1bnNpZ25lZCBpbnQuCi0gICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5j
cHA6IEZpeCBhIGNvbXBpbGVyIHdhcm5pbmcgd2l0aCBjb21wYXJpbmcKLSAgICAgICAgICB1bnNp
Z25lZCBpbnQgd2l0aCBzaWduZWQgaW50LiBWYWx1ZSBvZiBhbiB1bnNpZ25lZCBpbnQgaGVyZSBj
YW5ub3QgYmUKLSAgICAgICAgICBncmVhdGVyIHRoYW4gbWF4aW11bSBwb3NpdGl2ZSB2YWx1ZSBv
ZiBhIHNpZ25lZCBpbnQuCi0gICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVNlY3Rpb246OmFk
ZENlbGwpOgotCi0yMDEwLTA2LTE4ICBBbmFudGggSmFzdHkgIDxleHQtYW5hbnRoLmphc3R5QG5v
a2lhLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KLQotICAgICAg
ICBbUXRdIFRleHQgc3BhY2luZyBtaXNjYWxjdWxhdGlvbiB3aGVuIHVzaW5nIHdvcmRTcGFjaW5n
LgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA0ODMK
LQotICAgICAgICBSZW1vdmVkIHdvcmRTcGFjaW5nIGNvbXBlbnNhdGlvbiBpbiBGb250UXQgd2hp
dGVzcGFjZSB3aWR0aAotICAgICAgICBjYWxjdWxhdGlvbi4gVGhlIFFGb250TWV0cmljczo6d2lk
dGgoKSBvdmVybG9hZCB0aGF0IHRha2VzCi0gICAgICAgIGEgY2hhcmFjdGVyIGRvZXMgbm90IHRh
a2UgUUZvbnQncyB3b3JkIHNwYWNpbmcgaW50byBhY2NvdW50LgotCi0gICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvcXQvRm9udFF0LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmZsb2F0
V2lkdGhGb3JDb21wbGV4VGV4dCk6Ci0KLTIwMTAtMDYtMTggIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KLQot
ICAgICAgICBHZXQgcmlkIG9mIFBsdWdpbkRhdGFNYWMubW0gYW5kIHVzZSB0aGUgcGx1Zy1pbiBz
dHJhdGVneSBpbnN0ZWFkCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD00MDg2MAotCi0gICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgotICAgICAgICAqIHBhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oOgotICAgICAgICAq
IHBsdWdpbnMvUGx1Z2luRGF0YS5jcHA6Ci0gICAgICAgIChXZWJDb3JlOjpQbHVnaW5EYXRhOjpy
ZWZyZXNoKToKLSAgICAgICAgKFdlYkNvcmU6OlBsdWdpbkRhdGE6OmluaXRQbHVnaW5zKToKLSAg
ICAgICAgKiBwbHVnaW5zL1BsdWdpblN0cmF0ZWd5Lmg6Ci0gICAgICAgICogcGx1Z2lucy9tYWMv
UGx1Z2luRGF0YU1hYy5tbTogUmVtb3ZlZC4KLQotMjAxMC0wNi0xOCAgQW5kZXJzIENhcmxzc29u
ICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3Rl
aW4uCi0KLSAgICAgICAgRml4IHNvbWUgKG5vdCBhbGwpIGNsYW5nKysgd2FybmluZ3MuCi0KLSAg
ICAgICAgKiBkb20vUG9zaXRpb24uaDoKLSAgICAgICAgKFdlYkNvcmU6Omxhc3RPZmZzZXRJbk5v
ZGUpOgotICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgotICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmRlbGV0ZUluc2lnbmlmaWNhbnRUZXh0
KToKLSAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHA6Ci0gICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclJlcXVlc3QpOgotICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9Db21wbGV4VGV4dENvbnRyb2xsZXIuY3BwOgot
ICAgICAgICAoV2ViQ29yZTo6Q29tcGxleFRleHRDb250cm9sbGVyOjpvZmZzZXRGb3JQb3NpdGlv
bik6Ci0gICAgICAgIChXZWJDb3JlOjpDb21wbGV4VGV4dENvbnRyb2xsZXI6OmNvbGxlY3RDb21w
bGV4VGV4dFJ1bnMpOgotICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3Jh
Z2UuY3BwOgotICAgICAgICAoV2ViQ29yZTo6cHJvdGVjdGlvblNwYWNlTWFwS2V5RnJvbVVSTCk6
Ci0gICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDoK
LQotMjAxMC0wNi0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0g
ICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCi0KLSAgICAgICAgQWRkIHN0dWJiZWQg
b3V0IFdlYlBsYXRmb3JtU3RyYXRlZ2llcyBjbGFzcyB0byBXZWJLaXQuCi0gICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDg1MQotCi0gICAgICAgICogV2Vi
Q29yZS5iYXNlLmV4cDoKLSAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuY3Bw
OgotICAgICAgICAqIHBsYXRmb3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5oOgotICAgICAgICAoV2Vi
Q29yZTo6UGxhdGZvcm1TdHJhdGVnaWVzOjp+UGxhdGZvcm1TdHJhdGVnaWVzKToKLQotMjAxMC0w
Ni0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgotCi0gICAgICAgIEZpeCBidWlsZCBlcnJvcnMgd2hlbiBi
dWlsZGluZyB3aXRoIGNsYW5nKysuCi0KLSAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9jZi9MZWdh
Y3lXZWJBcmNoaXZlTWFjLm1tOgotICAgICAgICBNb3ZlIHRoZSBjb25zdCBxdWFsaWZpZXIgdG8g
dGhlIHJpZ2h0IHBsYWNlLgotCi0gICAgICAgICogcGFnZS9FZGl0b3JDbGllbnQuaDoKLSAgICAg
ICAgKiBwbGF0Zm9ybS9QYXN0ZWJvYXJkLmg6Ci0gICAgICAgIFVzZSBAY2xhc3Mgd2hlbiBmb3J3
YXJkIGRlY2xhcmluZyBPYmplY3RpdmUtQyBjbGFzc2VzIGluIE9iamVjdGl2ZS1DLgotCi0yMDEw
LTA2LTE4ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgotCi0gICAgICAgIFJl
dmlld2VkIGJ5IEdlb2ZmIEdhcmVuLgotCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD00MDg1MgotICAgICAgICA8cmRhcjovL3Byb2JsZW0vODEwNTQ5OD4g
TGltaXQgc2ltdWx0YW5lb3VzIEROUyBwcmVmZXRjaCByZXF1ZXN0IG51bWJlciAoNDA4NTIpCi0K
LSAgICAgICAgTm8gY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHksIHNvIG5vIHRlc3RzLgotCi0gICAg
ICAgIFdlIHN0aWxsIHF1ZXVlIHVwIHRvIDY0IG5hbWVzLCBidXQgb25seSBtYWtlIHVwIHRvIDgg
cmVxdWVzdHMgYXQgb25jZS4gSWYgdGhlcmUgYXJlIG5hbWVzCi0gICAgICAgIHJlbWFpbmluZyBp
biBxdWV1ZSwgd2UgcmV0cnkgYWZ0ZXIgYSBzaG9ydCB0aW1lb3V0ICh3aGljaCBpcyBlYXNpZXIg
dGhhbiBwb3N0aW5nCi0gICAgICAgIG5vdGlmaWNhdGlvbnMgZnJvbSBjbGllbnQgY2FsbGJhY2sp
LgotCi0gICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9ETlNDRk5ldC5jcHA6Ci0gICAgICAg
IChXZWJDb3JlOjpETlNSZXNvbHZlUXVldWU6OmFkZCk6Ci0gICAgICAgIChXZWJDb3JlOjpETlNS
ZXNvbHZlUXVldWU6OmZpcmVkKToKLQotMjAxMC0wNi0xOCAgWmhlbnlhbyBNbyAgPHptb0Bnb29n
bGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KLQotICAgICAgICBX
ZWJHTCBkZW1vcyBzaG93IGJhZCBmbGlja2VyCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zODU2MAotCi0gICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
bWFjL0dyYXBoaWNzQ29udGV4dDNETWFjLm1tOgotICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0M0Q6OnByZXBhcmVUZXh0dXJlKTogTW92ZSBlbnN1cmVDb250ZXh0KCkgb3V0IG9mIGlm
LWJsb2NrIHNvIGl0J3MgYWx3YXlzIGV4ZWN1dGVkLgotCi0yMDEwLTA2LTE4ICBBbmRlcnMgQ2Fy
bHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdl
aW5pZy4KLQotICAgICAgICBBZGQgUGxhdGZvcm1TdHJhdGVnaWVzIGFuZCBQbHVnaW5TdHJhdGVn
eSBjbGFzc2VzLgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDA4NTAKLQotICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoK
LSAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOiBBZGRlZC4KLSAgICAg
ICAgKFdlYkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2llczo6flBsYXRmb3JtU3RyYXRlZ2llcyk6Ci0g
ICAgICAgIChXZWJDb3JlOjpwbGF0Zm9ybVN0cmF0ZWdpZXMpOgotICAgICAgICAoV2ViQ29yZTo6
c2V0UGxhdGZvcm1TdHJhdGVnaWVzKToKLSAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0
ZWdpZXMuaDogQWRkZWQuCi0gICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVN0cmF0ZWdpZXM6OnBs
dWdpblN0cmF0ZWd5KToKLSAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2llczo6UGxh
dGZvcm1TdHJhdGVnaWVzKToKLSAgICAgICAgKiBwbHVnaW5zL1BsdWdpbkRhdGEuY3BwOgotICAg
ICAgICAqIHBsdWdpbnMvUGx1Z2luU3RyYXRlZ3kuaDogQWRkZWQuCi0gICAgICAgIChXZWJDb3Jl
OjpQbHVnaW5TdHJhdGVneTo6flBsdWdpblN0cmF0ZWd5KToKLQotMjAxMC0wNi0xOCAgTWFydGlu
IFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+Ci0KLSAgICAgICAgVW5yZXZpZXdlZC4K
LQotICAgICAgICBGaXggdGhlIEdUSysgYnVpbGQgYWZ0ZXIgcjYxNDEzIGFuZCA2MTM3OS4KLQot
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdPYmplY3QucG06Ci0gICAg
ICAgIFByb2R1Y2UgYSBnX3ZhbHVlX3NldCB0aGF0IHVzZXMgZ2V0dGVyRXhwcmVzc2lvblByZWZp
eCBpbnN0ZWFkIG9mIHRoZSByYXcgZ2V0dGVyLgotICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RPYmouY3BwOgotICAgICAgICAod2Via2l0X2RvbV90
ZXN0X29ial9nZXRfcHJvcGVydHkpOiBVcGRhdGUgZXhwZWN0ZWQgdGVzdCByZXN1bHRzLgotCi0y
MDEwLTA2LTE4ICBMZWFuZHJvIFBlcmVpcmEgIDxsZWFuZHJvQHByb2Z1c2lvbi5tb2JpPgotCi0g
ICAgICAgIFtFRkxdIFVucmV2aWV3ZWQgYnVpbGQgZml4LgotCi0gICAgICAgICogQ01ha2VMaXN0
cy50eHQ6IEFkZCBpbnNwZWN0b3IvU2NyaXB0QnJlYWtwb2ludC5jcHAuCi0KLTIwMTAtMDYtMTgg
IEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgotCi0gICAgICAgIFJ1YmJlci1zdGFtcGVk
IGJ5IFNhbSBXZWluaWcuCi0KLSAgICAgICAgVXBkYXRlIGNvcHlyaWdodCBoZWFkZXIuCi0KLSAg
ICAgICAgKiBodG1sL0hUTUxMaW5rRWxlbWVudC5oOgotCi0yMDEwLTA2LTE3ICBBbmR5IEVzdGVz
ICA8YWVzdGVzQGFwcGxlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWlu
LgotCi0gICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MDkxMzg1PiBQcmV2ZW50IGEgY3Jhc2ggaW4g
V2ViQ29yZSB3aGVuIHJlbW92aW5nIGEgc3R5bGVzaGVldCBsaW5rIGVsZW1lbnQgaW4KLSAgICAg
ICAgaW4gYSBsaXN0ZW5lciB0byBpdHMgYmVmb3JlbG9hZCBldmVudC4KLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzQyCi0gICAgICAgIAotICAgICAg
ICBQb3N0cG9uZSBsb2FkaW5nIG9mIGxpbmsgZWxlbWVudHMgdW50aWwgYWZ0ZXIgdGhleSBoYXZl
IGJlZW4gaW5zZXJ0ZWQgaW50byB0aGUgRE9NIGFuZAotICAgICAgICBhdHRhY2hlZC4gVGhpcyBw
cmV2ZW50cyBET00gbXV0YXRpb25zIHRyaWdnZXJlZCBieSBiZWZvcmVsb2FkIGhhbmRsZXJzIGZy
b20gZmlyaW5nIGluIHRoZQotICAgICAgICBtaWRzdCBvZiBET00gaW5zZXJ0aW9uLCB3aGljaCBj
YW4gbGVhZCB0byBhc3NlcnRpb24gZmFpbHVyZXMgYW5kIGNyYXNoZXMuCi0KLSAgICAgICAgVGVz
dDogZmFzdC9kb20vYmVmb3JlbG9hZC9yZW1vdmUtbGluay1pbi1iZWZvcmVsb2FkLWxpc3RlbmVy
Lmh0bWwKLQotICAgICAgICAqIGh0bWwvSFRNTExpbmtFbGVtZW50LmNwcDoKLSAgICAgICAgKFdl
YkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6SFRNTExpbmtFbGVtZW50KTogSW5pdGlhbGl6ZSBtX3No
b3VsZFByb2Nlc3NBZnRlckF0dGFjaCB0byBmYWxzZS4KLSAgICAgICAgKFdlYkNvcmU6OkhUTUxM
aW5rRWxlbWVudDo6cHJvY2Vzc0NhbGxiYWNrKTogQWRkIGEgc3RhdGljIGNhbGxiYWNrIGZ1bmN0
aW9uIHdoaWNoIGNhbGxzCi0gICAgICAgIEhUTUxMaW5rRWxlbWVudDo6cHJvY2VzcygpLgotICAg
ICAgICAoV2ViQ29yZTo6SFRNTExpbmtFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCk6IElu
c3RlYWQgb2YgY2FsbGluZyBwcm9jZXNzKCkgZGlyZWN0bHksIHNldAotICAgICAgICBtX3Nob3Vs
ZFByb2Nlc3NBZnRlckF0dGFjaCB0byB0cnVlIHRvIGluZGljYXRlIHRoYXQgcHJvY2VzcygpIHNo
b3VsZCBiZSBjYWxsZWQgYWZ0ZXIgYXR0YWNoKCkuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MTGlu
a0VsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQpOiBTZXQgbV9zaG91bGRQcm9jZXNzQWZ0ZXJB
dHRhY2ggdG8gZmFsc2UuCi0gICAgICAgIChXZWJDb3JlOjpIVE1MTGlua0VsZW1lbnQ6OmF0dGFj
aCk6IElmIG1fc2hvdWxkUHJvY2Vzc0FmdGVyQXR0YWNoIGlzIHRydWUsIHJlZ2lzdGVyCi0gICAg
ICAgIEhUTUxMaW5rRWxlbWVudDo6cHJvY2Vzc0NhbGxiYWNrKCkgYXMgYSBwb3N0LWF0dGFjaCBj
YWxsYmFjay4KLSAgICAgICAgKiBodG1sL0hUTUxMaW5rRWxlbWVudC5oOiBBZGQgbV9zaG91bGRQ
cm9jZXNzQWZ0ZXJBdHRhY2guCi0gICAgICAgIChXZWJDb3JlOjpIVE1MTGlua0VsZW1lbnQ6OmNh
bkxhenlBdHRhY2gpOiBPdmVycmlkZSBjYW5MYXp5QXR0YWNoKCkgdG8gcmV0dXJuIGZhbHNlIHRv
Ci0gICAgICAgIGluZGljYXRlIHRoYXQgYSBmdWxsIGF0dGFjaCBzaG91bGQgYmUgcGVyZm9ybWVk
LiAgVGhpcyBlbnN1cmVzIHRoZSBwb3N0LWF0dGFjaCBjYWxsYmFja3MgYXJlCi0gICAgICAgIGZp
cmVkLgotCi0yMDEwLTA2LTE4ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+
Ci0KLSAgICAgICAgVW5yZXZpZXdlZC4gV2luZG93cyBidWlsZCBmaXguCi0KLSAgICAgICAgQVg6
IHByZXNlbnRhdGlvbmFsIHJvbGUgbmVlZHMgdG8gYmUgaW5oZXJpdGVkIGJ5IHJlcXVpcmVkIGVs
ZW1lbnRzCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00
MDEzMgotCi0gICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmluaGVy
aXRzUHJlc2VudGF0aW9uYWxSb2xlKToKLQotMjAxMC0wNi0xOCAgQ2hyaXMgRmxlaXphY2ggIDxj
ZmxlaXphY2hAYXBwbGUuY29tPgotCi0gICAgICAgIFJldmlld2VkIGJ5IERhdmlkIEtpbHplci4K
LQotICAgICAgICBBWDogcHJlc2VudGF0aW9uYWwgcm9sZSBuZWVkcyB0byBiZSBpbmhlcml0ZWQg
YnkgcmVxdWlyZWQgZWxlbWVudHMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQwMTMyCi0KLSAgICAgICAgVGVzdDogcGxhdGZvcm0vbWFjL2FjY2Vzc2li
aWxpdHkvaW5oZXJpdGVkLXByZXNlbnRhdGlvbmFsLWxpc3RzLmh0bWwKLQotICAgICAgICAqIGFj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHA6Ci0gICAgICAgIChXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY2Nlc3NpYmlsaXR5SXNJZ25vcmVkKToK
LSAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmluaGVyaXRzUHJl
c2VudGF0aW9uYWxSb2xlKToKLSAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlS
ZW5kZXJPYmplY3QuaDoKLSAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmpl
Y3Q6Om5vZGUpOgotCi0yMDEwLTA2LTE4ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4K
LQotICAgICAgICBGaXggR1RLIGJ1aWxkIGFmdGVyIHJlZmxlY3Rpb24gY2hhbmdlLgotCi0gICAg
ICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbTogQ2hhbmdlZCBj
b2RlCi0gICAgICAgIHRoYXQgZW1pdHMgc2V0dGVycyB0byBjb252ZXkgdGhlIGNvcnJlY3QgdHlw
ZSBvZiB0aGUgYXR0cmlidXRlLgotICAgICAgICBUaGUgR09iamVjdCBjb2RlIGdlbmVyYXRvciB0
YWtlcyBhIGRpZmZlcmVudCBhcHByb2FjaCB0byBhdHRyaWJ1dGVzCi0gICAgICAgIHRoYW4gdGhl
IG90aGVycywgc28gaXQncyBoYWNrZWQgYSBiaXQgdG8gbWFrZSBpdCBtb3JlIGxpa2UgdGhlbS4K
LSAgICAgICAgV2Ugc2hvdWxkIGZpbmQgYSB3YXkgdG8gc2hhcmUgbW9yZSBjb2RlIGJldHdlZW4g
dGhlIGRpZmZlcmVudCBnZW5lcmF0b3JzLgotCi0gICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdE9iai5jcHA6Ci0gICAgICAgIFVwZGF0ZWQgdG8gZXhw
ZWN0IGNvcnJlY3QgcmVzdWx0cy4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVs
ZW1lbnRDdXN0b20uY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVJlc2l6ZU9wdGlvbnMp
OgorICAgICAgICAoV2ViQ29yZTo6SlNIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06IENoYW5nZWQg
dG8gY29udmVydCBTdHJpbmdzIHRvIEpTU3RyaW5ncyBjb3JyZWN0bHkgaW4gY2FsbGJhY2tzLgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6IENo
YW5nZWQgYmluZGluZ3MtdGVzdCBmb3IgYWJvdmUuCisgICAgICAgIChXZWJDb3JlOjpKU1Rlc3RD
YWxsYmFjazo6Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0pOgorICAgICAgICAqIGh0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnN0
YXJ0KTogQ2xpZW50IG9mIHRoaXMgY2xhc3Mgbm8gbG9uZ2VyIGRvZXMgYW55IHJlZmNvdW50aW5n
CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6QXN5bmNJbWFnZVJlc2l6ZXIp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5p
c2hlZCk6IFJlZmFjdG9yZWQuCisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdlUmVzaXplcjo6
cmVzaXplQ29tcGxldGUpOiBBZGRlZCBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5j
SW1hZ2VSZXNpemVyOjpyZXNpemVFcnJvcik6IERpdHRvLgorICAgICAgICAqIGh0bWwvQXN5bmNJ
bWFnZVJlc2l6ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm86OkNhbGxiYWNrSW5mbyk6IE5vdyBvbmx5IHN0b3JlcyBuZWNlc3NldGllcy4KKyAg
ICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UpOiBJbXBsZW1lbnRhdGlvbiBvZiBKUyBmdW5j
dGlvbi4KKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1s
L0hUTUxJbWFnZUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2s6On5JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjazo6fkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayk6CisgICAg
ICAgICogaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsOiBBZGRlZC4KKyAgICAg
ICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbWFn
ZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlUmVzaXplclRocmVhZDo6SW1hZ2VSZXNpemVyVGhyZWFkKTogIFJlZmFjdG9yZWQuCisgICAg
ICAgICogaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaDogUmVmYWN0b3JlZC4KKyAgICAgICAgKiBo
dG1sL1Jlc2l6ZU9wdGlvbnMuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9w
dGlvbnM6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpSZXNpemVP
cHRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldFdpZHRoKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OndpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6
OlJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRp
b25zOjpoZWlnaHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0Q29tcHJl
c3Npb25MZXZlbCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25zOjpjb21wcmVzc2lv
bkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldEFzcGVjdFJhdGlv
T3B0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OmFzcGVjdFJhdGlvT3B0
aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6OnNldE9yaWVudGF0aW9uT3B0
aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Om9yaWVudGF0aW9uT3B0aW9u
KToKKyAgICAgICAgKiBodG1sL1Jlc2l6ZU9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgIChXZWJD
b3JlOjpSZXNpemVPcHRpb25zOjopOgogCiAyMDEwLTA2LTE4ICBZdXJ5IFNlbWlraGF0c2t5ICA8
eXVyeXNAY2hyb21pdW0ub3JnPgogCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcCBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IDkwNGVhNTUuLmYwNmQ0ZWIg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMuY3BwCkBAIC0xODEsNiArMTgxLDggQEAKICNpbmNsdWRlICJKU0lEQlJlcXVl
c3QuY3BwIgogI2luY2x1ZGUgIkpTSURCU3VjY2Vzc0V2ZW50LmNwcCIKICNpbmNsdWRlICJKU0lt
YWdlRGF0YS5jcHAiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCIK
KyNpbmNsdWRlICJKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAi
SlNJbmRleGVkRGF0YWJhc2VSZXF1ZXN0LmNwcCIKICNpbmNsdWRlICJKU0phdmFTY3JpcHRDYWxs
RnJhbWUuY3BwIgogI2luY2x1ZGUgIkpTS2V5Ym9hcmRFdmVudC5jcHAiCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UK
aW5kZXggYmYwOWEyMi4uMzlmNmE0NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCisrKyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMjI0LDYgKzIyNCw4
IEBAIERPTV9DTEFTU0VTID0gXAogICAgIElEQlJlcXVlc3QgXAogICAgIElEQlN1Y2Nlc3NFdmVu
dCBcCiAgICAgSW1hZ2VEYXRhIFwKKyAgICBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgXAor
ICAgIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgXAogICAgIEluZGV4ZWREYXRhYmFzZVJlcXVl
c3QgXAogICAgIEluamVjdGVkU2NyaXB0SG9zdCBcCiAgICAgSW5zcGVjdG9yQmFja2VuZCBcCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5h
bQppbmRleCBlNDhiMDM3Li42MTc3ZmQ4IDEwMDY0NAotLS0gYS9XZWJDb3JlL0dOVW1ha2VmaWxl
LmFtCisrKyBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAgLTI3Niw2ICsyNzYsOCBAQCBJRExf
QklORElOR1MgKz0gXAogCVdlYkNvcmUvaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCBcCiAJV2Vi
Q29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRh
LmlkbCBcCisJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKwlX
ZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBcCiAJV2ViQ29yZS9o
dG1sL1RleHRNZXRyaWNzLmlkbCBcCiAJV2ViQ29yZS9odG1sL1ZhbGlkaXR5U3RhdGUuaWRsIFwK
IAlXZWJDb3JlL2h0bWwvVm9pZENhbGxiYWNrLmlkbCBcCkBAIC00NTYsNiArNDU4LDcgQEAgd2Vi
Y29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lRWxlbWVu
dEN1c3RvbS5jcHAgXAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50
Q3VzdG9tLmNwcCBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3Vz
dG9tLmNwcCBcCisJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20u
Y3BwIFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAg
XAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmggXAogCVdl
YkNvcmUvYmluZGluZ3MvanMvSlNIVE1MT2JqZWN0RWxlbWVudEN1c3RvbS5jcHAgXApAQCAtMTI3
MiwxMyArMTI3NSwxNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvaHRtbC9IVE1M
Vmlld1NvdXJjZURvY3VtZW50LmggXAogCVdlYkNvcmUvaHRtbC9JbWFnZURhdGEuY3BwIFwKIAlX
ZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmggXAorCVdlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAgXAogCVdlYkNvcmUvaHRt
bC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBcCiAJV2ViQ29yZS9odG1sL0xhYmVsc05vZGVMaXN0LmNw
cCBcCiAJV2ViQ29yZS9odG1sL0xhYmVsc05vZGVMaXN0LmggXAotCVdlYkNvcmUvaHRtbC9NZWRp
YUVycm9yLmggXAogCVdlYkNvcmUvaHRtbC9MZWdhY3lQcmVsb2FkU2Nhbm5lci5jcHAgXAogCVdl
YkNvcmUvaHRtbC9MZWdhY3lQcmVsb2FkU2Nhbm5lci5oIFwKKwlXZWJDb3JlL2h0bWwvTWVkaWFF
cnJvci5oIFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgXAorCVdlYkNvcmUvaHRt
bC9SZXNpemVPcHRpb25zLmggXAogCVdlYkNvcmUvaHRtbC9TdGVwUmFuZ2UuY3BwIFwKIAlXZWJD
b3JlL2h0bWwvU3RlcFJhbmdlLmggXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0cmljcy5oIFwKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5k
ZXggNjMyMTQ4NS4uYTc1OWQyMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysr
IGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTE4OCw2ICsxODgsOCBAQAogICAgICAgICAgICAg
J2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZGVv
RWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmlkbCcsCisgICAgICAg
ICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsJywKKyAgICAgICAgICAg
ICdodG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdodG1s
L01lZGlhRXJyb3IuaWRsJywKICAgICAgICAgICAgICdodG1sL1RleHRNZXRyaWNzLmlkbCcsCiAg
ICAgICAgICAgICAnaHRtbC9UaW1lUmFuZ2VzLmlkbCcsCkBAIC01NzMsNiArNTc1LDcgQEAKICAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwJywKICAg
ICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwJywK
ICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCcs
CisgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCcs
CiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCcs
CiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmgnLAog
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwJywK
QEAgLTE2NjIsNiArMTY2NSw4IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MVmlld1NvdXJjZURv
Y3VtZW50LmgnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VEYXRhLmNwcCcsCiAgICAgICAgICAg
ICAnaHRtbC9JbWFnZURhdGEuaCcsCisgICAgICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmgnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmgnLAogICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCcsCiAgICAg
ICAgICAgICAnaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCcsCiAgICAgICAgICAgICAnaHRtbC9M
YWJlbHNOb2RlTGlzdC5jcHAnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBiL1dl
YkNvcmUvV2ViQ29yZS5wcmkKaW5kZXggNjZlNzdjYS4uZWFmMTlmOSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9XZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC00MjQsNiArNDI0
LDggQEAgSURMX0JJTkRJTkdTICs9IFwKICAgICBodG1sL0hUTUxVTGlzdEVsZW1lbnQuaWRsIFwK
ICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsIFwKICAgICBodG1sL0ltYWdlRGF0YS5pZGwg
XAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGwgXAorICAgIGh0bWwvSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBcCiAgICAgaHRtbC9NZWRpYUVycm9yLmlkbCBc
CiAgICAgaHRtbC9UZXh0TWV0cmljcy5pZGwgXAogICAgIGh0bWwvVGltZVJhbmdlcy5pZGwgXApk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5k
ZXggOTg2ZjdhMy4uZmRhYjBhYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysg
Yi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0zMTUsNiArMzE1LDcgQEAgU09VUkNFUyArPSBcCiAg
ICAgYmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGlu
Z3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgYmluZGluZ3MvanMv
SlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAorICAgIGJpbmRpbmdzL2pzL0pTSFRNTElt
YWdlRWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVu
dEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20u
Y3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAg
XApAQCAtNzA0LDcgKzcwNSwxMiBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1sL0ltYWdlRGF0YS5j
cHAgXAogICAgIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBcCiAgICAgaHRtbC9MYWJlbHNO
b2RlTGlzdC5jcHAgXAorPDw8PDw8PCBIRUFECisgICAgaHRtbC9QcmVsb2FkU2Nhbm5lci5jcHAg
XAorICAgIGh0bWwvUmVzaXplT3B0aW9ucy5jcHAgXAorPT09PT09PQogICAgIGh0bWwvTGVnYWN5
UHJlbG9hZFNjYW5uZXIuY3BwIFwKKz4+Pj4+Pj4gbWFzdGVyCiAgICAgaHRtbC9TdGVwUmFuZ2Uu
Y3BwIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuY3BwIFwKICAgICBpbnNwZWN0b3IvQ29uc29s
ZU1lc3NhZ2UuY3BwIFwKQEAgLTE0NDIsOSArMTQ0OCwxMiBAQCBIRUFERVJTICs9IFwKICAgICBo
dG1sL0hUTUxWaWRlb0VsZW1lbnQuaCBcCiAgICAgaHRtbC9IVE1MVmlld1NvdXJjZURvY3VtZW50
LmggXAogICAgIGh0bWwvSW1hZ2VEYXRhLmggXAorICAgIGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JD
YWxsYmFjay5oIFwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oIFwKICAg
ICBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oIFwKICAgICBodG1sL0xhYmVsc05vZGVMaXN0Lmgg
XAogICAgIGh0bWwvTGVnYWN5UHJlbG9hZFNjYW5uZXIuaCBcCisgICAgaHRtbC9SZXNpemVPcHRp
b25zLmggXAogICAgIGh0bWwvU3RlcFJhbmdlLmggXAogICAgIGh0bWwvVGltZVJhbmdlcy5oIFwK
ICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvagppbmRleCBiNDBmYTFjLi44YzU5MDBjIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKQEAgLTM3NzEzLDYgKzM3NzEzLDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJ
CQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxodG1sXEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJ
CQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEltYWdlUmVz
aXplclRocmVhZC5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpAQCAtMzc3NDEsNiArMzc3NDks
MTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0i
Li5caHRtbFxSZXNpemVPcHRpb25zLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8Rmls
ZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5oIg0KKwkJCQk+DQor
CQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxTdGVwUmFu
Z2UuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTQwMTgwLDcgKzQwMTk2LDkgQEAKIAkJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8RmlsZQ0KKwogCQkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTEVtYmVkRWxlbWVudEN1c3RvbS5j
cHAiDQorCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KIAkJCQkJCU5hbWU9IkRl
YnVnfFdpbjMyIg0KQEAgLTQwNDQwLDYgKzQwNDU4LDU5IEBACiAJCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQogCQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCisKKwkJCQkJUmVsYXRpdmVQYXRoPSIu
LlxiaW5kaW5nc1xqc1xKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIg0KKwkJCQkJPg0KKwkJ
CQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQorCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJ
CU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJSZWxlYXNlfFdp
bjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJCQkJCQk8
VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQorCQkJCQk8
L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFt
ZT0iRGVidWdfSW50ZXJuYWx8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
DQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
DQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4zMiINCisJCQkJCQlFeGNsdWRl
ZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJTmFtZT0i
VkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4N
CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm98V2lu
MzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxU
b29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1l
PSJEZWJ1Z19BbGx8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJ
CQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJ
CQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTwvRmlsZT4NCisJCQkJPEZp
bGUNCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MSW5wdXRFbGVtZW50
Q3VzdG9tLmNwcCINCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMGQwOTQ3OC4uOTZiYzU5MSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTM1MjQsNiAr
MzUyNCwxNSBAQAogCQlCMDE0OUU3RTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5
RTdBMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovOyB9OwogCQlCMDE0
OUU3RjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5RTdCMTFBNEIyMTUwMDE5
NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovOyB9OwogCQlCMDE0OUU4MDExQTRCMjE1
MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VS
ZXNpemVyVGhyZWFkLmggKi87IH07CisJCUIwNEU2QkYyMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNp
emVPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovOyB9OworCQlC
MDRFNkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0QTA0QzEx
QUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjA0RTZCRjYxMUM3RjA3
RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRBMTFBQjFFQTAwMDE5NkE3QiAv
KiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjA0RjU5RkYxMUM2QUZENjAwMEI1QUMwIC8qIEpTSFRN
TEltYWdlRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVt
ZW50Q3VzdG9tLmNwcCAqLzsgfTsKKwkJQjBBNzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6
ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwICovOyB9Owor
CQlCMEE3MTVCNzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcx
NUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suY3BwICov
OyB9OworCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MEE3MTVCNDExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgg
Ki87IH07CisJCUIwQTcxNUI5MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suY3BwICovOyB9OworCQlCMEE3MTVCQTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5oICovOyB9OwogCQlCMjAxMTEwNzBBQjc3NDA1MDBEQjBFNjggLyogSlNT
VkdBRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgKi87IH07
CiAJCUIyMDExMTA4MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjAxMTEwNjBBQjc3NDA1MDBE
QjBFNjggLyogSlNTVkdBRWxlbWVudC5oICovOyB9OwogCQlCMjExMjdBNjBCMzE4Njc3MDAwOUJF
NTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjIxMTI3QTUwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZHUE9EVHlw
ZVdyYXBwZXIuaCAqLzsgfTsKQEAgLTg4ODMsNiArODg5MiwxNyBAQAogCQlCMDE0OUU3QTExQTRC
MjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQXN5bmNJbWFnZVJlc2l6ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVhZC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbWFnZVJlc2l6ZXJUaHJlYWQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0OUU3QzExQTRCMjE1MDAxOTZB
N0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEltYWdlUmVzaXplclRocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRDMTFBQjFFQTAwMDE5NkE3
QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVPcHRpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMwIC8qIEpT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9ucy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNpemVPcHRpb25zLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1NzkxMUQwMUIyMTAwM0MzMzczIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IElt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2su
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCMzExRDA0MzFFMDAzQzMz
NzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI0MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEwNTBBQjc3
NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNTVkdBRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUIyMTEyN0E1MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NWR1BPRFR5
cGVXcmFwcGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BPRFR5
cGVXcmFwcGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzc1MiwxNiArMTM3
NzIsMjIgQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmNwcCAq
LywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmggKi8sCiAJCQkJ
QTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5pZGwgKi8sCisJCQkJQjAxNEEw
NEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLywKKwkJ
CQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5p
ZGwgKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTdBMTFEMDFCMjEwMDNDMzM3MyAvKiBJbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCUIwMTQ5RTdCMTFBNEIyMTUwMDE5NkE3
QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5RTdDMTFBNEIyMTUwMDE5
NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2RkEyNDExQUQ0QTgzMDAy
MEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLAogCQkJCUE0NTZGQTI1MTFBRDRBODMwMDIw
QjQyMCAvKiBMYWJlbHNOb2RlTGlzdC5oICovLAogCQkJCUY1MjNEMjUwMDJERTQzOTYwMTg2MzVD
QSAvKiBMZWdhY3lIVE1MVHJlZUJ1aWxkZXIuY3BwICovLAogCQkJCUY1MjNEMjUxMDJERTQzOTYw
MTg2MzVDQSAvKiBMZWdhY3lIVE1MVHJlZUJ1aWxkZXIuaCAqLywKLQkJCQlFNDQ2MTM5QjBDRDYz
MzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5oICovLAotCQkJCUU0NDYxMzlDMENENjMzMTAwMEZB
REE3NSAvKiBNZWRpYUVycm9yLmlkbCAqLywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBGOTY4Njkg
LyogTGVnYWN5UHJlbG9hZFNjYW5uZXIuY3BwICovLAogCQkJCUU0RDRBQkUxMEQ3NTQyRjEwMEY5
Njg2OSAvKiBMZWdhY3lQcmVsb2FkU2Nhbm5lci5oICovLAorCQkJCUU0NDYxMzlCMENENjMzMTAw
MEZBREE3NSAvKiBNZWRpYUVycm9yLmggKi8sCisJCQkJRTQ0NjEzOUMwQ0Q2MzMxMDAwRkFEQTc1
IC8qIE1lZGlhRXJyb3IuaWRsICovLAorCQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3MyAvKiBS
ZXNpemVPcHRpb25zLmNwcCAqLywKKwkJCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVz
aXplT3B0aW9ucy5oICovLAogCQkJCUE1QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFu
Z2UuY3BwICovLAogCQkJCUE1QUZCMzRFMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFuZ2UuaCAq
LywKIAkJCQlCQ0VGNDVFODBFNjg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKQEAg
LTE0MDAzLDYgKzE0MDI5LDEwIEBACiAJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpT
SFRNTFZpZGVvRWxlbWVudC5oICovLAogCQkJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFCOSAvKiBK
U0ltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5MjUwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1h
Z2VEYXRhLmggKi8sCisJCQkJQjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzE1QjQxMUQwNDMxRTAwM0MzMzczIC8q
IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNUI1MTFEMDQzMUUw
MDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBB
NzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgg
Ki8sCiAJCQkJNDlFRUNFRjgxMDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5jcHAgKi8s
CiAJCQkJNDlFRUNFRjkxMDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5oICovLAogCQkJ
CTQ5RUVDRUY2MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDMyQXJyYXkuY3BwICovLApAQCAtMTU1
NzMsNiArMTU2MDMsNyBAQAogCQkJCUJDMkVEN0E0MEM2QzBGMzYwMDkyMEJGRiAvKiBKU0hUTUxG
cmFtZUVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDRDQxQUJBMEMwNjBERTgwMEMwRTQ0NiAv
KiBKU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMkVENjRGMEM2QkM0
OEMwMDkyMEJGRiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlCMDRG
NTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCAqLywK
IAkJCQlCQ0M0Mzg3NzBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9t
LmNwcCAqLywKIAkJCQlCQzMwNUNBMzBDMDc4MUJCMDBDRDIwRjAgLyogSlNIVE1MT2JqZWN0RWxl
bWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJNDQ4QUQyN0EwQTQ4MTM3OTAwMjNEMTc5IC8qIEpTSFRN
TE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTE4MTkyLDYgKzE4MjIzLDggQEAK
IAkJCQkxQTgyMEQ5MjBBMTNFQkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMDg5NTgyNTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggaW4g
SGVhZGVycyAqLywKIAkJCQlCQzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8qIEltYWdl
UmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1MTFDN0Yw
NzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
LAogCQkJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCBp
biBIZWFkZXJzICovLAogCQkJCUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZVNvdXJj
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdl
U291cmNlQ0cuaCBpbiBIZWFkZXJzICovLApAQCAtMTg0MjUsNiArMTg0NTgsOCBAQAogCQkJCUM1
NkM5MUE3MTE5RDkxODcwMERFNENEOSAvKiBKU0lEQlN1Y2Nlc3NFdmVudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkM2QzQ5RjQwRDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1Y3Rvci5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTc3OTc5MjkwRDZCOUU2NDAwMzg1MUI5IC8qIEpTSW1hZ2VE
YXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCQTEx
RDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovLAogCQkJCUM1RjRGNDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWREYXRhYmFz
ZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTdBMEU3NkRCMTBCRjA1OTgwMEEwMjc2RSAv
KiBKU0luamVjdGVkU2NyaXB0SG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFGMDYwQ0UwRjVF
RUIyQjAwQTA3RUFDIC8qIEpTSW5zcGVjdG9yQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCkBAIC0x
ODk1OSw2ICsxODk5NCw3IEBACiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxh
Y2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2
NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDQjE2QzJGMDk3OUMzQkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMDRFNkJGMjExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTM0RjcxNDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3IuaCBp
biBIZWFkZXJzICovLAogCQkJCTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVy
cm9yQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8q
IFJlc291cmNlSGFuZGxlLmggaW4gSGVhZGVycyAqLywKQEAgLTIwNzQyLDYgKzIwNzc4LDcgQEAK
IAkJCQlCQzQ5MThDODBCRkVBMDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNIVE1MSUZy
YW1lRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBBMUNERDJE
MDBCNDJCMjUgLyogSlNIVE1MSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUIw
NEY1OUZGMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0
RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1MzNERDUg
LyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRTJB
QTk5MEExQ0REMkQwMEI0MkIyNSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTIwODAwLDYgKzIwODM3LDggQEAKIAkJCQlCQzZDNDlGMzBEN0RCQTA1MDBGRkE1
NTggLyogSlNJbWFnZUNvbnN0cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3Nzk3OTI4
MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
N0QwMzE4RTBFOTM1NDAzMDBFMjRBQ0QgLyogSlNJbWFnZURhdGFDdXN0b20uY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJQjBBNzE1QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3MTVCOTExRDA0MzFFMDAzQzMz
NzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQzVGNEY0MTAxMTkzMDZDMDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVxdWVzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk3QTBFNzZEQTEwQkYwNTk4MDBBMDI3NkUgLyogSlNJbmpl
Y3RlZFNjcmlwdEhvc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2RDUxMEJGMDUwNzAw
QTAyNzZFIC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLApA
QCAtMjEzNDYsNiArMjEzODUsNyBAQAogCQkJCUE4OUNDQzUyMEY0NEU5ODEwMEI1REExMCAvKiBS
ZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzMwOUUw
OTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQkNCMTZDMkUwOTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJQjBBNzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM0RjcxM0UwRDVBNkYyODAwMDE4RDY5IC8qIFJlc291
cmNlRXJyb3JCYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxNEM3NjUwMENFOTIzNEUwMDdF
RjNDRCAvKiBSZXNvdXJjZUVycm9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0Qzc2Nzgw
Q0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmNwcCBpbiBTb3VyY2VzICovLApkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3Bw
IGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjM2M2ODkKLS0tIC9kZXYvbnVsbAorKysg
Yi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAKQEAgLTAs
MCArMSwxNjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1l
dDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIp
CisjaW5jbHVkZSAiSlNIVE1MSW1hZ2VFbGVtZW50LmgiCisKKyNpbmNsdWRlICJET01XaW5kb3cu
aCIKKyNpbmNsdWRlICJIVE1MSW1hZ2VFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlIDxydW50aW1lL0pT
RnVuY3Rpb24uaD4KKyNpbmNsdWRlIDxydW50aW1lL0pTU3RyaW5nLmg+CisjaW5jbHVkZSA8d3Rm
L0dldFB0ci5oPgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1Jl
ZlB0ci5oPgorCit1c2luZyBuYW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K3N0YXRpYyBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gY3JlYXRlSW1h
Z2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBpZiAoIXZhbHVlLmluaGVy
aXRzKCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24oZXhlYywg
VFlQRV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBKU09i
amVjdCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30KKworc3Rh
dGljIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gY3JlYXRlSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgLy8gQXJndW1lbnQgaXMgb3B0aW9uYWwg
KGhlbmNlIHVuZGVmaW5lZCBpcyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4KKyAgICBp
ZiAodmFsdWUuaXNVbmRlZmluZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBp
ZiAoIXZhbHVlLmluaGVyaXRzKCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01F
eGNlcHRpb24oZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAg
ICB9CisKKyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVy
biBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2JhbE9iamVj
dCk7Cit9CisKK3N0YXRpYyBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZVJlc2l6ZU9w
dGlvbnMoRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHZhbHVlKQoreworICAgIFJlZlB0cjxSZXNp
emVPcHRpb25zPiByZXNpemVPcHRpb25zID0gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCk7CisKKyAg
ICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93ZWQpLCBh
bmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKSB7
CisgICAgICAgIC8vIFVzZSBkZWZhdWx0IG9wdGlvbnMuCisgICAgICAgIHJldHVybiByZXNpemVP
cHRpb25zLnJlbGVhc2UoKTsKKyAgICB9CisgICAgSlNPYmplY3QqIG9iamVjdCA9IHZhbHVlLnRv
T2JqZWN0KGV4ZWMpOworCisgICAgSlNWYWx1ZSB3aWR0aCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElk
ZW50aWZpZXIoZXhlYywgIndpZHRoIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCF3aWR0aC5pc1VuZGVmaW5lZCgpKSB7CisgICAg
ICAgIHJlc2l6ZU9wdGlvbnMtPnNldFdpZHRoKHdpZHRoLnRvSW50MzIoZXhlYykpOworICAgICAg
ICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9
CisKKyAgICBKU1ZhbHVlIGhlaWdodCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhl
YywgImhlaWdodCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiAwOworICAgIGlmICghaGVpZ2h0LmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgcmVzaXpl
T3B0aW9ucy0+c2V0SGVpZ2h0KGhlaWdodC50b0ludDMyKGV4ZWMpKTsKKyAgICAgICAgaWYgKGV4
ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAg
SlNWYWx1ZSBjb21wcmVzc2lvbkxldmVsID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihl
eGVjLCAiY29tcHJlc3Npb25MZXZlbCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiAwOworICAgIGlmICghY29tcHJlc3Npb25MZXZlbC5pc1VuZGVmaW5l
ZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldENvbXByZXNzaW9uTGV2ZWwoY29tcHJl
c3Npb25MZXZlbC50b051bWJlcihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgcHJlc2Vy
dmVBc3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInByZXNl
cnZlQXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmluZWQoKSkg
eworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVzZXJ2ZUFz
cGVjdFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUgb3JpZW50
YXRpb24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRhdGlvbiIp
KTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAg
IGlmICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25z
LT5zZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24udG9TdHJp
bmcoZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVsZWFzZSgp
OworfQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2UoRXhlY1N0
YXRlKiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50b1N0cmlu
ZyhleGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNj
ZXNzQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhlYywgc3Rh
dGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkp
LCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxiYWNrKTsK
KworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrID0g
Y3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxKU0RPTUds
b2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFyZ3VtZW50
KDIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlvbnMgPSBj
cmVhdGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBpZiAoZXhl
Yy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIEFT
U0VSVChyZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9IHN0YXRp
Y19jYXN0PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0R2V0SW1h
Z2UobWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJhY2sucmVs
ZWFzZSgpLCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4Y2VwdGlv
bihleGVjLCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4uNDUyMWRm
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0y
MTc5LDcgKzIxNzksMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAg
ICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAgICAgICAg
IG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIp
OworICAgICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIpIHsKKyAg
ICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQoanNT
dHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBl
bmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB9CiAKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4gICAgYm9v
bCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYuLjA0M2E2
ZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENh
bGxiYWNrLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
YWxsYmFjay5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6Y2FsbGJh
Y2tXaXRoQ2xhc3MyUGFyYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQ2wKICAg
ICBFeGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAgICBNYXJr
ZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywgY2xhc3My
UGFyYW0pKTsKLSAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAgIGFyZ3Mu
YXBwZW5kKGpzU3RyaW5nKGV4ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRFeGNlcHRp
b24gPSBmYWxzZTsKICAgICBtX2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlzZWRFeGNl
cHRpb24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcCBi
L1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4uOWY4YTU2
NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAorKysgYi9X
ZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIgQEAKICNp
bmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIK
KyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhyZWFkLmgi
CisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgor
CiAjaW5jbHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNzUmVmUHRy
PEFzeW5jSW1hZ2VSZXNpemVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hlZEltYWdl
KiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3Vu
ZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFj
aywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9y
aWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdlUmVzaXpl
cjo6c3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
Q2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxS
ZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcg
QXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRCb3VuZHMs
IHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0aW9PcHRp
b24sIG9yaWVudGF0aW9uT3B0aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXplcihzY3Jp
cHRFeGVjdXRpb25Db250ZXh0LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxi
YWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFnZVJlc2l6
ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlw
ZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3ND
YWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0
UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0
aW9uT3B0aW9uKQorQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdlKiBjYWNo
ZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVz
aXplT3B0aW9ucykKICAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAgLCBtX3Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAsIG1fb3V0
cHV0VHlwZShvdXRwdXRUeXBlKQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vzc0NhbGxi
YWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBtX291dHB1
dFR5cGUob3V0cHV0VHlwZSkKLSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91bmRzKQot
ICAgICwgbV9xdWFsaXR5KHF1YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9uKGFzcGVj
dFJhdGlvT3B0aW9uKQotICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlvbk9wdGlv
bikKKyAgICAsIG1fcmVzaXplT3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFTU0VSVCht
X3N1Y2Nlc3NDYWxsYmFjay5pc09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNvbnRyb2xz
IHRoZSBsaWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNrSW5mbyA9
IG5ldyBDYWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxiYWNrLmdl
dCgpKTsKICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTY3LDEx
ICs3MSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRS
ZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1h
Z2VEYXRhID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hlZFJlc291
cmNlLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8g
PSBuZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhyZWFkOjpz
dGFydChpbWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2lyZWRCb3Vu
ZHMsIG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9wdGlvbikp
CisgICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9jYWxsYmFj
a0luZm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRoKCksIG1f
cmVzaXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNzaW9uTGV2
ZWwoKSwgbV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6ZU9wdGlv
bnMtPm9yaWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwogfQogCit2
b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4gYmxvYikK
K3sKKyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0LCBibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6cmVzaXpl
RXJyb3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAgIG1fZXJy
b3JDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAiVW5leHBl
Y3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VS
ZXNpemVyLmgKaW5kZXggYWRkMDcwYS4uNzkyNmFjYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0FzeW5jSW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmgKQEAgLTM2LDEyICszNiwxNSBAQAogI2luY2x1ZGUgIkJsb2IuaCIKICNpbmNsdWRlICJDYWNo
ZWRSZXNvdXJjZUNsaWVudC5oIgogI2luY2x1ZGUgIkludFNpemUuaCIKLSNpbmNsdWRlICJTY3Jp
cHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdlOwor
Y2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nl
c3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6ZU9wdGlv
bnM7CitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCiAvLyBBc3luY0ltYWdlUmVzaXpl
ciB3YWl0cyBmb3IgdGhlIENhY2hlZEltYWdlIHRoYXQgaXMgcGFzc2VkIGluIHRvIGxvYWQgY29t
cGxldGVseSwKIC8vIHRoZW4gc3RhcnRzIGFuIEltYWdlUmVzaXplclRocmVhZCB0byByZXNpemUg
dGhlIGltYWdlLiBPbmNlIGNyZWF0ZWQsIEltYWdlUmVzaXplclRocmVhZApAQCAtNDksNTYgKzUy
LDQyIEBAIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKIC8vIG9jY3VyLCBib3RoIG9iamVjdHMg
YXJlIGRlc3Ryb3llZC4gSWYgdGhlIGRvY3VtZW50IGlzIGRlc3Ryb3llZCBkdXJpbmcgcmVzaXpp
bmcsCiAvLyBBc3luY0ltYWdlUmVzaXplciB3aWxsIHJlY2VpdmUgYSBub3RpZmljYXRpb24gYW5k
IHN1YnNlcXVlbnRseSBibG9jayB0aGUgY2FsbGJhY2tzIGZyb20KIC8vIG9jY3VycmluZy4KLWNs
YXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50LCBwdWJs
aWMgUmVmQ291bnRlZDxBc3luY0ltYWdlUmVzaXplcj4geworY2xhc3MgQXN5bmNJbWFnZVJlc2l6
ZXIgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQgewogcHVibGljOgogICAgIHN0cnVjdCBD
YWxsYmFja0luZm8gewotICAgICAgICBDYWxsYmFja0luZm8oUGFzc1JlZlB0cjxBc3luY0ltYWdl
UmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXIpCisgICAgICAgIENhbGxiYWNrSW5mbyhQYXNzT3du
UHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAgICAgIDog
YXN5bmNJbWFnZVJlc2l6ZXIoYXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICAsIGJsb2Io
MCkKICAgICAgICAgewogICAgICAgICB9CiAKLSAgICAgICAgUmVmUHRyPEFzeW5jSW1hZ2VSZXNp
emVyPiBhc3luY0ltYWdlUmVzaXplcjsKKyAgICAgICAgT3duUHRyPEFzeW5jSW1hZ2VSZXNpemVy
PiBhc3luY0ltYWdlUmVzaXplcjsKICAgICAgICAgUmVmUHRyPEJsb2I+IGJsb2I7CiAgICAgfTsK
LSAgICAKKwogICAgIGVudW0gT3V0cHV0VHlwZSB7CiAgICAgICAgIEpQRUcsCiAgICAgICAgIFBO
RwogICAgIH07CiAKLSAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKLSAgICAgICAgUHJlc2Vy
dmVBc3BlY3RSYXRpbywKLSAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KLSAgICB9OwotCi0gICAg
ZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7Ci0gICAgICAgIENvcnJlY3RPcmllbnRhdGlvbiwKLSAg
ICAgICAgSWdub3JlT3JpZW50YXRpb24KLSAgICB9OwotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8
QXN5bmNJbWFnZVJlc2l6ZXI+IGNyZWF0ZShDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIEludFNp
emUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3JpcHRWYWx1
ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwgT3JpZW50
YXRpb25PcHRpb24pOworICAgIHN0YXRpYyB2b2lkIHN0YXJ0KFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqLCBDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFz
c1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgfkFzeW5jSW1hZ2VSZXNpemVyKCk7CiAKLSAg
ICAvLyBGSVhNRTogSW5zZXJ0IG92ZXJyaWRlIGZ1bmN0aW9uIGZvciBub3RpZmljYXRpb24gb2Yg
ZG9jdW1lbnQgZGVzdHJ1Y3Rpb24gKGNoYW5nZSBtX2NhbGxiYWNrc09rKS4KLQotICAgIHZvaWQg
cmVzaXplQ29tcGxldGUoUmVmUHRyPEJsb2I+KSB7IC8qIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVu
dGVkLiAqLyB9Ci0gICAgdm9pZCByZXNpemVFcnJvcigpIHsgLyogRklYTUU6IE5vdCB5ZXQgaW1w
bGVtZW50ZWQuICovIH0KKyAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9iPik7Cisg
ICAgdm9pZCByZXNpemVFcnJvcigpOwogCiBwcml2YXRlOgotICAgIEFzeW5jSW1hZ2VSZXNpemVy
KENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBTY3JpcHRW
YWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZsb2F0IHF1
YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbik7CisgICAgQXN5bmNJ
bWFnZVJlc2l6ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIENhY2hlZEltYWdlKiwgT3V0cHV0
VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNzUmVmUHRy
PEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+KTsK
ICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsKIAogICAg
IENhY2hlZEltYWdlKiBtX2NhY2hlZEltYWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3VjY2Vzc0Nh
bGxiYWNrOwotICAgIFNjcmlwdFZhbHVlIG1fZXJyb3JDYWxsYmFjazsKLSAgICAKLSAgICAvLyBQ
YXJhbWV0ZXJzIHRvIHBhc3MgaW50byBJbWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2FsbGJhY2tJ
bmZvKiBtX2NhbGxiYWNrSW5mbzsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3Njcmlw
dEV4ZWN1dGlvbkNvbnRleHQ7CisKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKLSAgICBJ
bnRTaXplIG1fZGVzaXJlZEJvdW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXNwZWN0
UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlvbk9wdGlvbiBt
X29yaWVudGF0aW9uT3B0aW9uOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2s+IG1fc3VjY2Vzc0NhbGxiYWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrPiBtX2Vycm9yQ2FsbGJhY2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IG1fcmVzaXpl
T3B0aW9uczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVt
ZW50LmNwcAppbmRleCA1ZDU5MjNkLi45ODI4Yjc5IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwv
SFRNTEltYWdlRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQu
Y3BwCkBAIC0yOCwxMyArMjgsMjIgQEAKICNpbmNsdWRlICJDU1NQcm9wZXJ0eU5hbWVzLmgiCiAj
aW5jbHVkZSAiQ1NTVmFsdWVLZXl3b3Jkcy5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKKyNp
bmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSAiRnJhbWVWaWV3LmgiCiAjaW5jbHVk
ZSAiSFRNTERvY3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1FbGVtZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVkZSAiSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgi
CiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5oIgogCisjaWYgRU5BQkxFKElNQUdFX1JF
U0laRVIpCisjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNlbmRpZgorCiB1c2luZyBu
YW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00NTEsNCArNDYwLDM0IEBA
IHZvaWQgSFRNTEltYWdlRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKQogICAg
IEhUTUxFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpOwogfQogCisjaWYgRU5B
QkxFKElNQUdFX1JFU0laRVIpCisKK3ZvaWQgSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1h
Z2UoU3RyaW5nIG1pbWVUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
az4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+
IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0aW9ucywg
RXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFzcmMoKS5pc1ZhbGlkKCkpIHsKKyAgICAg
ICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IC8vIFRoZSB0YWludHNDYW52YXMgbWV0aG9kIGFsc28gYWxsb3dzIGRhdGEgVVJMcy4KKyAgICBp
ZiAoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+dGFpbnRzQ2FudmFzKHNyYygpKSkgewor
ICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGU7CisgICAgaWYgKG1pbWVU
eXBlID09ICJpbWFnZS9qcGVnIikKKyAgICAgICAgb3V0cHV0VHlwZSA9IEFzeW5jSW1hZ2VSZXNp
emVyOjpKUEVHOworICAgIGVsc2UgaWYgKG1pbWVUeXBlID09ICJpbWFnZS9wbmciKQorICAgICAg
ICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OlBORzsKKyAgICBlbHNlIHsKKyAgICAg
ICAgZWMgPSBOT1RfU1VQUE9SVEVEX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IEFzeW5jSW1hZ2VSZXNpemVyOjpzdGFydChzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1faW1h
Z2VMb2FkZXIuaW1hZ2UoKSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxi
YWNrLCByZXNpemVPcHRpb25zKTsKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVS
KQorCiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oIGIvV2Vi
Q29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAppbmRleCA2MmQzMTVjLi40MTFiYmIzIDEwMDY0
NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCisrKyBiL1dlYkNvcmUvaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmgKQEAgLTMxLDYgKzMxLDkgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIFJlc2l6ZU9w
dGlvbnM7CiAKIGNsYXNzIEhUTUxJbWFnZUVsZW1lbnQgOiBwdWJsaWMgSFRNTEVsZW1lbnQgewog
ICAgIGZyaWVuZCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CkBAIC04OSw2ICs5MiwxMiBAQCBwdWJs
aWM6CiAKICAgICBib29sIGhhdmVGaXJlZExvYWRFdmVudCgpIGNvbnN0IHsgcmV0dXJuIG1faW1h
Z2VMb2FkZXIuaGF2ZUZpcmVkTG9hZEV2ZW50KCk7IH0KIAorI2lmIEVOQUJMRShJTUFHRV9SRVNJ
WkVSKQorCisgICAgdm9pZCB3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWltZVR5cGUsIFBhc3NSZWZQ
dHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiwgRXhjZXB0aW9uQ29kZSYp
OworCisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEhUTUxJbWFnZUVsZW1lbnQoY29uc3QgUXVh
bGlmaWVkTmFtZSYsIERvY3VtZW50KiwgSFRNTEZvcm1FbGVtZW50KiA9IDApOwogCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwgYi9XZWJDb3JlL2h0bWwvSFRN
TEltYWdlRWxlbWVudC5pZGwKaW5kZXggMGZjNzI3MS4uYWUzYzVlNCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MSW1h
Z2VFbGVtZW50LmlkbApAQCAtNDgsNiArNDgsMTQgQEAgbW9kdWxlIGh0bWwgewogICAgICAgICAv
LyBPYmplY3RpdmUtQyBleHRlbnNpb246CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01T
dHJpbmcgYWx0RGlzcGxheVN0cmluZzsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFVSTCBh
YnNvbHV0ZUltYWdlVVJMOworI2Vsc2UKKworI2lmIGRlZmluZWQoRU5BQkxFX0lNQUdFX1JFU0la
RVIpICYmIEVOQUJMRV9JTUFHRV9SRVNJWkVSCisgICAgICAgIC8vIEZ1bmN0aW9ucworICAgICAg
ICBbQ3VzdG9tXSB2b2lkIHdlYmtpdEdldEltYWdlKGluIERPTVN0cmluZyBtaW1lVHlwZSwgaW4g
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW09wdGlvbmFsXSBp
biBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2ssIFtPcHRpb25hbF0gaW4g
UmVzaXplT3B0aW9ucyBvcHRpb25zKQorICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7
CisjZW5kaWYKKwogI2VuZGlmCiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0lt
YWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjZmZmY4Ngot
LS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
LmgKQEAgLTAsMCArMSw1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFja19oCisj
ZGVmaW5lIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaAorCisjaWYgRU5BQkxFKElNQUdFX1JF
U0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBTdHJpbmc7CisKK2Ns
YXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJikgPSAwOworfTsKKworfQorCisjZW5kaWYg
Ly8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZmNjYmY4Ci0tLSAvZGV2L251bGwKKysr
IGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEs
MzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAq
CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICog
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29n
bGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQK
KyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9u
YWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdlUmVzaXplckVy
cm9yQ2FsbGJhY2sgeworICAgICAgICBib29sZWFuIGhhbmRsZUV2ZW50KGluIERPTVN0cmluZyBl
cnJvcik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJT
dWNjZXNzQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJh
Y2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NDQwMGYzCi0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oCkBA
IC0wLDAgKzEsNTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisjZGVm
aW5lIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1BR0VfUkVT
SVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBT
dHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayA6IHB1YmxpYyBSZWZD
b3VudGVkPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4geworcHVibGljOgorICAgIHZpcnR1
YWwgfkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwgYm9vbCBo
YW5kbGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQmxvYiopID0gMDsKK307CisKK30K
KworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVy
U3VjY2Vzc0NhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwZmQ4N2YKLS0t
IC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
LmlkbApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFjZSBbCisg
ICAgICAgIENvbmRpdGlvbmFsPUlNQUdFX1JFU0laRVIsCisgICAgICAgIENhbGxiYWNrCisgICAg
XSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgeworICAgICAgICBib29sZWFuIGhhbmRsZUV2
ZW50KGluIEJsb2IgYmxvYik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9J
bWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5j
cHAKaW5kZXggMWJhZTZhMC4uNjdhZmM3OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0ltYWdl
UmVzaXplclRocmVhZC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5j
cHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJCaXRtYXBJbWFnZS5oIgogI2luY2x1ZGUg
IkltYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKICNpbmNsdWRlIDx1dGlsaXR5
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MCw3ICs1MSw3IEBAIHN0YXRpYyB2b2lkIHJl
dHVybkJsb2JPckVycm9yKHZvaWQqIGNhbGxiYWNrSW5mb3JtYXRpb24pCiAgICAgZGVsZXRlIGNh
bGxiYWNrSW5mbzsKIH0KIAotYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBhc3NSZWZQ
dHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0lu
Zm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0cHV0VHlw
ZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXpl
cjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VSZXNpemVy
OjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK2Jvb2wgSW1hZ2VSZXNpemVy
VGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0lt
YWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VSZXNpemVy
OjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZG91YmxlIHF1
YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlvT3B0aW9u
LCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKIHsK
ICAgICBJbWFnZVJlc2l6ZXJUaHJlYWQqIGltYWdlUmVzaXplclRocmVhZCA9IG5ldyBJbWFnZVJl
c2l6ZXJUaHJlYWQoY2FsbGJhY2tJbmZvLCBvdXRwdXRUeXBlLCBkZXNpcmVkQm91bmRzLCBxdWFs
aXR5LCBhc3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24pOwogCkBAIC02Miw3ICs2
Myw3IEBAIGJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzCiAgICAgcmV0dXJuIGltYWdlUmVzaXplclRo
cmVhZC0+bV90aHJlYWRJRDsKIH0KIAotSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJU
aHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3Vu
ZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09wdGlvbiBh
c3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG9y
aWVudGF0aW9uT3B0aW9uKQorSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQo
QXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3luY0ltYWdl
UmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIGRv
dWJsZSBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRp
b09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRpb25PcHRp
b24pCiAgICAgOiBtX3RocmVhZElEKDApCiAgICAgLCBtX2NhbGxiYWNrSW5mbyhjYWxsYmFja0lu
Zm8pCiAgICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJl
YWQuaAppbmRleCBhZTVhZGU1Li4xNWJkM2JkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSW1h
Z2VSZXNpemVyVGhyZWFkLmgKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRocmVhZC5o
CkBAIC0zNCw2ICszNCw4IEBACiAjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCiAKICNpbmNsdWRl
ICJBc3luY0ltYWdlUmVzaXplci5oIgorI2luY2x1ZGUgIkludFNpemUuaCIKKyNpbmNsdWRlICJS
ZXNpemVPcHRpb25zLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMTEgKzQ0LDEx
IEBAIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFkIHsKIHB1
YmxpYzoKLSAgICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1h
Z2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFnZVJlc2l6
ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0eSwgQXN5
bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXplcjo6T3Jp
ZW50YXRpb25PcHRpb24pOworICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8U2hhcmVk
QnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUg
cXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6
Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICB+SW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAKIHByaXZh
dGU6Ci0gICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0lu
Zm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRz
LCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24sIEFz
eW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbik7CisgICAgSW1hZ2VSZXNpemVyVGhy
ZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6
T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwgUmVzaXpl
T3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0
aW9uKTsKICAgICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFkU3RhcnQodm9pZCopOwog
ICAgIHZvaWQqIGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OCw5ICs2MCw5IEBAIHByaXZh
dGU6CiAgICAgUmVmUHRyPEJpdG1hcEltYWdlPiBtX2ltYWdlOwogICAgIEFzeW5jSW1hZ2VSZXNp
emVyOjpPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKICAgICBJbnRTaXplIG1fZGVzaXJlZEJvdW5k
czsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJh
dGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9y
aWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAgZG91YmxlIG1fcXVhbGl0
eTsKKyAgICBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJhdGlvT3B0
aW9uOworICAgIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25P
cHRpb247CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmU2NDk2NAotLS0gL2Rldi9udWxs
CisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAtMCwwICsxLDc1IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAg
ICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAq
IGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4g
bm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRP
UlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05F
UiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisg
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1ZGUgIlJl
c2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRpYyBjb25zdCBpbnQgZGlt
ZW5zaW9uc0xvd2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25zVXBwZXJM
aW1pdCA9IDMyNzY3Oworc3RhdGljIGNvbnN0IGRvdWJsZSBjb21wcmVzc2lvbkxvd2VyTGltaXQg
PSAwLjA7CitzdGF0aWMgY29uc3QgZG91YmxlIGNvbXByZXNzaW9uVXBwZXJMaW1pdCA9IDEuMDsK
Kworc3RhdGljIGNvbnN0IGRvdWJsZSBkZWZhdWx0Q29tcHJlc3Npb24gPSAwLjg1OworCitQYXNz
UmVmUHRyPFJlc2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpIHsgcmV0dXJuIGFk
b3B0UmVmKG5ldyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9wdGlvbnM6OlJlc2l6ZU9w
dGlvbnMoKQorICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgpCisgICAgLCBtX2NvbXBy
ZXNzaW9uTGV2ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJZ25vcmVBc3BlY3RSYXRp
bykKKyAgICAsIG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50YXRpb24pCit7Cit9CisK
K3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7IG1fd2lkdGggPSB3aWR0
aCA+PSBkaW1lbnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1lbnNpb25zVXBwZXJMaW1p
dCA/IHdpZHRoIDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRoKCkgeyByZXR1cm4gbV93
aWR0aDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChpbnQgaGVpZ2h0KSB7IG1f
aGVpZ2h0ID0gaGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYmIGhlaWdodCA8PSBkaW1l
bnNpb25zVXBwZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25zOjpoZWln
aHQoKSB7IHJldHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldENvbXBy
ZXNzaW9uTGV2ZWwoZG91YmxlIGNvbXByZXNzaW9uTGV2ZWwpIHsgbV9jb21wcmVzc2lvbkxldmVs
ID0gY29tcHJlc3Npb25MZXZlbCA+PSBjb21wcmVzc2lvbkxvd2VyTGltaXQgJiYgY29tcHJlc3Np
b25MZXZlbCA8PSBjb21wcmVzc2lvblVwcGVyTGltaXQgPyBjb21wcmVzc2lvbkxldmVsIDogZGVm
YXVsdENvbXByZXNzaW9uOyB9Citkb3VibGUgUmVzaXplT3B0aW9uczo6Y29tcHJlc3Npb25MZXZl
bCgpIHsgcmV0dXJuIG1fY29tcHJlc3Npb25MZXZlbDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6
OnNldEFzcGVjdFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbykgeyBtX2FzcGVj
dFJhdGlvT3B0aW9uID0gcHJlc2VydmVBc3BlY3RSYXRpbyA/IFByZXNlcnZlQXNwZWN0UmF0aW8g
OiBJZ25vcmVBc3BlY3RSYXRpbzsgfQorUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24g
UmVzaXplT3B0aW9uczo6YXNwZWN0UmF0aW9PcHRpb24oKSB7IHJldHVybiBtX2FzcGVjdFJhdGlv
T3B0aW9uOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0T3JpZW50YXRpb25PcHRpb24oU3Ry
aW5nIG9yaWVudGF0aW9uT3B0aW9uKSB7IG1fb3JpZW50YXRpb25PcHRpb24gPSBvcmllbnRhdGlv
bk9wdGlvbiA9PSAiYXV0byIgPyBDb3JyZWN0T3JpZW50YXRpb24gOiBJZ25vcmVPcmllbnRhdGlv
bjsgfQorUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gUmVzaXplT3B0aW9uczo6b3Jp
ZW50YXRpb25PcHRpb24oKSB7IHJldHVybiBtX29yaWVudGF0aW9uT3B0aW9uOyB9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBiL1dlYkNvcmUvaHRtbC9SZXNp
emVPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTg3YjFkMQot
LS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgKQEAgLTAsMCAr
MSw4NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpZm5kZWYgUmVzaXplT3B0aW9uc19oCisjZGVmaW5lIFJlc2l6ZU9wdGlvbnNfaAor
CisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgU3RyaW5nOworCitjbGFzcyBSZXNpemVPcHRpb25zIDogcHVibGljIFJlZkNvdW50ZWQ8
UmVzaXplT3B0aW9ucz4geworcHVibGljOgorICAgIGVudW0gQXNwZWN0UmF0aW9PcHRpb24gewor
ICAgICAgICBQcmVzZXJ2ZUFzcGVjdFJhdGlvLAorICAgICAgICBJZ25vcmVBc3BlY3RSYXRpbwor
ICAgIH07CisKKyAgICBlbnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKKyAgICAgICAgQ29ycmVjdE9y
aWVudGF0aW9uLAorICAgICAgICBJZ25vcmVPcmllbnRhdGlvbgorICAgIH07CisKKyAgICBzdGF0
aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGUoKTsKKworICAgIHZvaWQgc2V0V2lk
dGgoaW50IHdpZHRoKTsKKyAgICBpbnQgd2lkdGgoKTsKKworICAgIHZvaWQgc2V0SGVpZ2h0KGlu
dCBoZWlnaHQpOworICAgIGludCBoZWlnaHQoKTsKKworICAgIHZvaWQgc2V0Q29tcHJlc3Npb25M
ZXZlbChkb3VibGUgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZG91YmxlIGNvbXByZXNzaW9uTGV2
ZWwoKTsKKworICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2ZUFzcGVj
dFJhdGlvKTsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbigpOworCisg
ICAgdm9pZCBzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50YXRpb25PcHRpb24pOwor
ICAgIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKCk7CisKK3ByaXZhdGU6Cisg
ICAgUmVzaXplT3B0aW9ucygpOworCisgICAgLy8gSWYgbV93aWR0aCBvciBtX2hlaWdodCA9PSAw
LCB0aGF0IGRpbWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGljaXRseSBkdXJpbmcgcmVzaXpp
bmcuCisgICAgaW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0OworICAgIGRvdWJsZSBtX2Nv
bXByZXNzaW9uTGV2ZWw7CisgICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlv
bjsKKyAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisK
KyNlbmRpZiAvLyBSZXNpemVPcHRpb25zX2gK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59530</attachid>
            <date>2010-06-23 10:36:24 -0700</date>
            <delta_ts>2010-06-23 17:46:43 -0700</delta_ts>
            <desc>Patch 2: JSC bindings</desc>
            <filename>image-resize-patch-2</filename>
            <type>text/plain</type>
            <size>97275</size>
            <attacher name="Sterling Swigart">sswigart</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2OGI1OGExLi41YWQ3M2U5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTAtMDYt
MjEgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dpZ2FydEBnb29nbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRXhwb3NlZCB0aGUg
aW1hZ2UgcmVzaXppbmcgQVBJIHRvIEpTQywgYnV0IGl0IGlzIGZ1bmN0aW9uYWxseSBpbmNvbXBs
ZXRlIGF0IHRoaXMgc3RhZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDg1NAorCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93
ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlw
ZXMuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9p
bWFnZS1oYXMtbm8tc291cmNlLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2FsbGJhY2stYWZ0ZXItdW5s
b2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJ
bWFnZS9vdmVycmlkZS1vay13ZWJraXRHZXRJbWFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUt
b2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvVEVNUExBVEUu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9zY3JpcHQtdGVzdHMvYXJndW1lbnQtdHlwZXMuanM6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2lt
YWdlLWhhcy1uby1zb3VyY2UuanM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVu
bG9hZC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJr
aXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanM6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL3Rlc3QtY2FsbGJhY2tzLmpzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL21pc2MvaW1hZ2Utd2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQ6IEFkZGVkLgorCiAyMDEwLTA2LTIzICBK
YW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1
bWVudC10eXBlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGQ3ZWE4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJ
bWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvYXJndW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTA2IEBACitUZXN0cyB0aGUgYWNjZXB0YWJsZSB0eXBlcyBmb3IgYXJndW1lbnRz
IHRvIHRoZSBJbWFnZS53ZWJraXRHZXRJbWFnZSBtZXRob2QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdl
dEltYWdlKHVuZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VS
UjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZShudWxsKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdW5k
ZWZpbmVkKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBudWxsKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgb2JqZWN0VGhyb3dpbmdFeGNlcHRpb24pIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5j
dGlvbikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImlt
YWdlL2JtcCIsIGVtcHR5RnVuY3Rpb24pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogTk9UX1NVUFBP
UlRFRF9FUlI6IERPTSBFeGNlcHRpb24gOS4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgNDIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsICJzdHJpbmciKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZ
UEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQpIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwge30pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQ
RV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1hZ2Uo
ImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBlbXB0eUZ1
bmN0aW9uKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdHJ1ZSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
WVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgNDIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIEluZmluaXR5KSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sICJzdHJpbmciKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgbnVsbCkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHdpZHRo
IGdldHRlciBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgZW1wdHlGdW5jdGlvbikgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwgdHJ1ZSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0
R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgNDIpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCAtSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsICJzdHJpbmci
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp1bmRlZmluZWR9
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6e319KSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpvYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OmVtcHR5RnVu
Y3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTp0cnVl
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6NDJ9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpJbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Oi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5OiJzdHJpbmcifSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOnVuZGVmaW5lZH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3dpZHRoOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOm9iamVj
dFRocm93aW5nRXhjZXB0aW9ufSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiB2YWx1ZU9mIHRocmV3
IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHt3aWR0aDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3dpZHRoOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOi1JbmZpbml0eX0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVu
ZGVmaW5lZCwge2hlaWdodDpudWxsfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhy
b3dpbmdFeGNlcHRpb259KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtoZWlnaHQ6ZW1wdHlGdW5jdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHto
ZWlnaHQ6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OkluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7aGVpZ2h0OiJzdHJpbmcifSkgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dW5kZWZpbmVkfSkgZGlkIG5vdCB0
aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5
RnVuY3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6bnVsbH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSkgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IHZhbHVlT2YgdGhyZXcgZXhjZXB0aW9uLgorUEFTUyBp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtj
b21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4K
K1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZp
bmVkLCB7Y29tcHJlc3Npb25MZXZlbDp0cnVlfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge2NvbXByZXNzaW9uTGV2ZWw6NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
Y29tcHJlc3Npb25MZXZlbDpJbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtjb21wcmVzc2lvbkxldmVsOi1JbmZpbml0eX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmlu
ZWQsIHtjb21wcmVzc2lvbkxldmVsOiJzdHJpbmcifSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVm
aW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86dW5kZWZpbmVkfSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9u
LCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnt9fSkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24s
IHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86b2JqZWN0VGhyb3dpbmdFeGNlcHRpb259
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzplbXB0
eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86dHJ1ZX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOjQyfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1h
Z2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0
UmF0aW86SW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVB
c3BlY3RSYXRpbzotSW5maW5pdHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJl
c2VydmVBc3BlY3RSYXRpbzoic3RyaW5nIn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQs
IHtvcmllbnRhdGlvbjp1bmRlZmluZWR9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246bnVsbH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtp
dEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRh
dGlvbjp7fX0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjpvYmpl
Y3RUaHJvd2luZ0V4Y2VwdGlvbn0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBpLndl
YmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmll
bnRhdGlvbjplbXB0eUZ1bmN0aW9ufSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29y
aWVudGF0aW9uOnRydWV9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRp
b246NDJ9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5p
dHl9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246LUluZmluaXR5
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIGkud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOiJzdHJpbmcifSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9hcmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVk
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9h
cmd1bWVudC10eXBlcy5odG1sLWRpc2FibGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmM1OTZiNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2FyZ3VtZW50LXR5cGVzLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL2ltYWdlLWhhcy1uby1zb3VyY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRH
ZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44ZjY4ZjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8t
c291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0cyB0aGF0IGFuIGltYWdl
IHdpdGggbm8gc291cmNlIHdpbGwgdGhyb3cgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFeGNlcHRpb24gd2FzIGNv
cnJlY3RseSB0aHJvd246IEVycm9yOiBJTlZBTElEX1NUQVRFX0VSUjogRE9NIEV4Y2VwdGlvbiAx
MQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0
SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9pbWFnZS1oYXMtbm8tc291cmNl
Lmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY4ZjFl
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1l
bnQvd2Via2l0R2V0SW1hZ2UvaW1hZ2UtaGFzLW5vLXNvdXJjZS5odG1sLWRpc2FibGVkCkBAIC0w
LDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJzY3JpcHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDgxZDEzYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvbm8tY2Fs
bGJhY2stYWZ0ZXItdW5sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACittYWluIGZy
YW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFj
a3Mgd2lsbCBub3QgZXhlY3V0ZSBhZnRlciBvbnVubG9hZC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgTm8gY2FsbGJhY2tzIGNhbGxlZCBhZnRlciB1bmxvYWQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL25v
LWNhbGxiYWNrLWFmdGVyLXVubG9hZC5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxv
YWQuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTBh
YTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxl
bWVudC93ZWJraXRHZXRJbWFnZS9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuaHRtbC1kaXNhYmxl
ZApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdl
YmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlODJjNjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitUaGlzIGVuc3VyZXMgdGhhdCB3ZWJraXRHZXRJbWFnZSBtYXkgYmUgb3ZlcnJp
ZGRlbiB3aXRoIGFub3RoZXIgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyA0MiBpcyBub24temVyby4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
SW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0
bWwtZGlzYWJsZWQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmh0bWwtZGlzYWJsZWQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk2ZjljNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvb3Zl
cnJpZGUtb2std2Via2l0R2V0SW1hZ2UuaHRtbC1kaXNhYmxlZApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0
LXRlc3RzL292ZXJyaWRlLW9rLXdlYmtpdEdldEltYWdlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10
ZXN0cy9URU1QTEFURS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUz
ZGUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VF
bGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtp
dEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2FyZ3Vt
ZW50LXR5cGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1MzY3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50
L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9hcmd1bWVudC10eXBlcy5qcwpAQCAtMCwwICsx
LDE0NiBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoZSBhY2NlcHRhYmxlIHR5cGVzIGZvciBhcmd1
bWVudHMgdG8gdGhlIEltYWdlLndlYmtpdEdldEltYWdlIG1ldGhvZC4iKTsKKworZnVuY3Rpb24g
c2hvdWxkTm90VGhyb3coZXhwcmVzc2lvbikgeworICB0cnkgeworICAgIGV2YWwoZXhwcmVzc2lv
bik7CisgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4iKTsKKyAgfSBjYXRjaChlKSB7CisgICAgdGVzdEZhaWxlZChleHByZXNzaW9uICsgIiBzaG91
bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKKyAgfQorfQor
CitmdW5jdGlvbiB0ZXN0KGV4cHJlc3Npb24sIGV4cHJlc3Npb25TaG91bGRUaHJvdywgZXhwZWN0
ZWRFeGNlcHRpb24pIHsKKyAgICBpZiAoZXhwcmVzc2lvblNob3VsZFRocm93KSB7CisgICAgICAg
IGlmIChleHBlY3RlZEV4Y2VwdGlvbikKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Np
b24sICcoZnVuY3Rpb24oKSB7IHJldHVybiAiJyArIGV4cGVjdGVkRXhjZXB0aW9uICsgJyI7IH0p
KCk7Jyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZFRocm93KGV4cHJlc3Npb24s
ICcoZnVuY3Rpb24oKSB7IHJldHVybiAiRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhj
ZXB0aW9uIDE3IjsgfSkoKTsnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzaG91bGROb3RUaHJv
dyhleHByZXNzaW9uKTsKKyAgICB9Cit9CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rpb24o
KSB7fTsKKworZnVuY3Rpb24gT2JqZWN0VGhyb3dpbmdFeGNlcHRpb24oKSB7fTsKK09iamVjdFRo
cm93aW5nRXhjZXB0aW9uLnByb3RvdHlwZS52YWx1ZU9mID0gZnVuY3Rpb24oKSB7CisgICAgdGhy
b3cgbmV3IEVycm9yKCd2YWx1ZU9mIHRocmV3IGV4Y2VwdGlvbicpOworfQorT2JqZWN0VGhyb3dp
bmdFeGNlcHRpb24ucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIndpZHRoIiwgZnVuY3Rpb24o
KSB7CisgICAgdGhyb3cgbmV3IEVycm9yKCd3aWR0aCBnZXR0ZXIgZXhjZXB0aW9uJyk7Cit9KTsK
K3ZhciBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiA9IG5ldyBPYmplY3RUaHJvd2luZ0V4Y2VwdGlv
bigpOworCit2YXIgaSA9IG5ldyBJbWFnZSgpOworaS5zcmMgPSAiLi4vcmVzb3VyY2VzL2JsdWVf
cmVjdC5qcGciOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSh1bmRlZmluZWQpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKG51bGwpJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIikn
LCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIpJywgdHJ1ZSk7CisK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIHVuZGVmaW5lZCknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG51bGwpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCB7fSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIG9iamVjdFRocm93aW5nRXhjZXB0aW9uKScsIHRydWUp
OwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiknLCBm
YWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlv
biknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9ibXAiLCBlbXB0eUZ1
bmN0aW9uKScsIHRydWUsICdFcnJvcjogTk9UX1NVUFBPUlRFRF9FUlI6IERPTSBFeGNlcHRpb24g
OScpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgdHJ1ZSknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIDQyKScsIHRydWUpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAtSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkKScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIG51bGwpJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwge30pJywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCBvYmplY3RUaHJvd2luZ0V4Y2VwdGlvbiknLCB0cnVlKTsK
K3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIGVtcHR5
RnVuY3Rpb24pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwg
ZW1wdHlGdW5jdGlvbiwgdHJ1ZSknLCB0cnVlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIDQyKScsIHRydWUpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgSW5maW5pdHkpJywgdHJ1ZSk7Cit0ZXN0
KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCAtSW5maW5pdHkp
JywgdHJ1ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0
aW9uLCAic3RyaW5nIiknLCB0cnVlKTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQpJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCBudWxsKScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge30pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCBvYmplY3RUaHJvd2lu
Z0V4Y2VwdGlvbiknLCB0cnVlLCAnRXJyb3I6IHdpZHRoIGdldHRlciBleGNlcHRpb24nKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwgZW1wdHlGdW5jdGlvbiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHRydWUpJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCA0
MiknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIEluZmluaXR5KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0
SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwgLUluZmluaXR5KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwgInN0cmluZyIpJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3BlcnR5
OnVuZGVmaW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTpudWxsfSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHtkdW1teVByb3BlcnR5Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5Om9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtkdW1teVByb3Bl
cnR5OmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6dHJ1ZX0p
JywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5j
dGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53
ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVt
bXlQcm9wZXJ0eTpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgi
aW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7ZHVtbXlQcm9wZXJ0eTotSW5m
aW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2R1bW15UHJvcGVydHk6InN0cmluZyJ9KScsIGZhbHNl
KTsKKwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7d2lkdGg6dW5kZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDpudWxs
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHt3aWR0aDp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRH
ZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6b2Jq
ZWN0VGhyb3dpbmdFeGNlcHRpb259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNl
cHRpb24nKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge3dpZHRoOmVtcHR5RnVuY3Rpb259KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dp
ZHRoOnRydWV9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIs
IGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3dpZHRoOjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHt3
aWR0aDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7d2lkdGg6LUluZmluaXR5fSknLCBmYWxz
ZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1
bmRlZmluZWQsIHt3aWR0aDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dW5k
ZWZpbmVkfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
aGVpZ2h0Ont9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmci
LCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6b2JqZWN0VGhyb3dpbmdFeGNlcHRp
b259KScsIHRydWUsICdFcnJvcjogdmFsdWVPZiB0aHJldyBleGNlcHRpb24nKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDplbXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJp
bWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6dHJ1ZX0pJywgZmFs
c2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwg
dW5kZWZpbmVkLCB7aGVpZ2h0OjQyfSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdl
KCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtoZWlnaHQ6SW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2hlaWdodDotSW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2ku
d2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge2hl
aWdodDoic3RyaW5nIn0pJywgZmFsc2UpOworCit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFn
ZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnVuZGVm
aW5lZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1w
dHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDpudWxsfSknLCBmYWxzZSk7
Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRl
ZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOnt9fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdl
dEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lv
bkxldmVsOm9iamVjdFRocm93aW5nRXhjZXB0aW9ufSknLCB0cnVlLCAnRXJyb3I6IHZhbHVlT2Yg
dGhyZXcgZXhjZXB0aW9uJyk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBl
bXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtjb21wcmVzc2lvbkxldmVsOmVtcHR5RnVuY3Rpb259
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6dHJ1ZX0pJywgZmFsc2UpOwordGVz
dCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVk
LCB7Y29tcHJlc3Npb25MZXZlbDo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFn
ZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZl
bDpJbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7Y29tcHJlc3Npb25MZXZlbDotSW5maW5pdHl9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge2NvbXByZXNzaW9uTGV2ZWw6InN0cmluZyJ9KScsIGZhbHNlKTsK
KwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5k
ZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzp1bmRlZmluZWR9KScsIGZhbHNlKTsKK3Rlc3Qo
J2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwg
e3ByZXNlcnZlQXNwZWN0UmF0aW86bnVsbH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJ
bWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3Bl
Y3RSYXRpbzp7fX0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5n
IiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpvYmplY3RU
aHJvd2luZ0V4Y2VwdGlvbn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1h
Z2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7cHJlc2VydmVBc3BlY3RSYXRpbzpl
bXB0eUZ1bmN0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVjdFJhdGlvOnRydWV9
KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVu
Y3Rpb24sIHVuZGVmaW5lZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86NDJ9KScsIGZhbHNlKTsKK3Rl
c3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5l
ZCwge3ByZXNlcnZlQXNwZWN0UmF0aW86SW5maW5pdHl9KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Vi
a2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge3ByZXNl
cnZlQXNwZWN0UmF0aW86LUluZmluaXR5fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldElt
YWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtwcmVzZXJ2ZUFzcGVj
dFJhdGlvOiJzdHJpbmcifSknLCBmYWxzZSk7CisKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImlt
YWdlL3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOnVuZGVmaW5l
ZH0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlG
dW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246bnVsbH0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246e319KScsIGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdl
L3BuZyIsIGVtcHR5RnVuY3Rpb24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOm9iamVjdFRocm93
aW5nRXhjZXB0aW9ufSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9w
bmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjplbXB0eUZ1bmN0aW9u
fSknLCBmYWxzZSk7Cit0ZXN0KCdpLndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1
bmN0aW9uLCB1bmRlZmluZWQsIHtvcmllbnRhdGlvbjp0cnVlfSknLCBmYWxzZSk7Cit0ZXN0KCdp
LndlYmtpdEdldEltYWdlKCJpbWFnZS9wbmciLCBlbXB0eUZ1bmN0aW9uLCB1bmRlZmluZWQsIHtv
cmllbnRhdGlvbjo0Mn0pJywgZmFsc2UpOwordGVzdCgnaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2Uv
cG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7b3JpZW50YXRpb246SW5maW5pdHl9KScs
IGZhbHNlKTsKK3Rlc3QoJ2kud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVtcHR5RnVuY3Rp
b24sIHVuZGVmaW5lZCwge29yaWVudGF0aW9uOi1JbmZpbml0eX0pJywgZmFsc2UpOwordGVzdCgn
aS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvcG5nIiwgZW1wdHlGdW5jdGlvbiwgdW5kZWZpbmVkLCB7
b3JpZW50YXRpb246InN0cmluZyJ9KScsIGZhbHNlKTsKKword2luZG93LmpzVGVzdElzQXN5bmMg
PSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvaW1hZ2UtaGFzLW5vLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1z
b3VyY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFkOTU3NwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Vi
a2l0R2V0SW1hZ2Uvc2NyaXB0LXRlc3RzL2ltYWdlLWhhcy1uby1zb3VyY2UuanMKQEAgLTAsMCAr
MSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2l0aCBubyBzb3VyY2Ug
d2lsbCB0aHJvdyBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNlcHRpb24uIik7CisKK3ZhciBpID0g
bmV3IEltYWdlKCk7CitpLnNyYyA9IG51bGw7CisKK3ZhciBlbXB0eUZ1bmN0aW9uID0gZnVuY3Rp
b24oKSB7fTsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKwl0cnkgewor
CQlpLndlYmtpdEdldEltYWdlKCJpbWFnZS9qcGVnIiwgZW1wdHlGdW5jdGlvbik7CisJCXRlc3RG
YWlsZWQoIlNob3VsZCBoYXZlIHRocm93biBleGNlcHRpb24uIE5vIGV4Y2VwdGlvbiB3YXMgdGhy
b3duLi4uIik7CisJCWZpbmlzaEpTVGVzdCgpOworCX0gY2F0Y2goZSkgeworCQl0ZXN0UGFzc2Vk
KCJFeGNlcHRpb24gd2FzIGNvcnJlY3RseSB0aHJvd246ICIgKyBlKTsKKwkJZmluaXNoSlNUZXN0
KCk7CisJfQorfTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOword2luZG93LnN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1h
ZnRlci11bmxvYWQuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dl
YmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9uby1jYWxsYmFjay1hZnRlci11bmxvYWQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWE4NmRmMgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2Uv
c2NyaXB0LXRlc3RzL25vLWNhbGxiYWNrLWFmdGVyLXVubG9hZC5qcwpAQCAtMCwwICsxLDI1IEBA
CitkZXNjcmlwdGlvbigiRW5zdXJlcyB0aGF0IHRoZSBjYWxsYmFja3Mgd2lsbCBub3QgZXhlY3V0
ZSBhZnRlciBvbnVubG9hZC4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0gIi4u
L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKworZG9jdW1lbnQuYm9keS5vbmxvYWQgPSBmdW5j
dGlvbigpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dCgndGVzdFBhc3NlZCgiTm8gY2FsbGJhY2tz
IGNhbGxlZCBhZnRlciB1bmxvYWQiKTsgZmluaXNoSlNUZXN0KCk7JywgMTAwKTsKK30KKworZG9j
dW1lbnQuYm9keS5vbnVubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgIGkud2Via2l0R2V0SW1hZ2Uo
CisgICAgICAgICJpbWFnZS9wbmciLAorICAgICAgICBmdW5jdGlvbihibG9iKSB7CisgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkIHdlYmtpdEdldEltYWdlIHN1Y2Nlc3MgY2FsbGJh
Y2suIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSwKKyAgICAgICAg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgd2Vi
a2l0R2V0SW1hZ2UgZXJyb3IgY2FsbGJhY2s6ICIgKyBlcnJvcik7CisgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICk7Cit9CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3Jp
cHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0R2V0SW1hZ2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3NjcmlwdC10ZXN0cy9vdmVycmlk
ZS1vay13ZWJraXRHZXRJbWFnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li41NWVmZjkxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvb3ZlcnJpZGUtb2std2Via2l0
R2V0SW1hZ2UuanMKQEAgLTAsMCArMSwxMiBAQAorZGVzY3JpcHRpb24oIlRoaXMgZW5zdXJlcyB0
aGF0IHdlYmtpdEdldEltYWdlIG1heSBiZSBvdmVycmlkZGVuIHdpdGggYW5vdGhlciBtZXRob2Qu
Iik7CisKK3ZhciBpID0gbmV3IEltYWdlKCk7CitpLnNyYyA9ICIuLi9yZXNvdXJjZXMvYmx1ZV9y
ZWN0LmpwZyI7CisKK2kud2Via2l0R2V0SW1hZ2UgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9
Cit2YXIgcmVzdWx0ID0gaS53ZWJraXRHZXRJbWFnZSgpOworCitzaG91bGRCZU5vblplcm8ocmVz
dWx0KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldEltYWdlL3Nj
cmlwdC10ZXN0cy90ZXN0LWNhbGxiYWNrcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5hNjY0ZjNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS9zY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFj
a3MuanMKQEAgLTAsMCArMSwyMCBAQAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgdGhlIGNhbGxi
YWNrcyB3b3JrIGNvcnJlY3RseS4iKTsKKwordmFyIGkgPSBuZXcgSW1hZ2UoKTsKK2kuc3JjID0g
Ii4uL3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIjsKKwordmFyIHN1Y2Nlc3NDYWxsYmFjayA9IGZ1
bmN0aW9uKGJsb2IpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZXNzIGNhbGxiYWNrIHdhcyBpbmNv
cnJlY3RseSBjYWxsZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBlcnJvckNh
bGxiYWNrID0gZnVuY3Rpb24oZXJyb3IpIHsKKyAgICB0ZXN0UGFzc2VkKCJFcnJvciBjYWxsYmFj
ayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogIiArIGVycm9yKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK307CisKKy8vIE9ubHkgdGhlIGVycm9yIGNhbGxiYWNrIHdpbGwgY3VycmVu
dGx5IG5ldmVyIGJlIGNhbGxlZCBpbiB0aGlzIHBhdGNoLCBzbyB0ZXN0IHRoYXQgaXQgd29ya3Mg
Zm9yIG5vdworaS53ZWJraXRHZXRJbWFnZSgiaW1hZ2UvanBlZyIsIHN1Y2Nlc3NDYWxsYmFjaywg
ZXJyb3JDYWxsYmFjayk7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5z
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3dlYmtpdEdldElt
YWdlL3Rlc3QtY2FsbGJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44YzAxODMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEltYWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgdGhhdCB0aGUgY2FsbGJhY2tzIHdvcmsgY29y
cmVjdGx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBFcnJvciBjYWxs
YmFjayB3YXMgY29ycmVjdGx5IGNhbGxlZCB3aXRoIG91dHB1dDogVW5leHBlY3RlZCBlcnJvciB3
aGlsZSByZXNpemluZyBpbWFnZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFn
ZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1jYWxsYmFja3MuaHRtbC1kaXNhYmxlZCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxJbWFnZUVsZW1lbnQvd2Via2l0R2V0SW1hZ2UvdGVzdC1j
YWxsYmFja3MuaHRtbC1kaXNhYmxlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5jMjY1MDJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTElt
YWdlRWxlbWVudC93ZWJraXRHZXRJbWFnZS90ZXN0LWNhbGxiYWNrcy5odG1sLWRpc2FibGVkCkBA
IC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvdGVzdC1jYWxsYmFja3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmln
aW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0OGVm
ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvaW1hZ2Ut
d2Via2l0R2V0SW1hZ2UtcmVtb3RlLW9yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitUZXN0cyB0aGF0IEltYWdlLndlYmtpdEdldEltYWdlIGNhbm5vdCBiZSBjYWxsZWQgb24gYW4g
aW1hZ2Ugb2YgcmVtb3RlIG9yaWdpbi4KKworCitQQVNTOiBUaHJldyBleGNlcHRpb246IEVycm9y
OiBTRUNVUklUWV9FUlI6IERPTSBFeGNlcHRpb24gMTgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9taXNjL2ltYWdlLXdlYmtpdEdldEltYWdlLXJlbW90ZS1vcmlnaW4uaHRt
bC1kaXNhYmxlZCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJ
bWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJsZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uMmUxYzU1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9pbWFnZS13ZWJraXRHZXRJbWFnZS1yZW1vdGUtb3JpZ2luLmh0bWwtZGlzYWJs
ZWQKQEAgLTAsMCArMSwzMSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBs
b2cobXNnKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5hcHBlbmRDaGls
ZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShtc2cgKyAiXG4iKSk7Cit9CisKK3ZhciBlbXB0eUNh
bGxiYWNrID0gZnVuY3Rpb24oKSB7IH07CisKK3dpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB0cnkgeworICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdEltYWdlIikud2Via2l0R2V0SW1hZ2UoImltYWdlL3BuZyIsIGVt
cHR5Q2FsbGJhY2spOworICAgICAgICBsb2coIkZBSUw6IERpZCBub3QgdGhyb3cgZXhjZXB0aW9u
Iik7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBsb2cgKCJQQVNTOiBUaHJldyBleGNlcHRp
b246ICIgKyBlKTsKKyAgICB9CisKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25l
KCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+VGVzdHMgdGhhdCBJbWFnZS53
ZWJraXRHZXRJbWFnZSBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGltYWdlIG9mIHJlbW90ZSBvcmln
aW4uPC9wPgorPGltZyBpZD0idGVzdEltYWdlIiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC8u
Li8uLi9mYXN0L2RvbS9IVE1MSW1hZ2VFbGVtZW50L3Jlc291cmNlcy9ibHVlX3JlY3QuanBnIiAv
PgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGE0NWNl
NzcuLjEzODk2MDggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjYzLDYgKzI2Myw4IEBAIFNFVChXZWJDb3JlX0lETF9G
SUxFUwogICAgIGh0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuaWRsCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsCisgICAgaHRtbC9JbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmlkbAorICAgIGh0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlk
bAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwKICAgICBodG1sL1RleHRNZXRyaWNzLmlkbAogICAg
IGh0bWwvVmFsaWRpdHlTdGF0ZS5pZGwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzA3NzFhYy4uYzQ5MjhkNCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2NSBAQAor
MjAxMC0wNi0yMSAgU3RlcmxpbmcgU3dpZ2FydCAgPHNzd2lnYXJ0QGdvb2dsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBFeHBv
c2VkIHRoZSBpbWFnZSByZXNpemluZyBBUEkgdG8gSlNDLCBidXQgaXQgaXMgZnVuY3Rpb25hbGx5
IGluY29tcGxldGUgYXQgdGhpcyBzdGFnZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQwODU0CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRk
ZWQgZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOiBEaXR0by4KKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOiBEaXR0by4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZS5neXBpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3Jl
LnByaTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS5wcm86IERpdHRvLgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
SFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZUltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUmVz
aXplT3B0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxJbWFnZUVsZW1lbnQ6OndlYmtp
dEdldEltYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bTogQ2hhbmdlZCB0byBjb252ZXJ0IFN0cmluZ3MgdG8gSlNTdHJpbmdzIGNvcnJlY3RseSBpbiBj
YWxsYmFja3MuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrLmNwcDogQ2hhbmdlZCBiaW5kaW5ncy10ZXN0IGZvciBhYm92ZS4KKyAgICAgICAgKFdlYkNv
cmU6OkpTVGVzdENhbGxiYWNrOjpjYWxsYmFja1dpdGhDbGFzczJQYXJhbSk6CisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY0ltYWdl
UmVzaXplcjo6c3RhcnQpOiBDbGllbnQgb2YgdGhpcyBjbGFzcyBubyBsb25nZXIgZG9lcyBhbnkg
cmVmY291bnRpbmcKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1hZ2VSZXNpemVyOjpBc3luY0lt
YWdlUmVzaXplcik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6
Om5vdGlmeUZpbmlzaGVkKTogUmVmYWN0b3JlZC4KKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jSW1h
Z2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZSk6IEFkZGVkIGNhbGxiYWNrLgorICAgICAgICAoV2Vi
Q29yZTo6QXN5bmNJbWFnZVJlc2l6ZXI6OnJlc2l6ZUVycm9yKTogRGl0dG8uCisgICAgICAgICog
aHRtbC9Bc3luY0ltYWdlUmVzaXplci5oOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNJbWFnZVJl
c2l6ZXI6OkNhbGxiYWNrSW5mbzo6Q2FsbGJhY2tJbmZvKTogTm93IG9ubHkgc3RvcmVzIG5lY2Vz
c2V0aWVzLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MSW1hZ2VFbGVtZW50Ojp3ZWJraXRHZXRJbWFnZSk6IEltcGxlbWVudGF0aW9u
IG9mIEpTIGZ1bmN0aW9uLgorICAgICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTEltYWdlRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjazo6fkltYWdlUmVzaXplckVycm9yQ2FsbGJhY2spOgorICAgICAgICAq
IGh0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5pZGw6IEFkZGVkLgorICAgICAgICAqIGh0
bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrOjp+SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrKToKKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGw6IEFk
ZGVkLgorICAgICAgICAqIGh0bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlUmVzaXplclRocmVhZDo6c3RhcnQpOiBSZWZhY3RvcmVkLgorICAgICAgICAo
V2ViQ29yZTo6SW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJUaHJlYWQpOiAgUmVmYWN0
b3JlZC4KKyAgICAgICAgKiBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oOiBSZWZhY3RvcmVkLgor
ICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UmVzaXplT3B0aW9uczo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlv
bnM6OlJlc2l6ZU9wdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
V2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6d2lkdGgpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0SGVpZ2h0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlc2l6ZU9wdGlvbnM6OmhlaWdodCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNpemVPcHRpb25z
OjpzZXRDb21wcmVzc2lvbkxldmVsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6
OmNvbXByZXNzaW9uTGV2ZWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0
QXNwZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6YXNw
ZWN0UmF0aW9PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6c2V0T3Jp
ZW50YXRpb25PcHRpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVzaXplT3B0aW9uczo6b3JpZW50
YXRpb25PcHRpb24pOgorICAgICAgICAqIGh0bWwvUmVzaXplT3B0aW9ucy5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlc2l6ZU9wdGlvbnM6Oik6CisKIDIwMTAtMDYtMjMgIEphbWVzIFJv
Ymluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYW4g
QmVybnN0ZWluLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA5MDRlYTU1Li5mMDZkNGViIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcApAQCAtMTgxLDYgKzE4MSw4IEBACiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmNwcCIKICNp
bmNsdWRlICJKU0lEQlN1Y2Nlc3NFdmVudC5jcHAiCiAjaW5jbHVkZSAiSlNJbWFnZURhdGEuY3Bw
IgorI2luY2x1ZGUgIkpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAiCisjaW5jbHVkZSAi
SlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTSW5kZXhlZERh
dGFiYXNlUmVxdWVzdC5jcHAiCiAjaW5jbHVkZSAiSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcCIK
ICNpbmNsdWRlICJKU0tleWJvYXJkRXZlbnQuY3BwIgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJmMDlh
MjIuLjM5ZjZhNDYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIyNCw2ICsyMjQsOCBAQCBET01fQ0xB
U1NFUyA9IFwKICAgICBJREJSZXF1ZXN0IFwKICAgICBJREJTdWNjZXNzRXZlbnQgXAogICAgIElt
YWdlRGF0YSBcCisgICAgSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIFwKKyAgICBJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrIFwKICAgICBJbmRleGVkRGF0YWJhc2VSZXF1ZXN0IFwKICAgICBJ
bmplY3RlZFNjcmlwdEhvc3QgXAogICAgIEluc3BlY3RvckJhY2tlbmQgXApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggZTQ4
YjAzNy4uNjE3N2ZkOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0yNzYsNiArMjc2LDggQEAgSURMX0JJTkRJTkdTICs9
IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFVMaXN0RWxlbWVudC5pZGwgXAogCVdlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmlkbCBcCiAJV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5pZGwgXAorCVdl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCBcCisJV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5pZGwgXAogCVdlYkNvcmUvaHRtbC9UZXh0TWV0
cmljcy5pZGwgXAogCVdlYkNvcmUvaHRtbC9WYWxpZGl0eVN0YXRlLmlkbCBcCiAJV2ViQ29yZS9o
dG1sL1ZvaWRDYWxsYmFjay5pZGwgXApAQCAtNDU2LDYgKzQ1OCw3IEBAIHdlYmNvcmVfc291cmNl
cyArPSBcCiAJV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3Bw
IFwKIAlXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAg
XAogCVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAor
CVdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNwcCBcCiAJV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3BwIFwKIAlXZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5oIFwKIAlXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSFRNTE9iamVjdEVsZW1lbnRDdXN0b20uY3BwIFwKQEAgLTEyNzIsMTMgKzEyNzUs
MTcgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3VyY2VE
b2N1bWVudC5oIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmNwcCBcCiAJV2ViQ29yZS9odG1s
L0ltYWdlRGF0YS5oIFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5o
IFwKKwlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggXAogCVdlYkNv
cmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIFwKIAlXZWJDb3JlL2h0bWwvSW1hZ2VSZXNp
emVyVGhyZWFkLmggXAogCVdlYkNvcmUvaHRtbC9MYWJlbHNOb2RlTGlzdC5jcHAgXAogCVdlYkNv
cmUvaHRtbC9MYWJlbHNOb2RlTGlzdC5oIFwKLQlXZWJDb3JlL2h0bWwvTWVkaWFFcnJvci5oIFwK
IAlXZWJDb3JlL2h0bWwvTGVnYWN5UHJlbG9hZFNjYW5uZXIuY3BwIFwKIAlXZWJDb3JlL2h0bWwv
TGVnYWN5UHJlbG9hZFNjYW5uZXIuaCBcCisJV2ViQ29yZS9odG1sL01lZGlhRXJyb3IuaCBcCisJ
V2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuY3BwIFwKKwlXZWJDb3JlL2h0bWwvUmVzaXplT3B0
aW9ucy5oIFwKIAlXZWJDb3JlL2h0bWwvU3RlcFJhbmdlLmNwcCBcCiAJV2ViQ29yZS9odG1sL1N0
ZXBSYW5nZS5oIFwKIAlXZWJDb3JlL2h0bWwvVGV4dE1ldHJpY3MuaCBcCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IDYzMjE0ODUu
LmE3NTlkMjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1dlYkNvcmUv
V2ViQ29yZS5neXBpCkBAIC0xODgsNiArMTg4LDggQEAKICAgICAgICAgICAgICdodG1sL0hUTUxV
TGlzdEVsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRs
JywKICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5pZGwnLAorICAgICAgICAgICAgJ2h0bWwv
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCcsCisgICAgICAgICAgICAnaHRtbC9JbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9NZWRpYUVycm9y
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UZXh0TWV0cmljcy5pZGwnLAogICAgICAgICAgICAg
J2h0bWwvVGltZVJhbmdlcy5pZGwnLApAQCAtNTczLDYgKzU3NSw3IEBACiAgICAgICAgICAgICAn
YmluZGluZ3MvanMvSlNIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAn
YmluZGluZ3MvanMvSlNIVE1MRnJhbWVTZXRFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAg
ICAnYmluZGluZ3MvanMvSlNIVE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAnLAorICAgICAgICAg
ICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAgICAg
ICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAgICAg
ICAgJ2JpbmRpbmdzL2pzL0pTSFRNTElucHV0RWxlbWVudEN1c3RvbS5oJywKICAgICAgICAgICAg
ICdiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNwcCcsCkBAIC0xNjYyLDYg
KzE2NjUsOCBAQAogICAgICAgICAgICAgJ2h0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oJywK
ICAgICAgICAgICAgICdodG1sL0ltYWdlRGF0YS5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvSW1h
Z2VEYXRhLmgnLAorICAgICAgICAgICAgJ2h0bWwvSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5o
JywKKyAgICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5oJywKICAg
ICAgICAgICAgICdodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAnLAogICAgICAgICAgICAgJ2h0
bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgnLAogICAgICAgICAgICAgJ2h0bWwvTGFiZWxzTm9kZUxp
c3QuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcmkgYi9XZWJDb3JlL1dlYkNv
cmUucHJpCmluZGV4IDY2ZTc3Y2EuLmVhZjE5ZjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29y
ZS5wcmkKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtNDI0LDYgKzQyNCw4IEBAIElETF9C
SU5ESU5HUyArPSBcCiAgICAgaHRtbC9IVE1MVUxpc3RFbGVtZW50LmlkbCBcCiAgICAgaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmlkbCBcCiAgICAgaHRtbC9JbWFnZURhdGEuaWRsIFwKKyAgICBodG1s
L0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsIFwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5pZGwgXAogICAgIGh0bWwvTWVkaWFFcnJvci5pZGwgXAogICAgIGh0bWwv
VGV4dE1ldHJpY3MuaWRsIFwKICAgICBodG1sL1RpbWVSYW5nZXMuaWRsIFwKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IDk4NmY3YTMu
LjNjMTlhN2QgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9X
ZWJDb3JlLnBybwpAQCAtMzE1LDYgKzMxNSw3IEBAIFNPVVJDRVMgKz0gXAogICAgIGJpbmRpbmdz
L2pzL0pTSFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRN
TEZyYW1lU2V0RWxlbWVudEN1c3RvbS5jcHAgXAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTElGcmFt
ZUVsZW1lbnRDdXN0b20uY3BwIFwKKyAgICBiaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRD
dXN0b20uY3BwIFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxJbnB1dEVsZW1lbnRDdXN0b20uY3Bw
IFwKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxPYmplY3RFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAg
YmluZGluZ3MvanMvSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwIFwKQEAgLTcwNSw2
ICs3MDYsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1sL0ltYWdlUmVzaXplclRocmVhZC5jcHAg
XAogICAgIGh0bWwvTGFiZWxzTm9kZUxpc3QuY3BwIFwKICAgICBodG1sL0xlZ2FjeVByZWxvYWRT
Y2FubmVyLmNwcCBcCisgICAgaHRtbC9SZXNpemVPcHRpb25zLmNwcCBcCiAgICAgaHRtbC9TdGVw
UmFuZ2UuY3BwIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuY3BwIFwKICAgICBpbnNwZWN0b3Iv
Q29uc29sZU1lc3NhZ2UuY3BwIFwKQEAgLTE0NDIsOSArMTQ0NCwxMiBAQCBIRUFERVJTICs9IFwK
ICAgICBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaCBcCiAgICAgaHRtbC9IVE1MVmlld1NvdXJjZURv
Y3VtZW50LmggXAogICAgIGh0bWwvSW1hZ2VEYXRhLmggXAorICAgIGh0bWwvSW1hZ2VSZXNpemVy
RXJyb3JDYWxsYmFjay5oIFwKKyAgICBodG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5o
IFwKICAgICBodG1sL0ltYWdlUmVzaXplclRocmVhZC5oIFwKICAgICBodG1sL0xhYmVsc05vZGVM
aXN0LmggXAogICAgIGh0bWwvTGVnYWN5UHJlbG9hZFNjYW5uZXIuaCBcCisgICAgaHRtbC9SZXNp
emVPcHRpb25zLmggXAogICAgIGh0bWwvU3RlcFJhbmdlLmggXAogICAgIGh0bWwvVGltZVJhbmdl
cy5oIFwKICAgICBodG1sL1ZhbGlkaXR5U3RhdGUuaCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvagppbmRleCBiNDBmYTFjLi44YzU5MDBjIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2oKQEAgLTM3NzEzLDYgKzM3NzEzLDE0IEBACiAJCQkJPg0KIAkJCTwvRmls
ZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSW1hZ2VSZXNpemVyRXJy
b3JDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVs
YXRpdmVQYXRoPSIuLlxodG1sXEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAiDQorCQkJ
CT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXElt
YWdlUmVzaXplclRocmVhZC5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpAQCAtMzc3NDEsNiAr
Mzc3NDksMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZl
UGF0aD0iLi5caHRtbFxSZXNpemVPcHRpb25zLmNwcCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJ
CQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcUmVzaXplT3B0aW9ucy5oIg0KKwkJ
CQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxT
dGVwUmFuZ2UuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTQwMTgwLDcgKzQwMTk2LDkg
QEAKIAkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8RmlsZQ0K
KwogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTSFRNTEVtYmVkRWxlbWVudEN1
c3RvbS5jcHAiDQorCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KIAkJCQkJCU5h
bWU9IkRlYnVnfFdpbjMyIg0KQEAgLTQwNDQwLDYgKzQwNDU4LDU5IEBACiAJCQkJCTwvRmlsZUNv
bmZpZ3VyYXRpb24+DQogCQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCisKKwkJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwIg0KKwkJCQkJ
Pg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQor
CQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQor
CQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNv
bmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJSZWxl
YXNlfFdpbjMyIg0KKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJCT4NCisJ
CQkJCQk8VG9vbA0KKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJCS8+DQor
CQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJ
CQkJTmFtZT0iRGVidWdfSW50ZXJuYWx8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9
InRydWUiDQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiDQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24NCisJCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb3xXaW4zMiINCisJCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCQk+DQorCQkJCQkJPFRvb2wNCisJCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCQkvPg0KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4NCisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJCU5hbWU9IlJlbGVhc2VfQ2Fp
cm98V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQkJPg0KKwkJ
CQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkJLz4NCisJ
CQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJ
CQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiDQorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
DQorCQkJCQkJPg0KKwkJCQkJCTxUb29sDQorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
DQorCQkJCQkJLz4NCisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+DQorCQkJCTwvRmlsZT4NCisJ
CQkJPEZpbGUNCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNIVE1MSW5wdXRF
bGVtZW50Q3VzdG9tLmNwcCINCiAJCQkJCT4NCiAJCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMGQwOTQ3OC4uOTZi
YzU5MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTM1
MjQsNiArMzUyNCwxNSBAQAogCQlCMDE0OUU3RTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFn
ZVJlc2l6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwMTQ5RTdBMTFBNEIyMTUwMDE5NkE3QiAvKiBBc3luY0ltYWdlUmVzaXplci5oICovOyB9Owog
CQlCMDE0OUU3RjExQTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTQ5RTdCMTFBNEIy
MTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovOyB9OwogCQlCMDE0OUU4MDEx
QTRCMjE1MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0OUU3QzExQTRCMjE1MDAxOTZBN0IgLyog
SW1hZ2VSZXNpemVyVGhyZWFkLmggKi87IH07CisJCUIwNEU2QkYyMTFDNkYwRTkwMDIxNDI4MyAv
KiBSZXNpemVPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oICovOyB9
OworCQlCMDRFNkJGNTExQzdGMDc5MDAyMTQyODMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMDE0
QTA0QzExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjA0RTZCRjYx
MUM3RjA3RTAwMjE0MjgzIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIwMTRBMDRBMTFBQjFFQTAwMDE5
NkE3QiAvKiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjA0RjU5RkYxMUM2QUZENjAwMEI1QUMwIC8q
IEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1h
Z2VFbGVtZW50Q3VzdG9tLmNwcCAqLzsgfTsKKwkJQjBBNzE1MUIxMUNDMjRFRTAwM0MzMzczIC8q
IFJlc2l6ZU9wdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjBBNzE1MUExMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9wdGlvbnMuY3BwICov
OyB9OworCQlCMEE3MTVCNzExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIwQTcxNUIzMTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2su
Y3BwICovOyB9OworCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMEE3MTVCNDExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxi
YWNrLmggKi87IH07CisJCUIwQTcxNUI5MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMEE3MTVCNTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suY3BwICovOyB9OworCQlCMEE3MTVCQTExRDA0MzFFMDAzQzMzNzMgLyogSlNJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjay5oICovOyB9OwogCQlCMjAxMTEwNzBBQjc3NDA1MDBEQjBFNjgg
LyogSlNTVkdBRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMjAxMTEwNTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAg
Ki87IH07CiAJCUIyMDExMTA4MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjAxMTEwNjBBQjc3
NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5oICovOyB9OwogCQlCMjExMjdBNjBCMzE4Njc3
MDAwOUJFNTMgLyogSlNTVkdQT0RUeXBlV3JhcHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIxMTI3QTUwQjMxODY3NzAwMDlCRTUzIC8qIEpTU1ZH
UE9EVHlwZVdyYXBwZXIuaCAqLzsgfTsKQEAgLTg4ODMsNiArODg5MiwxNyBAQAogCQlCMDE0OUU3
QTExQTRCMjE1MDAxOTZBN0IgLyogQXN5bmNJbWFnZVJlc2l6ZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQXN5bmNJbWFnZVJlc2l6ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQjAxNDlFN0IxMUE0QjIxNTAwMTk2QTdCIC8qIEltYWdlUmVzaXplclRocmVh
ZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbWFnZVJlc2l6ZXJU
aHJlYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMDE0OUU3QzExQTRCMjE1
MDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEltYWdlUmVzaXplclRocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMDE0QTA0QTExQUIxRUEwMDAxOTZBN0IgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwMTRBMDRDMTFBQjFFQTAw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwNEU2QkYxMTFDNkYwRTkwMDIxNDI4MyAvKiBSZXNpemVP
cHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc2l6ZU9wdGlvbnMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjA0RjU5RkQxMUM2QUZENjAwMEI1QUMw
IC8qIEpTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMEE3MTUxQTExQ0MyNEVFMDAzQzMzNzMgLyogUmVzaXplT3B0aW9u
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNpemVPcHRpb25z
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjBBNzE1NzkxMUQwMUIyMTAwM0Mz
MzczIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMEE3MTU3QTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2Fs
bGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMEE3MTVCMzExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIwQTcxNUI0MTFEMDQzMUUwMDNDMzM3MyAv
KiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIwQTcxNUI1MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1
Y2Nlc3NDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIwQTcxNUI2MTFEMDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCMjAxMTEw
NTBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FFbGVtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyMTEyN0E1MEIzMTg2NzcwMDA5QkU1MyAvKiBKU1NW
R1BPRFR5cGVXcmFwcGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NW
R1BPRFR5cGVXcmFwcGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzc1Miwx
NiArMTM3NzIsMjIgQEAKIAkJCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRh
LmNwcCAqLywKIAkJCQlBNzc5NzkxNDBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmggKi8s
CiAJCQkJQTc3OTc5MTUwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5pZGwgKi8sCisJCQkJ
QjAxNEEwNEExMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCAq
LywKKwkJCQlCMEE3MTU3OTExRDAxQjIxMDAzQzMzNzMgLyogSW1hZ2VSZXNpemVyRXJyb3JDYWxs
YmFjay5pZGwgKi8sCisJCQkJQjAxNEEwNEMxMUFCMUVBMDAwMTk2QTdCIC8qIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNTdBMTFEMDFCMjEwMDNDMzM3MyAvKiBJ
bWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCUIwMTQ5RTdCMTFBNEIyMTUw
MDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuY3BwICovLAogCQkJCUIwMTQ5RTdDMTFBNEIy
MTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJlYWQuaCAqLywKIAkJCQlBNDU2RkEyNDExQUQ0
QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuY3BwICovLAogCQkJCUE0NTZGQTI1MTFBRDRB
ODMwMDIwQjQyMCAvKiBMYWJlbHNOb2RlTGlzdC5oICovLAogCQkJCUY1MjNEMjUwMDJERTQzOTYw
MTg2MzVDQSAvKiBMZWdhY3lIVE1MVHJlZUJ1aWxkZXIuY3BwICovLAogCQkJCUY1MjNEMjUxMDJE
RTQzOTYwMTg2MzVDQSAvKiBMZWdhY3lIVE1MVHJlZUJ1aWxkZXIuaCAqLywKLQkJCQlFNDQ2MTM5
QjBDRDYzMzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5oICovLAotCQkJCUU0NDYxMzlDMENENjMz
MTAwMEZBREE3NSAvKiBNZWRpYUVycm9yLmlkbCAqLywKIAkJCQlFNEQ0QUJFMDBENzU0MkYwMDBG
OTY4NjkgLyogTGVnYWN5UHJlbG9hZFNjYW5uZXIuY3BwICovLAogCQkJCUU0RDRBQkUxMEQ3NTQy
RjEwMEY5Njg2OSAvKiBMZWdhY3lQcmVsb2FkU2Nhbm5lci5oICovLAorCQkJCUU0NDYxMzlCMENE
NjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9yLmggKi8sCisJCQkJRTQ0NjEzOUMwQ0Q2MzMxMDAw
RkFEQTc1IC8qIE1lZGlhRXJyb3IuaWRsICovLAorCQkJCUIwQTcxNTFBMTFDQzI0RUUwMDNDMzM3
MyAvKiBSZXNpemVPcHRpb25zLmNwcCAqLywKKwkJCQlCMDRFNkJGMTExQzZGMEU5MDAyMTQyODMg
LyogUmVzaXplT3B0aW9ucy5oICovLAogCQkJCUE1QUZCMzREMTE1MTUxQTcwMEIwNDVDQiAvKiBT
dGVwUmFuZ2UuY3BwICovLAogCQkJCUE1QUZCMzRFMTE1MTUxQTcwMEIwNDVDQiAvKiBTdGVwUmFu
Z2UuaCAqLywKIAkJCQlCQ0VGNDVFODBFNjg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAq
LywKQEAgLTE0MDAzLDYgKzE0MDI5LDEwIEBACiAJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1
IC8qIEpTSFRNTFZpZGVvRWxlbWVudC5oICovLAogCQkJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFC
OSAvKiBKU0ltYWdlRGF0YS5jcHAgKi8sCiAJCQkJQTc3OTc5MjUwRDZCOUU2NDAwMzg1MUI5IC8q
IEpTSW1hZ2VEYXRhLmggKi8sCisJCQkJQjBBNzE1QjMxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjay5jcHAgKi8sCisJCQkJQjBBNzE1QjQxMUQwNDMxRTAwM0Mz
MzczIC8qIEpTSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjay5oICovLAorCQkJCUIwQTcxNUI1MTFE
MDQzMUUwMDNDMzM3MyAvKiBKU0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8sCisJ
CQkJQjBBNzE1QjYxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxi
YWNrLmggKi8sCiAJCQkJNDlFRUNFRjgxMDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5j
cHAgKi8sCiAJCQkJNDlFRUNFRjkxMDUwNzBDNDAwMDk5RkFCIC8qIEpTSW50MTZBcnJheS5oICov
LAogCQkJCTQ5RUVDRUY2MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0ludDMyQXJyYXkuY3BwICovLApA
QCAtMTU1NzMsNiArMTU2MDMsNyBAQAogCQkJCUJDMkVEN0E0MEM2QzBGMzYwMDkyMEJGRiAvKiBK
U0hUTUxGcmFtZUVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDRDQxQUJBMEMwNjBERTgwMEMw
RTQ0NiAvKiBKU0hUTUxGcmFtZVNldEVsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDMkVENjRG
MEM2QkM0OEMwMDkyMEJGRiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJ
CQlCMDRGNTlGRDExQzZBRkQ2MDAwQjVBQzAgLyogSlNIVE1MSW1hZ2VFbGVtZW50Q3VzdG9tLmNw
cCAqLywKIAkJCQlCQ0M0Mzg3NzBFODg2Q0M3MDA1MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50
Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzMwNUNBMzBDMDc4MUJCMDBDRDIwRjAgLyogSlNIVE1MT2Jq
ZWN0RWxlbWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJNDQ4QUQyN0EwQTQ4MTM3OTAwMjNEMTc5IC8q
IEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTE4MTkyLDYgKzE4MjIz
LDggQEAKIAkJCQkxQTgyMEQ5MjBBMTNFQkE2MDBBRjg0M0MgLyogSW1hZ2VEb2N1bWVudC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMDg5NTgyNTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VP
YnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjA0RTZCRjYxMUM3RjA3RTAwMjE0MjgzIC8q
IEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUIwNEU2QkY1
MTFDN0YwNzkwMDIxNDI4MyAvKiBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovLAogCQkJCUIwMTQ5RTgwMTFBNEIyMTUwMDE5NkE3QiAvKiBJbWFnZVJlc2l6ZXJUaHJl
YWQuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyNzUzNTcxMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFn
ZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNEIzNDgwOTQwRUVGNTBENDAwQUMxQjQxIC8q
IEltYWdlU291cmNlQ0cuaCBpbiBIZWFkZXJzICovLApAQCAtMTg0MjUsNiArMTg0NTgsOCBAQAog
CQkJCUM1NkM5MUE3MTE5RDkxODcwMERFNENEOSAvKiBKU0lEQlN1Y2Nlc3NFdmVudC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkM2QzQ5RjQwRDdEQkEwNTAwRkZBNTU4IC8qIEpTSW1hZ2VDb25zdHJ1
Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc3OTc5MjkwRDZCOUU2NDAwMzg1MUI5IC8qIEpT
SW1hZ2VEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3MTVCODExRDA0MzFFMDAzQzMzNzMg
LyogSlNJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMEE3
MTVCQTExRDA0MzFFMDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovLAogCQkJCUM1RjRGNDExMTE5MzA2QzAwMEZERkFERCAvKiBKU0luZGV4ZWRE
YXRhYmFzZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTdBMEU3NkRCMTBCRjA1OTgwMEEw
Mjc2RSAvKiBKU0luamVjdGVkU2NyaXB0SG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFGMDYw
Q0UwRjVFRUIyQjAwQTA3RUFDIC8qIEpTSW5zcGVjdG9yQmFja2VuZC5oIGluIEhlYWRlcnMgKi8s
CkBAIC0xODk1OSw2ICsxODk5NCw3IEBACiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8q
IFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUw
QTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDQjE2QzJGMDk3OUMzQkQwMDQ2Nzc0MSAvKiBSZXF1ZXN0LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCMDRFNkJGMjExQzZGMEU5MDAyMTQyODMgLyogUmVzaXplT3B0aW9ucy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJOTM0RjcxNDIwRDVBNkY0NDAwMDE4RDY5IC8qIFJlc291cmNlRXJy
b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNv
dXJjZUVycm9yQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VG
M0NEIC8qIFJlc291cmNlSGFuZGxlLmggaW4gSGVhZGVycyAqLywKQEAgLTIwNzQyLDYgKzIwNzc4
LDcgQEAKIAkJCQlCQzQ5MThDODBCRkVBMDUwMDA5RDYzMTYgLyogSlNIVE1MSUZyYW1lRWxlbWVu
dC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzJFRDY1MDBDNkJDNDhDMDA5MjBCRkYgLyogSlNI
VE1MSUZyYW1lRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUUyQUE5NzBB
MUNERDJEMDBCNDJCMjUgLyogSlNIVE1MSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCUIwNEY1OUZGMTFDNkFGRDYwMDBCNUFDMCAvKiBKU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20u
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTgwRTdFOTgwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRN
TElucHV0RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0M0Mzg3ODBFODg2Q0M3MDA1
MzNERDUgLyogSlNIVE1MSW5wdXRFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTFBRTJBQTk5MEExQ0REMkQwMEI0MkIyNSAvKiBKU0hUTUxJc0luZGV4RWxlbWVudC5jcHAgaW4g
U291cmNlcyAqLywKQEAgLTIwODAwLDYgKzIwODM3LDggQEAKIAkJCQlCQzZDNDlGMzBEN0RCQTA1
MDBGRkE1NTggLyogSlNJbWFnZUNvbnN0cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3
Nzk3OTI4MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlBN0QwMzE4RTBFOTM1NDAzMDBFMjRBQ0QgLyogSlNJbWFnZURhdGFDdXN0b20uY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1QjcxMUQwNDMxRTAwM0MzMzczIC8qIEpTSW1hZ2VSZXNp
emVyRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCMEE3MTVCOTExRDA0MzFF
MDAzQzMzNzMgLyogSlNJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQzVGNEY0MTAxMTkzMDZDMDAwRkRGQUREIC8qIEpTSW5kZXhlZERhdGFiYXNlUmVx
dWVzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QTBFNzZEQTEwQkYwNTk4MDBBMDI3NkUgLyog
SlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwRTc2RDUxMEJG
MDUwNzAwQTAyNzZFIC8qIEpTSW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2Vz
ICovLApAQCAtMjEzNDYsNiArMjEzODUsNyBAQAogCQkJCUE4OUNDQzUyMEY0NEU5ODEwMEI1REEx
MCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5
MzMwOUUwOTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQkNCMTZDMkUwOTc5QzNCRDAwNDY3NzQxIC8qIFJlcXVlc3QuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJQjBBNzE1MUIxMUNDMjRFRTAwM0MzMzczIC8qIFJlc2l6ZU9w
dGlvbnMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM0RjcxM0UwRDVBNkYyODAwMDE4RDY5IC8q
IFJlc291cmNlRXJyb3JCYXNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxNEM3NjUwMENFOTIz
NEUwMDdFRjNDRCAvKiBSZXNvdXJjZUVycm9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE0
Qzc2NzgwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmNwcCBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0
b20uY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxJbWFnZUVsZW1lbnRDdXN0b20uY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjM2M2ODkKLS0tIC9kZXYvbnVs
bAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTEltYWdlRWxlbWVudEN1c3RvbS5jcHAK
QEAgLTAsMCArMSwxNjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUK
KyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUg
bmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20K
KyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICog
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
CisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaWYgRU5BQkxFKElNQUdFX1JF
U0laRVIpCisjaW5jbHVkZSAiSlNIVE1MSW1hZ2VFbGVtZW50LmgiCisKKyNpbmNsdWRlICJET01X
aW5kb3cuaCIKKyNpbmNsdWRlICJIVE1MSW1hZ2VFbGVtZW50LmgiCisjaW5jbHVkZSAiSlNJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSlNJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJSZXNpemVPcHRpb25zLmgiCisKKyNpbmNsdWRlIDxydW50
aW1lL0pTRnVuY3Rpb24uaD4KKyNpbmNsdWRlIDxydW50aW1lL0pTU3RyaW5nLmg+CisjaW5jbHVk
ZSA8d3RmL0dldFB0ci5oPgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8
d3RmL1JlZlB0ci5oPgorCit1c2luZyBuYW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK3N0YXRpYyBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4gY3Jl
YXRlSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2YWx1ZSkKK3sKKyAgICBpZiAoIXZhbHVl
LmluaGVyaXRzKCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBzZXRET01FeGNlcHRpb24o
ZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAg
ICBKU09iamVjdCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIHJldHVybiBKU0ltYWdl
UmVzaXplclN1Y2Nlc3NDYWxsYmFjazo6Y3JlYXRlKG9iamVjdCwgZ2xvYmFsT2JqZWN0KTsKK30K
Kworc3RhdGljIFBhc3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gY3JlYXRlSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFjayhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdmFsdWUpCit7CisgICAgLy8gQXJndW1lbnQgaXMgb3B0
aW9uYWwgKGhlbmNlIHVuZGVmaW5lZCBpcyBhbGxvd2VkKSwgYW5kIG51bGwgaXMgYWxsb3dlZC4K
KyAgICBpZiAodmFsdWUuaXNVbmRlZmluZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisK
KyAgICBpZiAoIXZhbHVlLmluaGVyaXRzKCZKU0Z1bmN0aW9uOjppbmZvKSkgeworICAgICAgICBz
ZXRET01FeGNlcHRpb24oZXhlYywgVFlQRV9NSVNNQVRDSF9FUlIpOworICAgICAgICByZXR1cm4g
MDsKKyAgICB9CisKKyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAg
IHJldHVybiBKU0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s6OmNyZWF0ZShvYmplY3QsIGdsb2Jh
bE9iamVjdCk7Cit9CisKK3N0YXRpYyBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IGNyZWF0ZVJl
c2l6ZU9wdGlvbnMoRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHZhbHVlKQoreworICAgIFJlZlB0
cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zID0gUmVzaXplT3B0aW9uczo6Y3JlYXRlKCk7
CisKKyAgICAvLyBBcmd1bWVudCBpcyBvcHRpb25hbCAoaGVuY2UgdW5kZWZpbmVkIGlzIGFsbG93
ZWQpLCBhbmQgbnVsbCBpcyBhbGxvd2VkLgorICAgIGlmICh2YWx1ZS5pc1VuZGVmaW5lZE9yTnVs
bCgpKSB7CisgICAgICAgIC8vIFVzZSBkZWZhdWx0IG9wdGlvbnMuCisgICAgICAgIHJldHVybiBy
ZXNpemVPcHRpb25zLnJlbGVhc2UoKTsKKyAgICB9CisgICAgSlNPYmplY3QqIG9iamVjdCA9IHZh
bHVlLnRvT2JqZWN0KGV4ZWMpOworCisgICAgSlNWYWx1ZSB3aWR0aCA9IG9iamVjdC0+Z2V0KGV4
ZWMsIElkZW50aWZpZXIoZXhlYywgIndpZHRoIikpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCF3aWR0aC5pc1VuZGVmaW5lZCgpKSB7
CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldFdpZHRoKHdpZHRoLnRvSW50MzIoZXhlYykpOwor
ICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gMDsK
KyAgICB9CisKKyAgICBKU1ZhbHVlIGhlaWdodCA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZp
ZXIoZXhlYywgImhlaWdodCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgIHJldHVybiAwOworICAgIGlmICghaGVpZ2h0LmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAg
cmVzaXplT3B0aW9ucy0+c2V0SGVpZ2h0KGhlaWdodC50b0ludDMyKGV4ZWMpKTsKKyAgICAgICAg
aWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgSlNWYWx1ZSBjb21wcmVzc2lvbkxldmVsID0gb2JqZWN0LT5nZXQoZXhlYywgSWRlbnRp
ZmllcihleGVjLCAiY29tcHJlc3Npb25MZXZlbCIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybiAwOworICAgIGlmICghY29tcHJlc3Npb25MZXZlbC5pc1Vu
ZGVmaW5lZCgpKSB7CisgICAgICAgIHJlc2l6ZU9wdGlvbnMtPnNldENvbXByZXNzaW9uTGV2ZWwo
Y29tcHJlc3Npb25MZXZlbC50b051bWJlcihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUg
cHJlc2VydmVBc3BlY3RSYXRpbyA9IG9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywg
InByZXNlcnZlQXNwZWN0UmF0aW8iKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIXByZXNlcnZlQXNwZWN0UmF0aW8uaXNVbmRlZmlu
ZWQoKSkgeworICAgICAgICByZXNpemVPcHRpb25zLT5zZXRBc3BlY3RSYXRpb09wdGlvbihwcmVz
ZXJ2ZUFzcGVjdFJhdGlvLnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgIGlmIChleGVjLT5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEpTVmFsdWUg
b3JpZW50YXRpb24gPSBvYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJvcmllbnRh
dGlvbiIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiAw
OworICAgIGlmICghb3JpZW50YXRpb24uaXNVbmRlZmluZWQoKSkgeworICAgICAgICByZXNpemVP
cHRpb25zLT5zZXRPcmllbnRhdGlvbk9wdGlvbih1c3RyaW5nVG9TdHJpbmcob3JpZW50YXRpb24u
dG9TdHJpbmcoZXhlYykpKTsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgcmV0dXJuIHJlc2l6ZU9wdGlvbnMucmVs
ZWFzZSgpOworfQorCitKU1ZhbHVlIEpTSFRNTEltYWdlRWxlbWVudDo6d2Via2l0R2V0SW1hZ2Uo
RXhlY1N0YXRlKiBleGVjKQoreworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOworCisgICAgY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSA9IHVzdHJpbmdUb1N0cmluZyhleGVjLT5hcmd1bWVudCgwKS50
b1N0cmluZyhleGVjKSk7CisKKyAgICBSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNr
PiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVhdGVJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2soZXhl
Yywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2Jq
ZWN0KCkpLCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBBU1NFUlQoc3VjY2Vzc0NhbGxi
YWNrKTsKKworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiBlcnJvckNhbGxi
YWNrID0gY3JlYXRlSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjayhleGVjLCBzdGF0aWNfY2FzdDxK
U0RPTUdsb2JhbE9iamVjdCo+KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSksIGV4ZWMtPmFy
Z3VtZW50KDIpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOworCisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IHJlc2l6ZU9wdGlv
bnMgPSBjcmVhdGVSZXNpemVPcHRpb25zKGV4ZWMsIGV4ZWMtPmFyZ3VtZW50KDMpKTsKKyAgICBp
ZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwor
ICAgIEFTU0VSVChyZXNpemVPcHRpb25zKTsKKworICAgIEhUTUxJbWFnZUVsZW1lbnQqIGltcCA9
IHN0YXRpY19jYXN0PEhUTUxJbWFnZUVsZW1lbnQqPihpbXBsKCkpOworICAgIGltcC0+d2Via2l0
R2V0SW1hZ2UobWltZVR5cGUsIHN1Y2Nlc3NDYWxsYmFjay5yZWxlYXNlKCksIGVycm9yQ2FsbGJh
Y2sucmVsZWFzZSgpLCByZXNpemVPcHRpb25zLnJlbGVhc2UoKSwgZWMpOworICAgIHNldERPTUV4
Y2VwdGlvbihleGVjLCBlYyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNGUyZTkxMS4u
NDUyMWRmMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBt
CkBAIC0yMTc5LDcgKzIxNzksMTEgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlv
bgogCiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbSAoQHBhcmFtcykgewogICAgICAgICAg
ICAgICAgIG15ICRwYXJhbU5hbWUgPSAkcGFyYW0tPm5hbWU7Ci0gICAgICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0p
KTtcbiIpOworICAgICAgICAgICAgICAgIGlmICgkcGFyYW0tPnR5cGUgZXEgIkRPTVN0cmluZyIp
IHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJncy5hcHBl
bmQoanNTdHJpbmcoZXhlYywgJHtwYXJhbU5hbWV9KSk7XG4iKTsKKyAgICAgICAgICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXJn
cy5hcHBlbmQodG9KUyhleGVjLCAke3BhcmFtTmFtZX0pKTtcbiIpOworICAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4g
ICAgYm9vbCByYWlzZWRFeGNlcHRpb24gPSBmYWxzZTtcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwIGIvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IGRmNDAzYzYu
LjA0M2E2ZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENhbGxiYWNrLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RDYWxsYmFjay5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgYm9vbCBKU1Rlc3RDYWxsYmFjazo6
Y2FsbGJhY2tXaXRoQ2xhc3MyUGFyYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
Q2wKICAgICBFeGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKICAg
ICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKHRvSlMoZXhlYywg
Y2xhc3MyUGFyYW0pKTsKLSAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIHN0ckFyZykpOworICAg
IGFyZ3MuYXBwZW5kKGpzU3RyaW5nKGV4ZWMsIHN0ckFyZykpOwogCiAgICAgYm9vbCByYWlzZWRF
eGNlcHRpb24gPSBmYWxzZTsKICAgICBtX2RhdGEtPmludm9rZUNhbGxiYWNrKGFyZ3MsICZyYWlz
ZWRFeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVy
LmNwcCBiL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5jcHAKaW5kZXggNGJiNzRjOS4u
OWY4YTU2NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmNwcAor
KysgYi9XZWJDb3JlL2h0bWwvQXN5bmNJbWFnZVJlc2l6ZXIuY3BwCkBAIC0zNCwyOCArMzQsMzIg
QEAKICNpbmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgogCiAjaW5jbHVkZSAiQ2FjaGVkSW1h
Z2UuaCIKKyNpbmNsdWRlICJJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAi
SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSW1hZ2VSZXNpemVyVGhy
ZWFkLmgiCisjaW5jbHVkZSAiUmVzaXplT3B0aW9ucy5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZl
ci5oIgorCiAjaW5jbHVkZSA8dXRpbGl0eT4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYXNz
UmVmUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBBc3luY0ltYWdlUmVzaXplcjo6Y3JlYXRlKENhY2hl
ZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2ly
ZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JD
YWxsYmFjaywgZmxvYXQgcXVhbGl0eSwgQXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRp
b24sIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKQordm9pZCBBc3luY0ltYWdl
UmVzaXplcjo6c3RhcnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCwgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlLCBPdXRwdXRUeXBlIG91dHB1dFR5cGUsIFBh
c3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8SW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxSZXNpemVPcHRpb25zPiByZXNpemVPcHRpb25zKQogewotICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgQXN5bmNJbWFnZVJlc2l6ZXIoY2FjaGVkSW1hZ2UsIG91dHB1dFR5cGUsIGRlc2lyZWRC
b3VuZHMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgcXVhbGl0eSwgYXNwZWN0UmF0
aW9PcHRpb24sIG9yaWVudGF0aW9uT3B0aW9uKSk7CisgICAgIG5ldyBBc3luY0ltYWdlUmVzaXpl
cihzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBjYWNoZWRJbWFnZSwgb3V0cHV0VHlwZSwgc3VjY2Vz
c0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKIH0KIAotQXN5bmNJbWFn
ZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSwgT3V0
cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3VuZHMsIFNjcmlwdFZhbHVlIHN1
Y2Nlc3NDYWxsYmFjaywgU2NyaXB0VmFsdWUgZXJyb3JDYWxsYmFjaywgZmxvYXQgcXVhbGl0eSwg
QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIE9yaWVudGF0aW9uT3B0aW9uIG9y
aWVudGF0aW9uT3B0aW9uKQorQXN5bmNJbWFnZVJlc2l6ZXI6OkFzeW5jSW1hZ2VSZXNpemVyKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIENhY2hlZEltYWdl
KiBjYWNoZWRJbWFnZSwgT3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVz
aXplclN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9u
cz4gcmVzaXplT3B0aW9ucykKICAgICA6IG1fY2FjaGVkSW1hZ2UoY2FjaGVkSW1hZ2UpCisgICAg
LCBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAs
IG1fb3V0cHV0VHlwZShvdXRwdXRUeXBlKQogICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3VjY2Vz
c0NhbGxiYWNrKQogICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAgLCBt
X291dHB1dFR5cGUob3V0cHV0VHlwZSkKLSAgICAsIG1fZGVzaXJlZEJvdW5kcyhkZXNpcmVkQm91
bmRzKQotICAgICwgbV9xdWFsaXR5KHF1YWxpdHkpCi0gICAgLCBtX2FzcGVjdFJhdGlvT3B0aW9u
KGFzcGVjdFJhdGlvT3B0aW9uKQotICAgICwgbV9vcmllbnRhdGlvbk9wdGlvbihvcmllbnRhdGlv
bk9wdGlvbikKKyAgICAsIG1fcmVzaXplT3B0aW9ucyhyZXNpemVPcHRpb25zKQogewotICAgIEFT
U0VSVChtX3N1Y2Nlc3NDYWxsYmFjay5pc09iamVjdCgpKTsKKyAgICAvLyBtX2NhbGxiYWNrIGNv
bnRyb2xzIHRoZSBsaWZldGltZSBvZiBBc3luY0ltYWdlUmVzaXplci4KKyAgICBtX2NhbGxiYWNr
SW5mbyA9IG5ldyBDYWxsYmFja0luZm8odGhpcyk7CisgICAgQVNTRVJUKG1fc3VjY2Vzc0NhbGxi
YWNrLmdldCgpKTsKICAgICBtX2NhY2hlZEltYWdlLT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAg
LTY3LDExICs3MSwyMSBAQCB2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpub3RpZnlGaW5pc2hlZChD
YWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gaW1hZ2VEYXRhID0gY2FjaGVkUmVzb3VyY2UtPmRhdGEoKS0+Y29weSgpOwogICAgIGNhY2hl
ZFJlc291cmNlLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgQ2FsbGJhY2tJbmZvKiBjYWxsYmFj
a0luZm8gPSBuZXcgQ2FsbGJhY2tJbmZvKHRoaXMpOwotICAgIGlmICghSW1hZ2VSZXNpemVyVGhy
ZWFkOjpzdGFydChpbWFnZURhdGEsIGNhbGxiYWNrSW5mbywgbV9vdXRwdXRUeXBlLCBtX2Rlc2ly
ZWRCb3VuZHMsIG1fcXVhbGl0eSwgbV9hc3BlY3RSYXRpb09wdGlvbiwgbV9vcmllbnRhdGlvbk9w
dGlvbikpCisgICAgaWYgKCFJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KGltYWdlRGF0YSwgbV9j
YWxsYmFja0luZm8sIG1fb3V0cHV0VHlwZSwgSW50U2l6ZShtX3Jlc2l6ZU9wdGlvbnMtPndpZHRo
KCksIG1fcmVzaXplT3B0aW9ucy0+aGVpZ2h0KCkpLCBtX3Jlc2l6ZU9wdGlvbnMtPmNvbXByZXNz
aW9uTGV2ZWwoKSwgbV9yZXNpemVPcHRpb25zLT5hc3BlY3RSYXRpb09wdGlvbigpLCBtX3Jlc2l6
ZU9wdGlvbnMtPm9yaWVudGF0aW9uT3B0aW9uKCkpKQogICAgICAgICByZXNpemVFcnJvcigpOwog
fQogCit2b2lkIEFzeW5jSW1hZ2VSZXNpemVyOjpyZXNpemVDb21wbGV0ZShSZWZQdHI8QmxvYj4g
YmxvYikKK3sKKyAgICBtX3N1Y2Nlc3NDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVj
dXRpb25Db250ZXh0LCBibG9iLmdldCgpKTsKK30KKwordm9pZCBBc3luY0ltYWdlUmVzaXplcjo6
cmVzaXplRXJyb3IoKQoreworICAgIGlmIChtX2Vycm9yQ2FsbGJhY2suZ2V0KCkpCisgICAgICAg
IG1fZXJyb3JDYWxsYmFjay0+aGFuZGxlRXZlbnQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LCAi
VW5leHBlY3RlZCBlcnJvciB3aGlsZSByZXNpemluZyBpbWFnZSIpOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoSU1BR0VfUkVTSVpFUikKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaHRtbC9Bc3luY0ltYWdlUmVzaXplci5oIGIvV2ViQ29yZS9odG1sL0FzeW5j
SW1hZ2VSZXNpemVyLmgKaW5kZXggYWRkMDcwYS4uNzkyNmFjYyAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9odG1sL0FzeW5jSW1hZ2VSZXNpemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0FzeW5jSW1hZ2VS
ZXNpemVyLmgKQEAgLTM2LDEyICszNiwxNSBAQAogI2luY2x1ZGUgIkJsb2IuaCIKICNpbmNsdWRl
ICJDYWNoZWRSZXNvdXJjZUNsaWVudC5oIgogI2luY2x1ZGUgIkludFNpemUuaCIKLSNpbmNsdWRl
ICJTY3JpcHRWYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZElt
YWdlOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIEltYWdlUmVzaXpl
clN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKK2NsYXNzIFJlc2l6
ZU9wdGlvbnM7CitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCiAvLyBBc3luY0ltYWdl
UmVzaXplciB3YWl0cyBmb3IgdGhlIENhY2hlZEltYWdlIHRoYXQgaXMgcGFzc2VkIGluIHRvIGxv
YWQgY29tcGxldGVseSwKIC8vIHRoZW4gc3RhcnRzIGFuIEltYWdlUmVzaXplclRocmVhZCB0byBy
ZXNpemUgdGhlIGltYWdlLiBPbmNlIGNyZWF0ZWQsIEltYWdlUmVzaXplclRocmVhZApAQCAtNDks
NTYgKzUyLDQyIEBAIGNsYXNzIEltYWdlUmVzaXplclRocmVhZDsKIC8vIG9jY3VyLCBib3RoIG9i
amVjdHMgYXJlIGRlc3Ryb3llZC4gSWYgdGhlIGRvY3VtZW50IGlzIGRlc3Ryb3llZCBkdXJpbmcg
cmVzaXppbmcsCiAvLyBBc3luY0ltYWdlUmVzaXplciB3aWxsIHJlY2VpdmUgYSBub3RpZmljYXRp
b24gYW5kIHN1YnNlcXVlbnRseSBibG9jayB0aGUgY2FsbGJhY2tzIGZyb20KIC8vIG9jY3Vycmlu
Zy4KLWNsYXNzIEFzeW5jSW1hZ2VSZXNpemVyIDogcHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50
LCBwdWJsaWMgUmVmQ291bnRlZDxBc3luY0ltYWdlUmVzaXplcj4geworY2xhc3MgQXN5bmNJbWFn
ZVJlc2l6ZXIgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQgewogcHVibGljOgogICAgIHN0
cnVjdCBDYWxsYmFja0luZm8gewotICAgICAgICBDYWxsYmFja0luZm8oUGFzc1JlZlB0cjxBc3lu
Y0ltYWdlUmVzaXplcj4gYXN5bmNJbWFnZVJlc2l6ZXIpCisgICAgICAgIENhbGxiYWNrSW5mbyhQ
YXNzT3duUHRyPEFzeW5jSW1hZ2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcikKICAgICAgICAg
ICAgIDogYXN5bmNJbWFnZVJlc2l6ZXIoYXN5bmNJbWFnZVJlc2l6ZXIpCiAgICAgICAgICAgICAs
IGJsb2IoMCkKICAgICAgICAgewogICAgICAgICB9CiAKLSAgICAgICAgUmVmUHRyPEFzeW5jSW1h
Z2VSZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcjsKKyAgICAgICAgT3duUHRyPEFzeW5jSW1hZ2VS
ZXNpemVyPiBhc3luY0ltYWdlUmVzaXplcjsKICAgICAgICAgUmVmUHRyPEJsb2I+IGJsb2I7CiAg
ICAgfTsKLSAgICAKKwogICAgIGVudW0gT3V0cHV0VHlwZSB7CiAgICAgICAgIEpQRUcsCiAgICAg
ICAgIFBORwogICAgIH07CiAKLSAgICBlbnVtIEFzcGVjdFJhdGlvT3B0aW9uIHsKLSAgICAgICAg
UHJlc2VydmVBc3BlY3RSYXRpbywKLSAgICAgICAgSWdub3JlQXNwZWN0UmF0aW8KLSAgICB9Owot
Ci0gICAgZW51bSBPcmllbnRhdGlvbk9wdGlvbiB7Ci0gICAgICAgIENvcnJlY3RPcmllbnRhdGlv
biwKLSAgICAgICAgSWdub3JlT3JpZW50YXRpb24KLSAgICB9OwotCi0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8QXN5bmNJbWFnZVJlc2l6ZXI+IGNyZWF0ZShDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUs
IEludFNpemUgZGVzaXJlZEJvdW5kcywgU2NyaXB0VmFsdWUgc3VjY2Vzc0NhbGxiYWNrLCBTY3Jp
cHRWYWx1ZSBlcnJvckNhbGxiYWNrLCBmbG9hdCBxdWFsaXR5LCBBc3BlY3RSYXRpb09wdGlvbiwg
T3JpZW50YXRpb25PcHRpb24pOworICAgIHN0YXRpYyB2b2lkIHN0YXJ0KFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBDYWNoZWRJbWFnZSosIE91dHB1dFR5cGUsIFBhc3NSZWZQdHI8SW1hZ2VSZXNp
emVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNr
PiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPik7CiAgICAgfkFzeW5jSW1hZ2VSZXNpemVyKCk7
CiAKLSAgICAvLyBGSVhNRTogSW5zZXJ0IG92ZXJyaWRlIGZ1bmN0aW9uIGZvciBub3RpZmljYXRp
b24gb2YgZG9jdW1lbnQgZGVzdHJ1Y3Rpb24gKGNoYW5nZSBtX2NhbGxiYWNrc09rKS4KLQotICAg
IHZvaWQgcmVzaXplQ29tcGxldGUoUmVmUHRyPEJsb2I+KSB7IC8qIEZJWE1FOiBOb3QgeWV0IGlt
cGxlbWVudGVkLiAqLyB9Ci0gICAgdm9pZCByZXNpemVFcnJvcigpIHsgLyogRklYTUU6IE5vdCB5
ZXQgaW1wbGVtZW50ZWQuICovIH0KKyAgICB2b2lkIHJlc2l6ZUNvbXBsZXRlKFJlZlB0cjxCbG9i
Pik7CisgICAgdm9pZCByZXNpemVFcnJvcigpOwogCiBwcml2YXRlOgotICAgIEFzeW5jSW1hZ2VS
ZXNpemVyKENhY2hlZEltYWdlKiwgT3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBT
Y3JpcHRWYWx1ZSBzdWNjZXNzQ2FsbGJhY2ssIFNjcmlwdFZhbHVlIGVycm9yQ2FsbGJhY2ssIGZs
b2F0IHF1YWxpdHksIEFzcGVjdFJhdGlvT3B0aW9uLCBPcmllbnRhdGlvbk9wdGlvbik7CisgICAg
QXN5bmNJbWFnZVJlc2l6ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIENhY2hlZEltYWdlKiwg
T3V0cHV0VHlwZSwgUGFzc1JlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFJlc2l6ZU9wdGlv
bnM+KTsKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UqKTsK
IAogICAgIENhY2hlZEltYWdlKiBtX2NhY2hlZEltYWdlOwotICAgIFNjcmlwdFZhbHVlIG1fc3Vj
Y2Vzc0NhbGxiYWNrOwotICAgIFNjcmlwdFZhbHVlIG1fZXJyb3JDYWxsYmFjazsKLSAgICAKLSAg
ICAvLyBQYXJhbWV0ZXJzIHRvIHBhc3MgaW50byBJbWFnZVJlc2l6ZXJUaHJlYWQuCisgICAgQ2Fs
bGJhY2tJbmZvKiBtX2NhbGxiYWNrSW5mbzsKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBt
X3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CisKICAgICBPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsK
LSAgICBJbnRTaXplIG1fZGVzaXJlZEJvdW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAg
QXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRpb09wdGlvbjsKLSAgICBPcmllbnRhdGlvbk9w
dGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2s+IG1fc3VjY2Vzc0NhbGxiYWNrOworICAgIFJlZlB0cjxJbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrPiBtX2Vycm9yQ2FsbGJhY2s7CisgICAgUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IG1f
cmVzaXplT3B0aW9uczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MSW1h
Z2VFbGVtZW50LmNwcAppbmRleCA1ZDU5MjNkLi45ODI4Yjc5IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVs
ZW1lbnQuY3BwCkBAIC0yOCwxMyArMjgsMjIgQEAKICNpbmNsdWRlICJDU1NQcm9wZXJ0eU5hbWVz
LmgiCiAjaW5jbHVkZSAiQ1NTVmFsdWVLZXl3b3Jkcy5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMu
aCIKKyNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSAiRnJhbWVWaWV3LmgiCiAj
aW5jbHVkZSAiSFRNTERvY3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1FbGVtZW50LmgiCiAj
aW5jbHVkZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVkZSAiSW1hZ2UuaCIKKyNpbmNsdWRlICJJbWFn
ZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIKKyNpbmNsdWRlICJSZXNpemVPcHRp
b25zLmgiCiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5oIgogCisjaWYgRU5BQkxFKElN
QUdFX1JFU0laRVIpCisjaW5jbHVkZSAiQXN5bmNJbWFnZVJlc2l6ZXIuaCIKKyNlbmRpZgorCiB1
c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00NTEsNCArNDYw
LDM0IEBAIHZvaWQgSFRNTEltYWdlRWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQo
KQogICAgIEhUTUxFbGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpOwogfQogCisj
aWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKK3ZvaWQgSFRNTEltYWdlRWxlbWVudDo6d2Via2l0
R2V0SW1hZ2UoU3RyaW5nIG1pbWVUeXBlLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplclN1Y2Nlc3ND
YWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPEltYWdlUmVzaXplckVycm9yQ2Fs
bGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UmVzaXplT3B0aW9ucz4gcmVzaXplT3B0
aW9ucywgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFzcmMoKS5pc1ZhbGlkKCkpIHsK
KyAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIC8vIFRoZSB0YWludHNDYW52YXMgbWV0aG9kIGFsc28gYWxsb3dzIGRhdGEgVVJMcy4K
KyAgICBpZiAoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+dGFpbnRzQ2FudmFzKHNyYygp
KSkgeworICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGU7CisgICAgaWYg
KG1pbWVUeXBlID09ICJpbWFnZS9qcGVnIikKKyAgICAgICAgb3V0cHV0VHlwZSA9IEFzeW5jSW1h
Z2VSZXNpemVyOjpKUEVHOworICAgIGVsc2UgaWYgKG1pbWVUeXBlID09ICJpbWFnZS9wbmciKQor
ICAgICAgICBvdXRwdXRUeXBlID0gQXN5bmNJbWFnZVJlc2l6ZXI6OlBORzsKKyAgICBlbHNlIHsK
KyAgICAgICAgZWMgPSBOT1RfU1VQUE9SVEVEX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIEFzeW5jSW1hZ2VSZXNpemVyOjpzdGFydChzY3JpcHRFeGVjdXRpb25Db250ZXh0KCks
IG1faW1hZ2VMb2FkZXIuaW1hZ2UoKSwgb3V0cHV0VHlwZSwgc3VjY2Vzc0NhbGxiYWNrLCBlcnJv
ckNhbGxiYWNrLCByZXNpemVPcHRpb25zKTsKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9S
RVNJWkVSKQorCiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5o
IGIvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAppbmRleCA2MmQzMTVjLi40MTFiYmIz
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCisrKyBiL1dlYkNv
cmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmgKQEAgLTMxLDYgKzMxLDkgQEAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgSW1hZ2VSZXNpemVyU3Vj
Y2Vzc0NhbGxiYWNrOworY2xhc3MgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFjazsKK2NsYXNzIFJl
c2l6ZU9wdGlvbnM7CiAKIGNsYXNzIEhUTUxJbWFnZUVsZW1lbnQgOiBwdWJsaWMgSFRNTEVsZW1l
bnQgewogICAgIGZyaWVuZCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CkBAIC04OSw2ICs5MiwxMiBA
QCBwdWJsaWM6CiAKICAgICBib29sIGhhdmVGaXJlZExvYWRFdmVudCgpIGNvbnN0IHsgcmV0dXJu
IG1faW1hZ2VMb2FkZXIuaGF2ZUZpcmVkTG9hZEV2ZW50KCk7IH0KIAorI2lmIEVOQUJMRShJTUFH
RV9SRVNJWkVSKQorCisgICAgdm9pZCB3ZWJraXRHZXRJbWFnZShTdHJpbmcgbWltZVR5cGUsIFBh
c3NSZWZQdHI8SW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrPiwgUGFzc1JlZlB0cjxJbWFnZVJl
c2l6ZXJFcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiwgRXhjZXB0aW9u
Q29kZSYpOworCisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIEhUTUxJbWFnZUVsZW1lbnQoY29u
c3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50KiwgSFRNTEZvcm1FbGVtZW50KiA9IDApOwogCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwgYi9XZWJDb3JlL2h0
bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKaW5kZXggMGZjNzI3MS4uYWUzYzVlNCAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCisrKyBiL1dlYkNvcmUvaHRtbC9I
VE1MSW1hZ2VFbGVtZW50LmlkbApAQCAtNDgsNiArNDgsMTQgQEAgbW9kdWxlIGh0bWwgewogICAg
ICAgICAvLyBPYmplY3RpdmUtQyBleHRlbnNpb246CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgYWx0RGlzcGxheVN0cmluZzsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFVSTCBhYnNvbHV0ZUltYWdlVVJMOworI2Vsc2UKKworI2lmIGRlZmluZWQoRU5BQkxFX0lNQUdF
X1JFU0laRVIpICYmIEVOQUJMRV9JTUFHRV9SRVNJWkVSCisgICAgICAgIC8vIEZ1bmN0aW9ucwor
ICAgICAgICBbQ3VzdG9tXSB2b2lkIHdlYmtpdEdldEltYWdlKGluIERPTVN0cmluZyBtaW1lVHlw
ZSwgaW4gSW1hZ2VSZXNpemVyU3VjY2Vzc0NhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgW09wdGlv
bmFsXSBpbiBJbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2ssIFtPcHRpb25h
bF0gaW4gUmVzaXplT3B0aW9ucyBvcHRpb25zKQorICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2Vw
dGlvbik7CisjZW5kaWYKKwogI2VuZGlmCiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9o
dG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJFcnJvckNhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjZm
ZmY4NgotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNh
bGxiYWNrLmgKQEAgLTAsMCArMSw1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisg
KiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW1hZ2VSZXNpemVyRXJyb3JDYWxsYmFj
a19oCisjZGVmaW5lIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2tfaAorCisjaWYgRU5BQkxFKElN
QUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CitjbGFzcyBTdHJpbmc7
CisKK2NsYXNzIEltYWdlUmVzaXplckVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxJ
bWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+SW1hZ2VS
ZXNpemVyRXJyb3JDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJikgPSAwOworfTsKKworfQorCisj
ZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNlbmRpZiAvLyBJbWFnZVJlc2l6ZXJF
cnJvckNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJv
ckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJFcnJvckNhbGxiYWNrLmlk
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZmNjYmY4Ci0tLSAvZGV2L251
bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplckVycm9yQ2FsbGJhY2suaWRsCkBAIC0w
LDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1l
dDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCittb2R1bGUgc3RvcmFnZSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29u
ZGl0aW9uYWw9SU1BR0VfUkVTSVpFUiwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEltYWdlUmVz
aXplckVycm9yQ2FsbGJhY2sgeworICAgICAgICBib29sZWFuIGhhbmRsZUV2ZW50KGluIERPTVN0
cmluZyBlcnJvcik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9JbWFnZVJl
c2l6ZXJTdWNjZXNzQ2FsbGJhY2suaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNjZXNz
Q2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NDQwMGYzCi0t
LSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFj
ay5oCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
ICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19o
CisjZGVmaW5lIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoSU1B
R0VfUkVTSVpFUikKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Citj
bGFzcyBTdHJpbmc7CisKK2NsYXNzIEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjayA6IHB1Ymxp
YyBSZWZDb3VudGVkPEltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaz4geworcHVibGljOgorICAg
IHZpcnR1YWwgfkltYWdlUmVzaXplclN1Y2Nlc3NDYWxsYmFjaygpIHsgfQorICAgIHZpcnR1YWwg
Ym9vbCBoYW5kbGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgQmxvYiopID0gMDsKK307
CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorCisjZW5kaWYgLy8gSW1h
Z2VSZXNpemVyRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSW1hZ2VS
ZXNpemVyU3VjY2Vzc0NhbGxiYWNrLmlkbCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJTdWNj
ZXNzQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwZmQ4
N2YKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2h0bWwvSW1hZ2VSZXNpemVyU3VjY2Vzc0Nh
bGxiYWNrLmlkbApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIHN0b3JhZ2UgeworICAgIGludGVyZmFj
ZSBbCisgICAgICAgIENvbmRpdGlvbmFsPUlNQUdFX1JFU0laRVIsCisgICAgICAgIENhbGxiYWNr
CisgICAgXSBJbWFnZVJlc2l6ZXJTdWNjZXNzQ2FsbGJhY2sgeworICAgICAgICBib29sZWFuIGhh
bmRsZUV2ZW50KGluIEJsb2IgYmxvYik7CisgICAgfTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuY3BwIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAKaW5kZXggMWJhZTZhMC4uNjdhZmM3OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0ltYWdlUmVzaXplclRocmVhZC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJCaXRtYXBJbWFnZS5oIgogI2lu
Y2x1ZGUgIkltYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKICNpbmNsdWRlIDx1
dGlsaXR5PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MCw3ICs1MSw3IEBAIHN0YXRpYyB2
b2lkIHJldHVybkJsb2JPckVycm9yKHZvaWQqIGNhbGxiYWNrSW5mb3JtYXRpb24pCiAgICAgZGVs
ZXRlIGNhbGxiYWNrSW5mbzsKIH0KIAotYm9vbCBJbWFnZVJlc2l6ZXJUaHJlYWQ6OnN0YXJ0KFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm8qIGNhbGxiYWNrSW5mbywgQXN5bmNJbWFnZVJlc2l6ZXI6Ok91dHB1dFR5cGUgb3V0
cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdl
UmVzaXplcjo6QXNwZWN0UmF0aW9PcHRpb24gYXNwZWN0UmF0aW9PcHRpb24sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlvbikKK2Jvb2wgSW1hZ2VS
ZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBB
c3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiBjYWxsYmFja0luZm8sIEFzeW5jSW1hZ2VS
ZXNpemVyOjpPdXRwdXRUeXBlIG91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZG91
YmxlIHF1YWxpdHksIFJlc2l6ZU9wdGlvbnM6OkFzcGVjdFJhdGlvT3B0aW9uIGFzcGVjdFJhdGlv
T3B0aW9uLCBSZXNpemVPcHRpb25zOjpPcmllbnRhdGlvbk9wdGlvbiBvcmllbnRhdGlvbk9wdGlv
bikKIHsKICAgICBJbWFnZVJlc2l6ZXJUaHJlYWQqIGltYWdlUmVzaXplclRocmVhZCA9IG5ldyBJ
bWFnZVJlc2l6ZXJUaHJlYWQoY2FsbGJhY2tJbmZvLCBvdXRwdXRUeXBlLCBkZXNpcmVkQm91bmRz
LCBxdWFsaXR5LCBhc3BlY3RSYXRpb09wdGlvbiwgb3JpZW50YXRpb25PcHRpb24pOwogCkBAIC02
Miw3ICs2Myw3IEBAIGJvb2wgSW1hZ2VSZXNpemVyVGhyZWFkOjpzdGFydChQYXNzUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzCiAgICAgcmV0dXJuIGltYWdlUmVz
aXplclRocmVhZC0+bV90aHJlYWRJRDsKIH0KIAotSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJl
c2l6ZXJUaHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZv
LCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2ly
ZWRCb3VuZHMsIGZsb2F0IHF1YWxpdHksIEFzeW5jSW1hZ2VSZXNpemVyOjpBc3BlY3RSYXRpb09w
dGlvbiBhc3BlY3RSYXRpb09wdGlvbiwgQXN5bmNJbWFnZVJlc2l6ZXI6Ok9yaWVudGF0aW9uT3B0
aW9uIG9yaWVudGF0aW9uT3B0aW9uKQorSW1hZ2VSZXNpemVyVGhyZWFkOjpJbWFnZVJlc2l6ZXJU
aHJlYWQoQXN5bmNJbWFnZVJlc2l6ZXI6OkNhbGxiYWNrSW5mbyogY2FsbGJhY2tJbmZvLCBBc3lu
Y0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSBvdXRwdXRUeXBlLCBJbnRTaXplIGRlc2lyZWRCb3Vu
ZHMsIGRvdWJsZSBxdWFsaXR5LCBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBhc3Bl
Y3RSYXRpb09wdGlvbiwgUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gb3JpZW50YXRp
b25PcHRpb24pCiAgICAgOiBtX3RocmVhZElEKDApCiAgICAgLCBtX2NhbGxiYWNrSW5mbyhjYWxs
YmFja0luZm8pCiAgICAgLCBtX291dHB1dFR5cGUob3V0cHV0VHlwZSkKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9JbWFnZVJlc2l6ZXJUaHJlYWQuaCBiL1dlYkNvcmUvaHRtbC9JbWFnZVJlc2l6
ZXJUaHJlYWQuaAppbmRleCBhZTVhZGU1Li4xNWJkM2JkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSW1hZ2VSZXNpemVyVGhyZWFkLmgKKysrIGIvV2ViQ29yZS9odG1sL0ltYWdlUmVzaXplclRo
cmVhZC5oCkBAIC0zNCw2ICszNCw4IEBACiAjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCiAKICNp
bmNsdWRlICJBc3luY0ltYWdlUmVzaXplci5oIgorI2luY2x1ZGUgIkludFNpemUuaCIKKyNpbmNs
dWRlICJSZXNpemVPcHRpb25zLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDIsMTEg
KzQ0LDExIEBAIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAogY2xhc3MgSW1hZ2VSZXNpemVyVGhyZWFk
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgYm9vbCBzdGFydChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gaW1hZ2VEYXRhLCBBc3luY0ltYWdlUmVzaXplcjo6Q2FsbGJhY2tJbmZvKiwgQXN5bmNJbWFn
ZVJlc2l6ZXI6Ok91dHB1dFR5cGUsIEludFNpemUgZGVzaXJlZEJvdW5kcywgZmxvYXQgcXVhbGl0
eSwgQXN5bmNJbWFnZVJlc2l6ZXI6OkFzcGVjdFJhdGlvT3B0aW9uLCBBc3luY0ltYWdlUmVzaXpl
cjo6T3JpZW50YXRpb25PcHRpb24pOworICAgIHN0YXRpYyBib29sIHN0YXJ0KFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBpbWFnZURhdGEsIEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8q
LCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBk
b3VibGUgcXVhbGl0eSwgUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9w
dGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uKTsKICAgICB+SW1hZ2VSZXNpemVyVGhyZWFkKCk7CiAK
IHByaXZhdGU6Ci0gICAgSW1hZ2VSZXNpemVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxs
YmFja0luZm8qLCBBc3luY0ltYWdlUmVzaXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVk
Qm91bmRzLCBmbG9hdCBxdWFsaXR5LCBBc3luY0ltYWdlUmVzaXplcjo6QXNwZWN0UmF0aW9PcHRp
b24sIEFzeW5jSW1hZ2VSZXNpemVyOjpPcmllbnRhdGlvbk9wdGlvbik7CisgICAgSW1hZ2VSZXNp
emVyVGhyZWFkKEFzeW5jSW1hZ2VSZXNpemVyOjpDYWxsYmFja0luZm8qLCBBc3luY0ltYWdlUmVz
aXplcjo6T3V0cHV0VHlwZSwgSW50U2l6ZSBkZXNpcmVkQm91bmRzLCBkb3VibGUgcXVhbGl0eSwg
UmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9PcHRpb24sIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0
aW9uT3B0aW9uKTsKICAgICBzdGF0aWMgdm9pZCogaW1hZ2VSZXNpemVyVGhyZWFkU3RhcnQodm9p
ZCopOwogICAgIHZvaWQqIGltYWdlUmVzaXplclRocmVhZCgpOwogCkBAIC01OCw5ICs2MCw5IEBA
IHByaXZhdGU6CiAgICAgUmVmUHRyPEJpdG1hcEltYWdlPiBtX2ltYWdlOwogICAgIEFzeW5jSW1h
Z2VSZXNpemVyOjpPdXRwdXRUeXBlIG1fb3V0cHV0VHlwZTsKICAgICBJbnRTaXplIG1fZGVzaXJl
ZEJvdW5kczsKLSAgICBmbG9hdCBtX3F1YWxpdHk7Ci0gICAgQXN5bmNJbWFnZVJlc2l6ZXI6OkFz
cGVjdFJhdGlvT3B0aW9uIG1fYXNwZWN0UmF0aW9PcHRpb247Ci0gICAgQXN5bmNJbWFnZVJlc2l6
ZXI6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50YXRpb25PcHRpb247CisgICAgZG91YmxlIG1f
cXVhbGl0eTsKKyAgICBSZXNpemVPcHRpb25zOjpBc3BlY3RSYXRpb09wdGlvbiBtX2FzcGVjdFJh
dGlvT3B0aW9uOworICAgIFJlc2l6ZU9wdGlvbnM6Ok9yaWVudGF0aW9uT3B0aW9uIG1fb3JpZW50
YXRpb25PcHRpb247CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9ucy5jcHAgYi9XZWJDb3JlL2h0bWwvUmVzaXplT3B0aW9u
cy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmU2NDk2NAotLS0gL2Rl
di9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmNwcApAQCAtMCwwICsxLDc1
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisg
KiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lmIEVOQUJMRShJTUFHRV9SRVNJWkVSKQorI2luY2x1
ZGUgIlJlc2l6ZU9wdGlvbnMuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworLy8gSW5jbHVzaXZlIGxpbWl0czsKK3N0YXRpYyBjb25zdCBp
bnQgZGltZW5zaW9uc0xvd2VyTGltaXQgPSAxOworc3RhdGljIGNvbnN0IGludCBkaW1lbnNpb25z
VXBwZXJMaW1pdCA9IDMyNzY3Oworc3RhdGljIGNvbnN0IGRvdWJsZSBjb21wcmVzc2lvbkxvd2Vy
TGltaXQgPSAwLjA7CitzdGF0aWMgY29uc3QgZG91YmxlIGNvbXByZXNzaW9uVXBwZXJMaW1pdCA9
IDEuMDsKKworc3RhdGljIGNvbnN0IGRvdWJsZSBkZWZhdWx0Q29tcHJlc3Npb24gPSAwLjg1Owor
CitQYXNzUmVmUHRyPFJlc2l6ZU9wdGlvbnM+IFJlc2l6ZU9wdGlvbnM6OmNyZWF0ZSgpIHsgcmV0
dXJuIGFkb3B0UmVmKG5ldyBSZXNpemVPcHRpb25zKCkpOyB9CisKK1Jlc2l6ZU9wdGlvbnM6OlJl
c2l6ZU9wdGlvbnMoKQorICAgIDogbV93aWR0aCgpCisgICAgLCBtX2hlaWdodCgpCisgICAgLCBt
X2NvbXByZXNzaW9uTGV2ZWwoKQorICAgICwgbV9hc3BlY3RSYXRpb09wdGlvbihJZ25vcmVBc3Bl
Y3RSYXRpbykKKyAgICAsIG1fb3JpZW50YXRpb25PcHRpb24oSWdub3JlT3JpZW50YXRpb24pCit7
Cit9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0V2lkdGgoaW50IHdpZHRoKSB7IG1fd2lkdGgg
PSB3aWR0aCA+PSBkaW1lbnNpb25zTG93ZXJMaW1pdCAmJiB3aWR0aCA8PSBkaW1lbnNpb25zVXBw
ZXJMaW1pdCA/IHdpZHRoIDogMDsgfQoraW50IFJlc2l6ZU9wdGlvbnM6OndpZHRoKCkgeyByZXR1
cm4gbV93aWR0aDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNldEhlaWdodChpbnQgaGVpZ2h0
KSB7IG1faGVpZ2h0ID0gaGVpZ2h0ID49IGRpbWVuc2lvbnNMb3dlckxpbWl0ICYmIGhlaWdodCA8
PSBkaW1lbnNpb25zVXBwZXJMaW1pdCA/IGhlaWdodCA6IDA7IH0KK2ludCBSZXNpemVPcHRpb25z
OjpoZWlnaHQoKSB7IHJldHVybiBtX2hlaWdodDsgfQorCit2b2lkIFJlc2l6ZU9wdGlvbnM6OnNl
dENvbXByZXNzaW9uTGV2ZWwoZG91YmxlIGNvbXByZXNzaW9uTGV2ZWwpIHsgbV9jb21wcmVzc2lv
bkxldmVsID0gY29tcHJlc3Npb25MZXZlbCA+PSBjb21wcmVzc2lvbkxvd2VyTGltaXQgJiYgY29t
cHJlc3Npb25MZXZlbCA8PSBjb21wcmVzc2lvblVwcGVyTGltaXQgPyBjb21wcmVzc2lvbkxldmVs
IDogZGVmYXVsdENvbXByZXNzaW9uOyB9Citkb3VibGUgUmVzaXplT3B0aW9uczo6Y29tcHJlc3Np
b25MZXZlbCgpIHsgcmV0dXJuIG1fY29tcHJlc3Npb25MZXZlbDsgfQorCit2b2lkIFJlc2l6ZU9w
dGlvbnM6OnNldEFzcGVjdFJhdGlvT3B0aW9uKGJvb2wgcHJlc2VydmVBc3BlY3RSYXRpbykgeyBt
X2FzcGVjdFJhdGlvT3B0aW9uID0gcHJlc2VydmVBc3BlY3RSYXRpbyA/IFByZXNlcnZlQXNwZWN0
UmF0aW8gOiBJZ25vcmVBc3BlY3RSYXRpbzsgfQorUmVzaXplT3B0aW9uczo6QXNwZWN0UmF0aW9P
cHRpb24gUmVzaXplT3B0aW9uczo6YXNwZWN0UmF0aW9PcHRpb24oKSB7IHJldHVybiBtX2FzcGVj
dFJhdGlvT3B0aW9uOyB9CisKK3ZvaWQgUmVzaXplT3B0aW9uczo6c2V0T3JpZW50YXRpb25PcHRp
b24oU3RyaW5nIG9yaWVudGF0aW9uT3B0aW9uKSB7IG1fb3JpZW50YXRpb25PcHRpb24gPSBvcmll
bnRhdGlvbk9wdGlvbiA9PSAiYXV0byIgPyBDb3JyZWN0T3JpZW50YXRpb24gOiBJZ25vcmVPcmll
bnRhdGlvbjsgfQorUmVzaXplT3B0aW9uczo6T3JpZW50YXRpb25PcHRpb24gUmVzaXplT3B0aW9u
czo6b3JpZW50YXRpb25PcHRpb24oKSB7IHJldHVybiBtX29yaWVudGF0aW9uT3B0aW9uOyB9CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9SRVNJWkVS
KQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL1Jlc2l6ZU9wdGlvbnMuaCBiL1dlYkNvcmUvaHRt
bC9SZXNpemVPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTg3
YjFkMQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvaHRtbC9SZXNpemVPcHRpb25zLmgKQEAg
LTAsMCArMSw4NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICog
bWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1l
IG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICog
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAq
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpZm5kZWYgUmVzaXplT3B0aW9uc19oCisjZGVmaW5lIFJlc2l6ZU9wdGlv
bnNfaAorCisjaWYgRU5BQkxFKElNQUdFX1JFU0laRVIpCisKKyNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgU3RyaW5nOworCitjbGFzcyBSZXNpemVPcHRpb25zIDogcHVibGljIFJlZkNv
dW50ZWQ8UmVzaXplT3B0aW9ucz4geworcHVibGljOgorICAgIGVudW0gQXNwZWN0UmF0aW9PcHRp
b24geworICAgICAgICBQcmVzZXJ2ZUFzcGVjdFJhdGlvLAorICAgICAgICBJZ25vcmVBc3BlY3RS
YXRpbworICAgIH07CisKKyAgICBlbnVtIE9yaWVudGF0aW9uT3B0aW9uIHsKKyAgICAgICAgQ29y
cmVjdE9yaWVudGF0aW9uLAorICAgICAgICBJZ25vcmVPcmllbnRhdGlvbgorICAgIH07CisKKyAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxSZXNpemVPcHRpb25zPiBjcmVhdGUoKTsKKworICAgIHZvaWQg
c2V0V2lkdGgoaW50IHdpZHRoKTsKKyAgICBpbnQgd2lkdGgoKTsKKworICAgIHZvaWQgc2V0SGVp
Z2h0KGludCBoZWlnaHQpOworICAgIGludCBoZWlnaHQoKTsKKworICAgIHZvaWQgc2V0Q29tcHJl
c3Npb25MZXZlbChkb3VibGUgY29tcHJlc3Npb25MZXZlbCk7CisgICAgZG91YmxlIGNvbXByZXNz
aW9uTGV2ZWwoKTsKKworICAgIHZvaWQgc2V0QXNwZWN0UmF0aW9PcHRpb24oYm9vbCBwcmVzZXJ2
ZUFzcGVjdFJhdGlvKTsKKyAgICBBc3BlY3RSYXRpb09wdGlvbiBhc3BlY3RSYXRpb09wdGlvbigp
OworCisgICAgdm9pZCBzZXRPcmllbnRhdGlvbk9wdGlvbihTdHJpbmcgb3JpZW50YXRpb25PcHRp
b24pOworICAgIE9yaWVudGF0aW9uT3B0aW9uIG9yaWVudGF0aW9uT3B0aW9uKCk7CisKK3ByaXZh
dGU6CisgICAgUmVzaXplT3B0aW9ucygpOworCisgICAgLy8gSWYgbV93aWR0aCBvciBtX2hlaWdo
dCA9PSAwLCB0aGF0IGRpbWVuc2lvbiB3aWxsIG5vdCBjaGFuZ2UgZXhwbGljaXRseSBkdXJpbmcg
cmVzaXppbmcuCisgICAgaW50IG1fd2lkdGg7CisgICAgaW50IG1faGVpZ2h0OworICAgIGRvdWJs
ZSBtX2NvbXByZXNzaW9uTGV2ZWw7CisgICAgQXNwZWN0UmF0aW9PcHRpb24gbV9hc3BlY3RSYXRp
b09wdGlvbjsKKyAgICBPcmllbnRhdGlvbk9wdGlvbiBtX29yaWVudGF0aW9uT3B0aW9uOworfTsK
KworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKElNQUdFX1JFU0la
RVIpCisKKyNlbmRpZiAvLyBSZXNpemVPcHRpb25zX2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>