<?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>201162</bug_id>
          
          <creation_ts>2019-08-26 17:20:02 -0700</creation_ts>
          <short_desc>[WHLSL] Rewrite all tests to use WHLSL and delete the isWHLSL flag</short_desc>
          <delta_ts>2019-08-26 21:59:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>graouts</cc>
    
    <cc>justin_fan</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1565184</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-08-26 17:20:02 -0700</bug_when>
    <thetext>[WHLSL] Make WHLSL the default shading language for WebGPU</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565191</commentid>
    <comment_count>1</comment_count>
      <attachid>377297</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-08-26 17:21:41 -0700</bug_when>
    <thetext>Created attachment 377297
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565207</commentid>
    <comment_count>2</comment_count>
      <attachid>377297</attachid>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-08-26 17:42:16 -0700</bug_when>
    <thetext>Comment on attachment 377297
Patch

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

&gt; LayoutTests/webgpu/whlsl/js/test-harness.js:315
&gt; +        if (this.isMSL) {

should this be &quot;!this.isMSL&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565208</commentid>
    <comment_count>3</comment_count>
      <attachid>377297</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-08-26 17:44:14 -0700</bug_when>
    <thetext>Comment on attachment 377297
Patch

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

&gt;&gt; LayoutTests/webgpu/whlsl/js/test-harness.js:315
&gt;&gt; +        if (this.isMSL) {
&gt; 
&gt; should this be &quot;!this.isMSL&quot;?

Yes, it looks like it should! This must not be tested, though, because all the tests pass. I&apos;ll fix it regardless, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565209</commentid>
    <comment_count>4</comment_count>
      <attachid>377297</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-08-26 17:49:46 -0700</bug_when>
    <thetext>Comment on attachment 377297
Patch

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

r=me too.

&gt; LayoutTests/webgpu/render-pipeline-errors.html:-190
&gt; -&lt;/body&gt;

Is this change intended?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565226</commentid>
    <comment_count>5</comment_count>
      <attachid>377308</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-08-26 19:09:30 -0700</bug_when>
    <thetext>Created attachment 377308
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565227</commentid>
    <comment_count>6</comment_count>
      <attachid>377308</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-08-26 19:15:22 -0700</bug_when>
    <thetext>Comment on attachment 377308
Patch

Can you please keep around an isMSL flag? I use that a lot, and I&apos;d be sad to see it go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565232</commentid>
    <comment_count>7</comment_count>
      <attachid>377310</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-08-26 19:29:06 -0700</bug_when>
    <thetext>Created attachment 377310
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565233</commentid>
    <comment_count>8</comment_count>
      <attachid>377310</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-08-26 19:33:05 -0700</bug_when>
    <thetext>Comment on attachment 377310
Patch

Thanks! r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565241</commentid>
    <comment_count>9</comment_count>
      <attachid>377310</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-26 20:19:15 -0700</bug_when>
    <thetext>Comment on attachment 377310
Patch

Rejecting attachment 377310 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 377310, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 5000 characters of output:
rtyresolver/indexer-ander-lvalue.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/indexer-ander.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/indexer-getter.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/indexer-setter-abstract-lvalue-3-levels.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/indexer-setter-abstract-lvalue.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/indexer-setter-lvalue.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/indexer-setter.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/setter-abstract-lvalue-3-levels.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/setter-abstract-lvalue.html
	M	LayoutTests/webgpu/whlsl/propertyresolver/setter-lvalue.html
	M	LayoutTests/webgpu/whlsl/read-modify-write-high-zombies.html
	M	LayoutTests/webgpu/whlsl/read-modify-write.html
	M	LayoutTests/webgpu/whlsl/return-local-variable.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-10.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-11.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-12.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-13.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-14.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-15.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-16.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-17.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-18.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-19.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-2.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-20.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-21.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-22.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-23.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-24.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-25.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-26.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-27.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-3.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-4.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-5.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-6.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-7.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-8.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules-9.html
	M	LayoutTests/webgpu/whlsl/separate-shader-modules/separate-shader-modules.html
	M	LayoutTests/webgpu/whlsl/simple-arrays.html
	M	LayoutTests/webgpu/whlsl/store-to-property-updates-properly.html
	M	LayoutTests/webgpu/whlsl/textures-getdimensions.html
	M	LayoutTests/webgpu/whlsl/textures-load.html
	M	LayoutTests/webgpu/whlsl/textures-sample.html
	M	LayoutTests/webgpu/whlsl/two-dimensional-array.html
	M	LayoutTests/webgpu/whlsl/use-undefined-variable-2.html
	M	LayoutTests/webgpu/whlsl/use-undefined-variable.html
	M	LayoutTests/webgpu/whlsl/while-loop-break.html
	M	LayoutTests/webgpu/whlsl/while-loop-continue.html
	M	LayoutTests/webgpu/whlsl/whlsl.html
	M	LayoutTests/webgpu/whlsl/zero-initialize-values-2.html
	M	LayoutTests/webgpu/whlsl/zero-initialize-values.html
	M	Source/WebCore/ChangeLog
	M	Source/WebCore/Modules/webgpu/WebGPUDevice.cpp
	M	Source/WebCore/Modules/webgpu/WebGPUShaderModuleDescriptor.h
	M	Source/WebCore/Modules/webgpu/WebGPUShaderModuleDescriptor.idl
	M	Source/WebCore/platform/graphics/gpu/GPUDevice.h
	M	Source/WebCore/platform/graphics/gpu/GPUShaderModuleDescriptor.h
	M	Source/WebCore/platform/graphics/gpu/cocoa/GPUShaderModuleMetal.mm

ERROR from SVN:
Merge conflict during commit: Conflict at &apos;/trunk/Source/WebCore/ChangeLog&apos;
W: 45877a1dff11ec1ad0c6c0bad09bb04ad62a4c16 and refs/remotes/origin/master differ, using rebase:
:040000 040000 1b1b1432a549c9e65e867babb26e9993aa9177ac 53b238c51cc00ec15e5222050f7b54b46b30c81e M	LayoutTests
:040000 040000 16e9a54e41ec53b241b1a2cb7d6a41e5c55781c9 d6594c82d7ba901a5f264f2caee47e2a44d3f3b5 M	Source
Current branch master is up to date.
ERROR: Not all changes have been committed into SVN, however the committed
ones (if any) seem to be successfully integrated into the working tree.
Please see the above messages for details.


Failed to run &quot;[&apos;git&apos;, &apos;svn&apos;, &apos;dcommit&apos;, &apos;--rmdir&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit
Updating OpenSource
Current branch master is up to date.

Full output: https://webkit-queues.webkit.org/results/12971607</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565251</commentid>
    <comment_count>10</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-08-26 21:58:24 -0700</bug_when>
    <thetext>Committed r249131: &lt;https://trac.webkit.org/changeset/249131&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565252</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-08-26 21:59:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/54735330&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377297</attachid>
            <date>2019-08-26 17:21:41 -0700</date>
            <delta_ts>2019-08-26 19:09:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201162-20190826172140.patch</filename>
            <type>text/plain</type>
            <size>123292</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmIxNjkzYjBkNTJjM2Zj
ZjUyNTFmN2QyMzI5MDY2OGMxZTRjMDk1Mi4uNTNmMmU3YmNjNWE3MGQzZGNlMWNkMjBjMmE5MWQ3
OTg1ZGRiZDQ0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE5LTA4LTI2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBN
YWtlIFdITFNMIHRoZSBkZWZhdWx0IHNoYWRpbmcgbGFuZ3VhZ2UgZm9yIFdlYkdQVQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAxMTYyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmF0aGVyIHRoYW4gb3B0
aW5nIGluIHRvIFdITFNMIGJ5IHNheWluZyBpc1dITFNMOnRydWUsCisgICAgICAgIGNvbnRlbnQg
c2hvdWxkIG9wdCBvdXQgaW5zdGVhZCwgYnkgc2F5aW5nIGlzTVNMOnRydWUuCisKKyAgICAgICAg
VGhlIG5leHQgc3RlcCBpcyB0byByZXdyaXRlIGFsbCB0aGUgdGVzdHMgdGhhdCB1c2UgaXNNU0wg
dG8gdXNlIFdITFNMLgorCisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkdQVURldmljZTo6Y3JlYXRlU2hhZGVyTW9kdWxlIGNv
bnN0KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XZWJHUFVTaGFkZXJNb2R1bGVEZXNjcmlw
dG9yLmg6CisgICAgICAgICogTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3Jp
cHRvci5pZGw6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1vZHVs
ZURlc2NyaXB0b3IuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BV
U2hhZGVyTW9kdWxlTWV0YWwubW06CisgICAgICAgIChXZWJDb3JlOjpHUFVTaGFkZXJNb2R1bGU6
OnRyeUNyZWF0ZSk6CisKIDIwMTktMDgtMjQgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNv
bT4KIAogICAgICAgICBbTEZDXVtURkNdIEFkZCBzZWN0aW9uIHJlbmRlcmVycyB0byB0aGUgbGF5
b3V0IHRyZWUgKFRIRUFEL1RCT0RZL1RGT09UKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZ3B1L1dlYkdQVURldmljZS5jcHAKaW5kZXggODVmZGNhM2IyYjk0YmNkZjkxMTEwNmFjMDZl
NmRkMWYwM2M1YjU5OS4uOGM1YTY2ODUwYmFkMWVjMDNhNjYyOTMwNDkyMDgyZjNiMzEzMDcwNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuY3BwCkBA
IC0xNTMsNyArMTUzLDcgQEAgUmVmPFdlYkdQVUJpbmRHcm91cD4gV2ViR1BVRGV2aWNlOjpjcmVh
dGVCaW5kR3JvdXAoY29uc3QgV2ViR1BVQmluZEdyb3VwRGVzY3JpcHQKIFJlZjxXZWJHUFVTaGFk
ZXJNb2R1bGU+IFdlYkdQVURldmljZTo6Y3JlYXRlU2hhZGVyTW9kdWxlKGNvbnN0IFdlYkdQVVNo
YWRlck1vZHVsZURlc2NyaXB0b3ImIGRlc2NyaXB0b3IpIGNvbnN0CiB7CiAgICAgLy8gRklYTUU6
IFdoYXQgY2FuIGJlIHZhbGlkYXRlZCBoZXJlPwotICAgIGF1dG8gbW9kdWxlID0gbV9kZXZpY2Ut
PnRyeUNyZWF0ZVNoYWRlck1vZHVsZShHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yIHsgZGVzY3Jp
cHRvci5jb2RlLCBkZXNjcmlwdG9yLmlzV0hMU0wgfSk7CisgICAgYXV0byBtb2R1bGUgPSBtX2Rl
dmljZS0+dHJ5Q3JlYXRlU2hhZGVyTW9kdWxlKEdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IgeyBk
ZXNjcmlwdG9yLmNvZGUsIGRlc2NyaXB0b3IuaXNNU0wgfSk7CiAgICAgcmV0dXJuIFdlYkdQVVNo
YWRlck1vZHVsZTo6Y3JlYXRlKFdURk1vdmUobW9kdWxlKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVNoYWRlck1vZHVsZURlc2Ny
aXB0b3IuaAppbmRleCBiOGQ5ODE3Y2QwYTk0ZmJiYWZjZDUzODhmNDU5NzBhZjY1MTU1NDEyLi5m
YjVkODkyMjY4OTU0ZWUyODU2YzI5MGNmZGJiN2M5ZjA1MDkzM2RkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hhZGVyTW9kdWxlRGVz
Y3JpcHRvci5oCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RydWN0
IFdlYkdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IgewogICAgIFN0cmluZyBjb2RlOwotICAgIGJv
b2wgaXNXSExTTDsKKyAgICBib29sIGlzTVNMOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hhZGVy
TW9kdWxlRGVzY3JpcHRvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJH
UFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmlkbAppbmRleCA5YTJmNTVjOGYyZTM1N2NmN2RkNDFi
YWQwM2QzYTU2Y2ZkMjJjOTk4Li4wYWVhNmU1OWJjYWNiYjZlYTUyNjEzNjFhNTA5NjYxMWU0OWVl
NmYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVTaGFk
ZXJNb2R1bGVEZXNjcmlwdG9yLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdw
dS9XZWJHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmlkbApAQCAtMjksNSArMjksNSBAQAogICAg
IEVuYWJsZWRBdFJ1bnRpbWU9V2ViR1BVCiBdIGRpY3Rpb25hcnkgV2ViR1BVU2hhZGVyTW9kdWxl
RGVzY3JpcHRvciB7CiAgICAgcmVxdWlyZWQgLypBcnJheUJ1ZmZlciovIERPTVN0cmluZyBjb2Rl
OyAvLyBGSVhNRTogRE9NU3RyaW5nIGZvciBNVEwgcHJvdG90eXBpbmcgb25seS4KLSAgICBib29s
ZWFuIGlzV0hMU0wgPSBmYWxzZTsKKyAgICBib29sZWFuIGlzTVNMID0gZmFsc2U7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1v
ZHVsZURlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9H
UFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmgKaW5kZXggNWMzZWNmNmE3YzAxMTFmMjIyM2NiOWJl
MmY0NDQ4Mzg2OTI1NWZmZi4uZjI0MmM0MDJhZWZhMTI3MTA2NTJmY2IzZTA2NzYzODE5MjVlMWQ5
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNo
YWRlck1vZHVsZURlc2NyaXB0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ncHUvR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5oCkBAIC0zMyw3ICszMyw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogc3RydWN0IEdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3Igewog
ICAgIFN0cmluZyBjb2RlOwotICAgIGJvb2wgaXNXSExTTDsKKyAgICBib29sIGlzTVNMOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVNoYWRlck1vZHVsZU1ldGFsLm1tIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVNoYWRlck1vZHVsZU1ldGFs
Lm1tCmluZGV4IGI4NmYwNTE1NzU3YzI1YTE1YTc0NGRhODM1MzIwNmM2ZmM3NThhMWIuLjVlYTcz
NjNkMDcxODZjMmM3YWUyNzU1NWMyY2VmYzVmOGJlOWE1MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVTaGFkZXJNb2R1bGVNZXRhbC5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVU2hh
ZGVyTW9kdWxlTWV0YWwubW0KQEAgLTQ0LDcgKzQ0LDcgQEAgUmVmUHRyPEdQVVNoYWRlck1vZHVs
ZT4gR1BVU2hhZGVyTW9kdWxlOjp0cnlDcmVhdGUoY29uc3QgR1BVRGV2aWNlJiBkZXZpY2UsIGNv
bnMKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogICAgIAotICAgIGlmIChkZXNjcmlw
dG9yLmlzV0hMU0wpCisgICAgaWYgKCFkZXNjcmlwdG9yLmlzTVNMKQogICAgICAgICByZXR1cm4g
YWRvcHRSZWYobmV3IEdQVVNoYWRlck1vZHVsZShXSExTTDo6Y3JlYXRlU2hhZGVyTW9kdWxlKGRl
c2NyaXB0b3IuY29kZSkpKTsKIAogICAgIFBsYXRmb3JtU2hhZGVyTW9kdWxlU21hcnRQdHIgbW9k
dWxlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IDA1NjQ2YjkwNzg5ODRkOTM0MzM1YTNjZjlmYzQ5NzhiODBhM2Q5OTYuLjRj
NmQ0Mjg4ZDQxNTE5YmVhODkyNzQwYzU1MjY2ZWIyODc5ZmY2YTAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MzAgQEAKKzIwMTktMDgtMjYgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KKworICAgICAgICBbV0hMU0xdIE1ha2UgV0hMU0wgdGhlIGRlZmF1bHQgc2hhZGluZyBsYW5n
dWFnZSBmb3IgV2ViR1BVCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDExNjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIHdlYmdwdS9iaW5kLWdyb3Vwcy5odG1sOgorICAgICAgICAqIHdlYmdwdS9ibGVu
ZC1jb2xvci10cmlhbmdsZS1zdHJpcC5odG1sOgorICAgICAgICAqIHdlYmdwdS9ibGVuZC10cmlh
bmdsZS1zdHJpcC5odG1sOgorICAgICAgICAqIHdlYmdwdS9idWZmZXItY29tbWFuZC1idWZmZXIt
cmFjZXMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvY29sb3Itd3JpdGUtbWFzay10cmlhbmdsZS1z
dHJpcC5odG1sOgorICAgICAgICAqIHdlYmdwdS9jb21wdXRlLXBpcGVsaW5lLWVycm9ycy5odG1s
OgorICAgICAgICAqIHdlYmdwdS9kZXB0aC1lbmFibGVkLXRyaWFuZ2xlLXN0cmlwLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L2RyYXctaW5kZXhlZC10cmlhbmdsZXMuaHRtbDoKKyAgICAgICAgKiB3
ZWJncHUvbXNsLWhhcm5lc3MtdGVzdC5odG1sOgorICAgICAgICAqIHdlYmdwdS9yZW5kZXItY29t
bWFuZC1lbmNvZGluZy5odG1sOgorICAgICAgICAqIHdlYmdwdS9yZW5kZXItcGlwZWxpbmUtZXJy
b3JzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3JlbmRlci1waXBlbGluZXMuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvc2hhZGVyLW1vZHVsZXMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvc2ltcGxl
LXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3RleHR1cmUtdHJpYW5nbGUt
c3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvdmVydGV4LWJ1ZmZlci10cmlhbmdsZS1zdHJp
cC5odG1sOgorICAgICAgICAqIHdlYmdwdS92aWV3cG9ydC1zY2lzc29yLXJlY3QtdHJpYW5nbGUt
c3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvYXJiaXRyYXJ5LXZlcnRleC1hdHRy
aWJ1dGUtbG9jYXRpb25zLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2J1ZmZlci1mcmFn
bWVudC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9idWZmZXItbGVuZ3RoLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L3dobHNsL2J1ZmZlci12ZXJ0ZXguaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFy
aWFibGVzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2NvbXB1dGUuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvZGVyZWZlcmVuY2UtcG9pbnRlci1zaG91bGQtdHlwZS1jaGVjay5o
dG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9kZXZpY2UtcHJvcGVyLXR5cGUtY2hlY2tlci5o
dG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWJyZWFrLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtY29udGludWUuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC5odG1sOgorICAgICAgICAqIHdlYmdwdS93
aGxzbC9kb250LWNyYXNoLXBhcnNpbmctZW51bS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9kb3QtZXhwcmVzc2lvbnMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZHVwbGljYXRl
LXR5cGVzLXNob3VsZC1ub3QtcHJvZHVjZS1kdXBsaWNhdGUtY3RvcnMuaHRtbDoKKyAgICAgICAg
KiB3ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS0yLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMy5o
dG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0
aW1lLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2h1Z2UtYXJyYXkuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvanMvdGVzdC1oYXJuZXNzLmpzOgorICAgICAgICAoY29udmVydFR5
cGVUb0FycmF5VHlwZSk6CisgICAgICAgIChEYXRhKToKKyAgICAgICAgKEhhcm5lc3MpOgorICAg
ICAgICAoSGFybmVzcy5wcm90b3R5cGUuc2V0IGlzTVNMKToKKyAgICAgICAgKEhhcm5lc3MucHJv
dG90eXBlLmdldCBpc01TTCk6CisgICAgICAgIChIYXJuZXNzLnByb3RvdHlwZS5hc3luYy5jYWxs
VHlwZWRGdW5jdGlvbik6CisgICAgICAgIChIYXJuZXNzLnByb3RvdHlwZS5jYWxsVm9pZEZ1bmN0
aW9uKToKKyAgICAgICAgKEhhcm5lc3MucHJvdG90eXBlLmFzeW5jLmNoZWNrQ29tcGlsZUZhaWwp
OgorICAgICAgICAoSGFybmVzcy5wcm90b3R5cGUuX3NldFVwQXJndW1lbnRzKToKKyAgICAgICAg
KEhhcm5lc3MucHJvdG90eXBlLmFzeW5jLl9jYWxsRnVuY3Rpb24pOgorICAgICAgICAoSGFybmVz
cy5wcm90b3R5cGUuc2V0IGlzV0hMU0wpOiBEZWxldGVkLgorICAgICAgICAoSGFybmVzcy5wcm90
b3R5cGUuZ2V0IGlzV0hMU0wpOiBEZWxldGVkLgorICAgICAgICAqIHdlYmdwdS93aGxzbC9sb29w
cy1icmVhay5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9sb29wcy1jb250aW51ZS5odG1s
OgorICAgICAgICAqIHdlYmdwdS93aGxzbC9sb29wcy5odG1sOgorICAgICAgICAqIHdlYmdwdS93
aGxzbC9tYWtlLWFycmF5LXJlZmVyZW5jZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9t
YXRyaXgtMi5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9tYXRyaXgtbWVtb3J5LWxheW91
dC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9tYXRyaXguaHRtbDoKKyAgICAgICAgKiB3
ZWJncHUvd2hsc2wvbmVzdGVkLWRvdC1leHByZXNzaW9uLXJ2YWx1ZS5odG1sOgorICAgICAgICAq
IHdlYmdwdS93aGxzbC9uZXN0ZWQtbG9vcC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9u
dWxsLWRlcmVmZXJlbmNlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL29vYi1hY2Nlc3Mu
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1hYnN0
cmFjdC1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZl
ci9hbmRlci1sdmFsdWUtMy1sZXZlbHMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wv
cHJvcGVydHlyZXNvbHZlci9hbmRlci5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL2dldHRlci5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9wZXJ0
eXJlc29sdmVyL2luZGV4ZXItYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFsdWUtMy1sZXZl
bHMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVy
LWFuZGVyLWx2YWx1ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29s
dmVyL2luZGV4ZXItYW5kZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHly
ZXNvbHZlci9pbmRleGVyLWdldHRlci5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1s
OgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVy
LWFic3RyYWN0LWx2YWx1ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9wZXJ0eXJl
c29sdmVyL2luZGV4ZXItc2V0dGVyLWx2YWx1ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLmh0bWw6CisgICAgICAgICogd2ViZ3B1
L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5o
dG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0
cmFjdC1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZl
ci9zZXR0ZXItbHZhbHVlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5
LXdyaXRlLWhpZ2gtem9tYmllcy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9yZWFkLW1v
ZGlmeS13cml0ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9yZXR1cm4tbG9jYWwtdmFy
aWFibGUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTEuaHRt
bDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMTIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTMuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMTQuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTUuaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MTYuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTcuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTguaHRtbDoK
KyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMtMTkuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMi5odG1sOgorICAgICAgICAq
IHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy0yMC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yMS5odG1sOgorICAgICAgICAqIHdlYmdwdS93
aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yMi5o
dG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy0yMy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNC5odG1sOgorICAg
ICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0yNS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNi5odG1sOgorICAgICAgICAqIHdl
YmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy0yNy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0zLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTQuaHRtbDoK
KyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMtNS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy02Lmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTcuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtOC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy05Lmh0bWw6
CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NpbXBsZS1hcnJh
eXMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc3RvcmUtdG8tcHJvcGVydHktdXBkYXRl
cy1wcm9wZXJseS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC90ZXh0dXJlcy1nZXRkaW1l
bnNpb25zLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3RleHR1cmVzLWxvYWQuaHRtbDoK
KyAgICAgICAgKiB3ZWJncHUvd2hsc2wvdGV4dHVyZXMtc2FtcGxlLmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3R3by1kaW1lbnNpb25hbC1hcnJheS5odG1sOgorICAgICAgICAqIHdlYmdw
dS93aGxzbC91c2UtdW5kZWZpbmVkLXZhcmlhYmxlLTIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUv
d2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJsZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC93aGlsZS1sb29wLWJyZWFrLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3doaWxlLWxv
b3AtY29udGludWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvd2hsc2wuaHRtbDoKKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wvemVyby1pbml0aWFsaXplLXZhbHVlcy0yLmh0bWw6CisgICAg
ICAgICogd2ViZ3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMuaHRtbDoKKwogMjAxOS0w
OC0yMyAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIElu
c3BlY3RvcjogY3JlYXRlIGFkZGl0aW9uYWwgY29tbWFuZCBsaW5lIGFwaSBmdW5jdGlvbnMgZm9y
IG90aGVyIGNvbnNvbGUgbWV0aG9kcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2Jp
bmQtZ3JvdXBzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvYmluZC1ncm91cHMuaHRtbAppbmRl
eCAwODNkYmZiNDM4YWVhNGQ0YmM0YWM0YzMxNmY0YTU3YzRhZjhiZmEzLi4xOWUzYjI1NzM2NTk2
ZWIyYjU1MzVkMDBjOTUxYmU4MWM1ZGQ3ZDkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvYmluZC1ncm91cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvYmluZC1ncm91cHMu
aHRtbApAQCAtMzUsNyArMzUsNyBAQCB0ZXN0c1siQ3JlYXRlIGFuZCB1c2UgYSBiYXNpYyBHUFVC
aW5kR3JvdXAuIl0gPSBhc3luYyBkZXZpY2UgPT4gewogCiAgICAgY29uc3QgcGlwZWxpbmVMYXlv
dXQgPSBkZXZpY2UuY3JlYXRlUGlwZWxpbmVMYXlvdXQoeyBiaW5kR3JvdXBMYXlvdXRzOiBbYmlu
ZEdyb3VwTGF5b3V0XSB9KTsKIAotICAgIGNvbnN0IGJhc2ljU2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IGJhc2ljQnVmZmVyU2hhZGVyLCBpc1dITFNMOiB0
cnVlIH0pOworICAgIGNvbnN0IGJhc2ljU2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7IGNvZGU6IGJhc2ljQnVmZmVyU2hhZGVyIH0pOwogICAgIGJhc2ljUGlwZWxpbmUg
PSBkZXZpY2UuY3JlYXRlQ29tcHV0ZVBpcGVsaW5lKHsKICAgICAgICAgbGF5b3V0OiBwaXBlbGlu
ZUxheW91dCwKICAgICAgICAgY29tcHV0ZVN0YWdlOiB7CkBAIC0xMzksNyArMTM5LDcgQEAgdGVz
dHNbIkNyZWF0ZSBhbmQgYWNjZXNzIGEgdW5pZm9ybS1idWZmZXIgaW4gYSBHUFVCaW5kR3JvdXAu
Il0gPSBhc3luYyBkZXZpY2UgPT4KIAogICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2aWNl
LmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHsgYmluZEdyb3VwTGF5b3V0czogW2JpbmRHcm91cExheW91
dF0gfSk7CiAKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHsgY29kZTogdW5pZm9ybUJ1ZmZlclNoYWRlciwgaXNXSExTTDogdHJ1ZSB9KTsKKyAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogdW5p
Zm9ybUJ1ZmZlclNoYWRlciB9KTsKIAogICAgIGNvbnN0IHBpcGVsaW5lID0gZGV2aWNlLmNyZWF0
ZUNvbXB1dGVQaXBlbGluZSh7CiAgICAgICAgIGxheW91dDogcGlwZWxpbmVMYXlvdXQsCkBAIC0y
MTYsNyArMjE2LDcgQEAgdGVzdHNbIkNyZWF0ZSBhbmQgYWNjZXNzIGEgc2FtcGxlZCB0ZXh0dXJl
IGluIGEgR1BVQmluZEdyb3VwLiJdID0gYXN5bmMgZGV2aWNlID0KICAgICAgICAgfV0KICAgICB9
KTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
eyBjb2RlOiBzYW1wbGVkVGV4dHVyZVNoYWRlciwgaXNXSExTTDogdHJ1ZSB9KTsKKyAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2FtcGxl
ZFRleHR1cmVTaGFkZXIgfSk7CiAgICAgY29uc3QgcGlwZWxpbmVMYXlvdXQgPSBkZXZpY2UuY3Jl
YXRlUGlwZWxpbmVMYXlvdXQoeyBiaW5kR3JvdXBMYXlvdXRzOiBbYmluZEdyb3VwTGF5b3V0XSB9
KTsKIAogICAgIGNvbnN0IHBpcGVsaW5lID0gZGV2aWNlLmNyZWF0ZUNvbXB1dGVQaXBlbGluZSh7
CkBAIC0zNDEsNyArMzQxLDcgQEAgdGVzdHNbIkNyZWF0ZSBhbmQgdXNlIG11bHRpcGxlIEdQVUJp
bmRHcm91cHMgaW4gYSBzaW5nbGUgZGlzcGF0Y2guIl0gPSBhc3luYyBkZXYKICAgICAgICAgfV0K
ICAgICB9KTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoeyBjb2RlOiBjb21ib1NoYWRlciwgaXNXSExTTDogdHJ1ZSB9KTsKKyAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogY29tYm9TaGFk
ZXIgfSk7CiAgICAgY29uc3QgcGlwZWxpbmVMYXlvdXQgPSBkZXZpY2UuY3JlYXRlUGlwZWxpbmVM
YXlvdXQoeyBiaW5kR3JvdXBMYXlvdXRzOiBbYmdsMCwgYmdsMSwgYmdsMiwgYmdsM10gfSk7CiAK
ICAgICBjb25zdCBwaXBlbGluZSA9IGRldmljZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoewpAQCAt
NDE4LDcgKzQxOCw3IEBAIHRlc3RzWyJCaW5kIGEgc2luZ2xlIEdQVUJ1ZmZlciB3aXRoIGRpZmZl
cmVudCBvZmZzZXRzIGluIGRpZmZlcmVudCBHUFVCaW5kR3JvdXBzCiAKICAgICBjb25zdCBwaXBl
bGluZUxheW91dCA9IGRldmljZS5jcmVhdGVQaXBlbGluZUxheW91dCh7IGJpbmRHcm91cExheW91
dHM6IFtiaW5kR3JvdXBMYXlvdXRdIH0pOwogCi0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHVuaWZvcm1CdWZmZXJTaGFkZXIsIGlzV0hM
U0w6IHRydWUgfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7IGNvZGU6IHVuaWZvcm1CdWZmZXJTaGFkZXIgfSk7CiAKICAgICBjb25zdCBwaXBl
bGluZSA9IGRldmljZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoewogICAgICAgICBsYXlvdXQ6IHBp
cGVsaW5lTGF5b3V0LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLWNvbG9y
LXRyaWFuZ2xlLXN0cmlwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvYmxlbmQtY29sb3ItdHJp
YW5nbGUtc3RyaXAuaHRtbAppbmRleCBlMGFjZmQyZmUwZDk4MzM5YWYwNmMwM2MwYmE5ODNlNjk4
ZGJiODQ5Li4xMDRjM2E0YmUyY2E0N2JiMzAyNGVkYjdlODgzMjYzNGUxMTk0YzJjIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvYmxlbmQtY29sb3ItdHJpYW5nbGUtc3RyaXAuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy93ZWJncHUvYmxlbmQtY29sb3ItdHJpYW5nbGUtc3RyaXAuaHRtbApA
QCAtNTAsNyArNTAsNyBAQCBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJj
YW52YXMiKTsKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewogICAgIGNvbnN0IHN3YXBD
aGFpbiA9IGNyZWF0ZUJhc2ljU3dhcENoYWluKGNhbnZhcywgZGV2aWNlKTsKICAgICAvLyBGSVhN
RTogUmVwbGFjZSB3aXRoIG5vbi1NU0wgc2hhZGVycy4KLSAgICBjb25zdCBzaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2hhZGVyQ29kZSB9KTsKKyAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2hh
ZGVyQ29kZSwgaXNNU0w6IHRydWUgfSk7CiAKICAgICBjb25zdCBjb2xvclN0YXRlcyA9IFt7CiAg
ICAgICAgIGZvcm1hdDogImJncmE4dW5vcm0iLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L2JsZW5kLXRyaWFuZ2xlLXN0cmlwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvYmxlbmQt
dHJpYW5nbGUtc3RyaXAuaHRtbAppbmRleCBjNjY1ZjU3ZjBmYmE1OGRiNzg2ZDVmMDQ4NGI5ZWY2
NzE4Nzk5NGNjLi5kNWI0NmNjNWJiNWY0MTJlYzFiMjFkY2U3MWVlMzExYjA5ZWM4N2Y2IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvYmxlbmQtdHJpYW5nbGUtc3RyaXAuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvYmxlbmQtdHJpYW5nbGUtc3RyaXAuaHRtbApAQCAtNDUsNyAr
NDUsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXhPdXQgdiBbW3N0YWdl
X2luXV0pCiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJjYW52YXMiKTsK
IAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNoYWRlckNvZGUgfSk7CisgICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNo
YWRlckNvZGUsIGlzTVNMOiB0cnVlIH0pOwogCiAgICAgY29uc3QgY29sb3JTdGF0ZXMgPSBbewog
ICAgICAgICBmb3JtYXQ6ICJiZ3JhOHVub3JtIiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmdwdS9idWZmZXItY29tbWFuZC1idWZmZXItcmFjZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS9idWZmZXItY29tbWFuZC1idWZmZXItcmFjZXMuaHRtbAppbmRleCAwMWIxZTU4NGI3Njg3ZWQw
NTg1NjlhODk4YzFiNjkyOWNlMDdmMzE0Li5mMDBjMjBlYTA4YWEyNTZjMmIxYTRiZThkOWM4OWQ3
NjhjYzUxMGU2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvYnVmZmVyLWNvbW1hbmQt
YnVmZmVyLXJhY2VzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2J1ZmZlci1jb21tYW5k
LWJ1ZmZlci1yYWNlcy5odG1sCkBAIC04Miw3ICs4Miw3IEBAIGNvbnN0IGNhbnZhcyA9IGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoImNhbnZhcyIpOwogYXN5bmMgZnVuY3Rpb24gdGVzdChkZXZpY2Up
IHsKICAgICBjb25zdCBzd2FwQ2hhaW4gPSBjcmVhdGVCYXNpY1N3YXBDaGFpbihjYW52YXMsIGRl
dmljZSk7CiAgICAgLy8gRklYTUU6IFJlcGxhY2Ugd2l0aCBub24tTVNMIHNoYWRlcnMuCi0gICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNo
YWRlckNvZGUgfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7IGNvZGU6IHNoYWRlckNvZGUsIGlzTVNMOiB0cnVlIH0pOwogICAgIGNvbnN0IHZl
cnRleElucHV0RGVzY3JpcHRvciA9IGNyZWF0ZVZlcnRleElucHV0RGVzY3JpcHRvcigpOwogICAg
IGNvbnN0IHBpcGVsaW5lID0gY3JlYXRlQmFzaWNQaXBlbGluZShzaGFkZXJNb2R1bGUsIGRldmlj
ZSwgbnVsbCwgbnVsbCwgdmVydGV4SW5wdXREZXNjcmlwdG9yKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L2NvbG9yLXdyaXRlLW1hc2stdHJpYW5nbGUtc3RyaXAuaHRtbCBiL0xh
eW91dFRlc3RzL3dlYmdwdS9jb2xvci13cml0ZS1tYXNrLXRyaWFuZ2xlLXN0cmlwLmh0bWwKaW5k
ZXggMmYzZjEyYzNiYzZiNDRmMWI3MGI4YjA2NzVhYTAwN2M0ZGQ4ZjgwNC4uYTE3MDgwZWM1YTFl
MmQwMTMzZTJjOTMyYzkxMzcwN2M0ZmRhY2E0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L2NvbG9yLXdyaXRlLW1hc2stdHJpYW5nbGUtc3RyaXAuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvY29sb3Itd3JpdGUtbWFzay10cmlhbmdsZS1zdHJpcC5odG1sCkBAIC00OSw3ICs0
OSw3IEBAIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImNhbnZhcyIpOwog
CiBhc3luYyBmdW5jdGlvbiB0ZXN0KGRldmljZSkgewogICAgIGNvbnN0IHN3YXBDaGFpbiA9IGNy
ZWF0ZUJhc2ljU3dhcENoYWluKGNhbnZhcywgZGV2aWNlKTsKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2hhZGVyQ29kZSB9KTsKKyAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTog
c2hhZGVyQ29kZSwgaXNNU0w6IHRydWUgfSk7CiAgICAgY29uc3QgY29sb3JTdGF0ZXMgPSBbewog
ICAgICAgICBmb3JtYXQ6ICJiZ3JhOHVub3JtIiwKICAgICAgICAgYWxwaGFCbGVuZDoge30sCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvY29tcHV0ZS1waXBlbGluZS1lcnJvcnMuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS9jb21wdXRlLXBpcGVsaW5lLWVycm9ycy5odG1sCmluZGV4
IGY4YmJmZTBkY2VmZmY5MzQ4YjFmMmJhMmJjZDRiMGIwMmZkNjU4MjIuLmU5NzU0NGQ5M2NlOWQ5
MmZjMjNjNzcwMGIyOTI1ZmU3ZDc4YTUyNWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdw
dS9jb21wdXRlLXBpcGVsaW5lLWVycm9ycy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9j
b21wdXRlLXBpcGVsaW5lLWVycm9ycy5odG1sCkBAIC0xNCw3ICsxNCw3IEBAIHRlc3RzWyJDb21w
dXRlIGNvbXBpbGF0aW9uIGZhaWxlZCBkdWUgdG8gaW5jb3JyZWN0IGVudHJ5IHBvaW50IHN0cmlu
Zy4iXSA9IGFzeW5jCiBbbnVtdGhyZWFkcygxLCAxLCAxKV0KIGNvbXB1dGUgdm9pZCBfY29tcHV0
ZV9tYWluKCkgeyB9CiBgOwotICAgIGdvb2RNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHsgY29kZTogZ29vZFdITFNMLCBpc1dITFNMOiB0cnVlIH0pOworICAgIGdvb2RNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogZ29vZFdITFNMIH0pOwogCiAgICAg
ZGV2aWNlLnB1c2hFcnJvclNjb3BlKCJ2YWxpZGF0aW9uIik7CiAKQEAgLTgyLDQgKzgyLDQgQEAg
a2VybmVsIHZvaWQgX2NvbXB1dGVfbWFpbigpIHsgfQogCiBydW5UZXN0c1dpdGhEZXZpY2UodGVz
dHMpOwogPC9zY3JpcHQ+Ci08L2JvZHk+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorPC9i
b2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2RlcHRoLWVuYWJsZWQtdHJpYW5n
bGUtc3RyaXAuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS9kZXB0aC1lbmFibGVkLXRyaWFuZ2xl
LXN0cmlwLmh0bWwKaW5kZXggZmI1NTlhODM5MmIyZjc0MTg5YmY3NmVhZjFmYTQyOTVjMDc4YmRh
NS4uOTQ3ZTI1ZjMwOGE3NjUxNzZlZDE2YzgzNDk1NmE5ZmNmNjZhYjRiZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L2RlcHRoLWVuYWJsZWQtdHJpYW5nbGUtc3RyaXAuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvZGVwdGgtZW5hYmxlZC10cmlhbmdsZS1zdHJpcC5odG1sCkBA
IC03Niw3ICs3Niw3IEBAIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImNh
bnZhcyIpOwogYXN5bmMgZnVuY3Rpb24gdGVzdChkZXZpY2UpIHsKICAgICBjb25zdCBzd2FwQ2hh
aW4gPSBjcmVhdGVCYXNpY1N3YXBDaGFpbihjYW52YXMsIGRldmljZSk7CiAgICAgLy8gRklYTUU6
IFJlcGxhY2Ugd2l0aCBub24tTVNMIHNoYWRlcnMuCi0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNoYWRlckNvZGUgfSk7CisgICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNoYWRl
ckNvZGUsIGlzTVNMOiB0cnVlIH0pOwogICAgIGNvbnN0IHZlcnRleEJ1ZmZlciA9IGNyZWF0ZVZl
cnRleEJ1ZmZlcihkZXZpY2UpOwogICAgIGNvbnN0IHZlcnRleElucHV0RGVzY3JpcHRvciA9IGNy
ZWF0ZVZlcnRleElucHV0RGVzY3JpcHRvcigpOwogICAgIGNvbnN0IGRlcHRoU3RhdGVEZXNjcmlw
dG9yID0gY3JlYXRlQmFzaWNEZXB0aFN0YXRlRGVzY3JpcHRvcigpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L2RyYXctaW5kZXhlZC10cmlhbmdsZXMuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS9kcmF3LWluZGV4ZWQtdHJpYW5nbGVzLmh0bWwKaW5kZXggMTFhMmI0NmVlZjExMTJm
NDc4Yjc0ODAzYmIwNWJhMzU5N2FjNDMzMi4uMzc3ZWYzZjNkODcwNzNiMDg1MjgzODY0N2MxY2Iz
Y2FjZjBkNjI1MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2RyYXctaW5kZXhlZC10
cmlhbmdsZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvZHJhdy1pbmRleGVkLXRyaWFu
Z2xlcy5odG1sCkBAIC05Nyw3ICs5Nyw3IEBAIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoImNhbnZhcyIpOwogYXN5bmMgZnVuY3Rpb24gdGVzdChkZXZpY2UpIHsKICAgICBj
b25zdCBzd2FwQ2hhaW4gPSBjcmVhdGVCYXNpY1N3YXBDaGFpbihjYW52YXMsIGRldmljZSk7CiAg
ICAgLy8gRklYTUU6IFJlcGxhY2Ugd2l0aCBub24tTVNMIHNoYWRlcnMuCi0gICAgY29uc3Qgc2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNoYWRlckNvZGUg
fSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
IGNvZGU6IHNoYWRlckNvZGUsIGlzTVNMOiB0cnVlIH0pOwogICAgIGNvbnN0IHZlcnRleEJ1ZmZl
ciA9IGNyZWF0ZVZlcnRleEJ1ZmZlcihkZXZpY2UpOwogICAgIGNvbnN0IGluZGV4QnVmZmVyID0g
Y3JlYXRlSW5kZXhCdWZmZXIoZGV2aWNlKTsKICAgICBjb25zdCBwaXBlbGluZSA9IGNyZWF0ZUJh
c2ljUGlwZWxpbmUoc2hhZGVyTW9kdWxlLCBkZXZpY2UsIG51bGwsIG51bGwsIGNyZWF0ZVZlcnRl
eElucHV0RGVzY3JpcHRvcigpLCBudWxsLCAidHJpYW5nbGUtbGlzdCIpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJuZXNzLXRlc3QuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS9tc2wtaGFybmVzcy10ZXN0Lmh0bWwKaW5kZXggZWEzMDA3MTIzZTk1ZWViMDIzMzk5ZTNl
YTA0MTEwMTAzODBkYjRjMC4uODYxYTJmODhjMWI1MGU3Njg4NDcxM2FhZjI2ZjgwYzkwMTVmNGE1
YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJuZXNzLXRlc3QuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy93ZWJncHUvbXNsLWhhcm5lc3MtdGVzdC5odG1sCkBAIC0xMjUsNyAr
MTI1LDcgQEAgbXNsVGVzdHMuYnVmZmVyU3RvcmVzID0gKCkgPT4gewogfTsKIAogd2luZG93LmFk
ZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7Ci0gICAgaGFybmVzcy5pc1dITFNMID0gZmFs
c2U7CisgICAgaGFybmVzcy5pc01TTCA9IHRydWU7CiAgICAgZm9yIChjb25zdCBuYW1lIGluIG1z
bFRlc3RzKSB7CiAgICAgICAgIG1zbFRlc3RzW25hbWVdKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5nLmh0bWwgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvcmVuZGVyLWNvbW1hbmQtZW5jb2RpbmcuaHRtbAppbmRleCAxMzBiZmQ0OTU1
YTUxY2ViYWU2ZmJjZTRiMzJlZGQxMDllZTc4OTJkLi41NTY5NzRlZjMyZmZmYzE4MTA3NDA5ZWIz
ODM3MjU0MzVmNWI5YTZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLWNv
bW1hbmQtZW5jb2RpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLWNvbW1h
bmQtZW5jb2RpbmcuaHRtbApAQCAtMzEsNyArMzEsNyBAQCBwcm9taXNlX3Rlc3QoKCkgPT4gewog
ICAgIHJldHVybiBnZXRCYXNpY0RldmljZSgpLnRoZW4oZnVuY3Rpb24oZGV2aWNlKSB7CiAgICAg
ICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpOwogICAg
ICAgICBjb25zdCBzd2FwQ2hhaW4gPSBjcmVhdGVCYXNpY1N3YXBDaGFpbihjYW52YXMsIGRldmlj
ZSk7Ci0gICAgICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoeyBjb2RlOiBzaGFkZXJzIH0pOworICAgICAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2hhZGVycywgaXNNU0w6IHRydWUgfSk7CiAg
ICAgICAgIGNvbnN0IHBpcGVsaW5lID0gY3JlYXRlQmFzaWNQaXBlbGluZShzaGFkZXJNb2R1bGUs
IGRldmljZSk7CiAKICAgICAgICAgY29uc3QgY29tbWFuZEVuY29kZXIgPSBkZXZpY2UuY3JlYXRl
Q29tbWFuZEVuY29kZXIoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXIt
cGlwZWxpbmUtZXJyb3JzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLXBpcGVsaW5l
LWVycm9ycy5odG1sCmluZGV4IGE0OTNlMTE4NzBjMTFlMGZkZTNmMDMxMjQ5M2VkM2Y4YTFhMGJl
NzIuLjBiOWJjNzNkYzZmNDcyYmZhYTQ5OGNkYjY0MGY1Mzk4MGYyNTViZTggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXItcGlwZWxpbmUtZXJyb3JzLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBlbGluZS1lcnJvcnMuaHRtbApAQCAtMzksNyArMzks
NyBAQCBsZXQgZ29vZFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciwgZ29vZE1vZHVsZTsKIGxldCB0
ZXN0cyA9IHt9OwogCiB0ZXN0c1siR1BVUmVuZGVyUGlwZWxpbmUgY3JlYXRpb24gc3VjY2VlZHMg
d2l0aCBubyBlcnJvcnMuIl0gPSBhc3luYyBkZXZpY2UgPT4gewotICAgIGdvb2RNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogd2hsc2xTb3VyY2UsIGlzV0hMU0w6IHRy
dWUgfSk7CisgICAgZ29vZE1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2Rl
OiB3aGxzbFNvdXJjZSB9KTsKICAgICAKICAgICBnb29kUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9y
ID0gewogICAgICAgICB2ZXJ0ZXhTdGFnZTogeyBtb2R1bGU6IGdvb2RNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJ2ZXJ0ZXhNYWluIiB9LApAQCAtNzMsNyArNzMsNyBAQCB0ZXN0c1siR1BVUmVuZGVyUGlw
ZWxpbmUgY3JlYXRpb24gc3VjY2VlZHMgd2l0aCBubyBlcnJvcnMuIl0gPSBhc3luYyBkZXZpY2Ug
PT4gewogCiB0ZXN0c1siSW52YWxpZCBHUFVTaGFkZXJNb2R1bGUgZm9yIHZlcnRleCBzdGFnZSBz
aG91bGQgZmFpbC4iXSA9IGFzeW5jIGRldmljZSA9PiB7CiAgICAgbGV0IGJhZERlc2NyaXB0b3Ig
PSBPYmplY3QuYXNzaWduKHt9LCBnb29kUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yKTsKLSAgICBs
ZXQgYmFkU2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6ICJG
b28iLCBpc1dITFNMOiB0cnVlIH0pOworICAgIGxldCBiYWRTaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogIkZvbyIgfSk7CiAgICAgYmFkRGVzY3JpcHRvci52
ZXJ0ZXhTdGFnZSA9IHsgbW9kdWxlOiBiYWRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0
ZXhNYWluIiB9OwogCiAgICAgcmV0dXJuIGNyZWF0ZVBpcGVsaW5lQW5kRXJyb3IoZGV2aWNlLCBi
YWREZXNjcmlwdG9yKTsKQEAgLTgxLDcgKzgxLDcgQEAgdGVzdHNbIkludmFsaWQgR1BVU2hhZGVy
TW9kdWxlIGZvciB2ZXJ0ZXggc3RhZ2Ugc2hvdWxkIGZhaWwuIl0gPSBhc3luYyBkZXZpY2UgPT4K
IAogdGVzdHNbIkludmFsaWQgR1BVU2hhZGVyTW9kdWxlIGZvciBmcmFnbWVudCBzdGFnZSBzaG91
bGQgZmFpbC4iXSA9IGFzeW5jIGRldmljZSA9PiB7CiAgICAgbGV0IGJhZERlc2NyaXB0b3IgPSBP
YmplY3QuYXNzaWduKHt9LCBnb29kUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yKTsKLSAgICBsZXQg
YmFkU2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6ICJGb28i
LCBpc1dITFNMOiB0cnVlICB9KTsKKyAgICBsZXQgYmFkU2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6ICJGb28iICB9KTsKICAgICBiYWREZXNjcmlwdG9yLmZy
YWdtZW50U3RhZ2UgPSB7IG1vZHVsZTogYmFkU2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVy
dGV4TWFpbiIgfTsKIAogICAgIHJldHVybiBjcmVhdGVQaXBlbGluZUFuZEVycm9yKGRldmljZSwg
YmFkRGVzY3JpcHRvcik7CkBAIC04OSw3ICs4OSw3IEBAIHRlc3RzWyJJbnZhbGlkIEdQVVNoYWRl
ck1vZHVsZSBmb3IgZnJhZ21lbnQgc3RhZ2Ugc2hvdWxkIGZhaWwuIl0gPSBhc3luYyBkZXZpY2UK
IAogdGVzdHNbIkVtcHR5IGVudHJ5IHBvaW50IGZvciB2ZXJ0ZXggc3RhZ2Ugc2hvdWxkIGZhaWwu
Il0gPSBhc3luYyBkZXZpY2UgPT4gewogICAgIGxldCBiYWREZXNjcmlwdG9yID0gT2JqZWN0LmFz
c2lnbih7fSwgZ29vZFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvcik7Ci0gICAgbGV0IGJhZFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiwgaXNXSExT
TDogdHJ1ZSAgfSk7CisgICAgbGV0IGJhZFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiAgfSk7CiAgICAgYmFkRGVzY3JpcHRvci52ZXJ0ZXhTdGFn
ZSA9IHsgbW9kdWxlOiBiYWRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICIiIH07CiAKICAgICBy
ZXR1cm4gY3JlYXRlUGlwZWxpbmVBbmRFcnJvcihkZXZpY2UsIGJhZERlc2NyaXB0b3IpOwpAQCAt
MTg3LDQgKzE4Nyw0IEBAIGNvbnN0IGNyZWF0ZVBpcGVsaW5lQW5kRXJyb3IgPSAoZGV2aWNlLCBk
ZXNjcmlwdG9yKSA9PiB7CiB9OwogCiA8L3NjcmlwdD4KLTwvYm9keT4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvcmVu
ZGVyLXBpcGVsaW5lcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBlbGluZXMu
aHRtbAppbmRleCBlNjY2NWJiOWRhYTFlYjNkMWZmYTQ5ZjVkZWNlNzk0Nzg3NzA4Yzc1Li5jYWMx
ZjNmNjNmNDYyOTE2NTI0ZTAyMjFiOWUyZmVmODE4MDY1OWRmIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvcmVuZGVyLXBpcGVsaW5lcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdw
dS9yZW5kZXItcGlwZWxpbmVzLmh0bWwKQEAgLTQxLDcgKzQxLDcgQEAgZnJhZ21lbnQgZmxvYXQ0
IGZyYWdtZW50X21haW4oVmVydGV4IHZlcnRleEluIFtbc3RhZ2VfaW5dXSkKIAogcHJvbWlzZV90
ZXN0KCgpID0+IHsKICAgICByZXR1cm4gZ2V0QmFzaWNEZXZpY2UoKS50aGVuKGZ1bmN0aW9uKGRl
dmljZSkgewotICAgICAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHsgY29kZTogc2hhZGVyQ29kZSB9KTsKKyAgICAgICAgY29uc3Qgc2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNoYWRlckNvZGUsIGlzTVNMOiB0
cnVlIH0pOwogCiAgICAgICAgIGNvbnN0IGxheW91dEJpbmRpbmcgPSB7IGJpbmRpbmc6IDAsIHZp
c2liaWxpdHk6IEdQVVNoYWRlclN0YWdlQml0LlZFUlRFWCwgdHlwZTogInN0b3JhZ2UtYnVmZmVy
IiB9OwogICAgICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXQgPSBkZXZpY2UuY3JlYXRlQmluZEdy
b3VwTGF5b3V0KHsgYmluZGluZ3M6IFtsYXlvdXRCaW5kaW5nXSB9KTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS9zaGFkZXItbW9kdWxlcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3NoYWRlci1tb2R1bGVzLmh0bWwKaW5kZXggOTk4NTU5ZjVhZTBjYjBiNWU2MTNhZjFjN2VjNWIx
ZmY5YTVjMzJlNi4uMzViODIwNzUwYjc1YTFiZTJiOTY1YTdkMjY1ZWJmNDUxODAyMTRjNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3NoYWRlci1tb2R1bGVzLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3NoYWRlci1tb2R1bGVzLmh0bWwKQEAgLTI5LDcgKzI5LDcgQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oVmVydGV4IHZlcnRleEluIFtbc3RhZ2VfaW5dXSkK
IAogcHJvbWlzZV90ZXN0KCgpID0+IHsKICAgICByZXR1cm4gZ2V0QmFzaWNEZXZpY2UoKS50aGVu
KGZ1bmN0aW9uKGRldmljZSkgewotICAgICAgICBsZXQgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNoYWRlcnMgfSk7CisgICAgICAgIGxldCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2hhZGVycywgaXNNU0w6
IHRydWUgfSk7CiAgICAgICAgIGFzc2VydF90cnVlKHNoYWRlck1vZHVsZSBpbnN0YW5jZW9mIEdQ
VVNoYWRlck1vZHVsZSwgIlNoYWRlciBtb2R1bGUgY3JlYXRlZCBzdWNjZXNzZnVsbHkuIik7CiAg
ICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvc2ltcGxlLXRyaWFuZ2xlLXN0cmlwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvc2ltcGxl
LXRyaWFuZ2xlLXN0cmlwLmh0bWwKaW5kZXggYzhkMWUzYmZlNWRkMGI3ODA5MWNhZDI3YzQzODli
NTlkZjE0ZWMwNy4uZDU0YTZjODQ0MTI5MDM0NmVhMzI4N2ZmM2VjMWVkYWY2Zjc4ZjkyOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3NpbXBsZS10cmlhbmdsZS1zdHJpcC5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS9zaW1wbGUtdHJpYW5nbGUtc3RyaXAuaHRtbApAQCAtNTAs
NyArNTAsNyBAQCBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJjYW52YXMi
KTsKIGFzeW5jIGZ1bmN0aW9uIHRlc3QoZGV2aWNlKSB7CiAgICAgY29uc3Qgc3dhcENoYWluID0g
Y3JlYXRlQmFzaWNTd2FwQ2hhaW4oY2FudmFzLCBkZXZpY2UpOwogICAgIC8vIEZJWE1FOiBSZXBs
YWNlIHdpdGggbm9uLU1TTCBzaGFkZXJzLgotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBzaGFkZXJDb2RlIH0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBzaGFkZXJDb2Rl
LCBpc01TTDogdHJ1ZSB9KTsKICAgICBjb25zdCBwaXBlbGluZSA9IGNyZWF0ZUJhc2ljUGlwZWxp
bmUoc2hhZGVyTW9kdWxlLCBkZXZpY2UpOwogICAgIGNvbnN0IGNvbW1hbmRFbmNvZGVyID0gZGV2
aWNlLmNyZWF0ZUNvbW1hbmRFbmNvZGVyKCk7CiAgICAgY29uc3QgcGFzc0VuY29kZXIgPSBiZWdp
bkJhc2ljUmVuZGVyUGFzcyhzd2FwQ2hhaW4sIGNvbW1hbmRFbmNvZGVyKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS90ZXh0dXJlLXRyaWFuZ2xlLXN0cmlwLmh0bWwgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvdGV4dHVyZS10cmlhbmdsZS1zdHJpcC5odG1sCmluZGV4IGNhZTA0YjViNDEw
ZWY3ZWQ5M2ExZDc1OTIyYzcxNjc3ZjNiYjRkNjIuLjQ3NzRhZGRmMmVhZThmMWMzNDZiYzhiM2Mz
MmY1MTRlODBlZDUzNTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS90ZXh0dXJlLXRy
aWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3RleHR1cmUtdHJpYW5n
bGUtc3RyaXAuaHRtbApAQCAtODAsNyArODAsNyBAQCBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJjYW52YXMiKTsKIGFzeW5jIGZ1bmN0aW9uIHRlc3QoZGV2aWNlKSB7CiAg
ICAgY29uc3Qgc3dhcENoYWluID0gY3JlYXRlQmFzaWNTd2FwQ2hhaW4oY2FudmFzLCBkZXZpY2Up
OwogICAgIC8vIEZJWE1FOiBSZXBsYWNlIHdpdGggbm9uLU1TTCBzaGFkZXJzLgotICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBzaGFkZXJD
b2RlIH0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoeyBjb2RlOiBzaGFkZXJDb2RlLCBpc01TTDogdHJ1ZSB9KTsKIAogICAgIGNvbnN0IHBvc2l0
aW9uQXJyYXkgPSBuZXcgRmxvYXQzMkFycmF5KFsKICAgICAgICAgLy8gZmxvYXQ0IHh5encKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS92ZXJ0ZXgtYnVmZmVyLXRyaWFuZ2xlLXN0cmlw
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvdmVydGV4LWJ1ZmZlci10cmlhbmdsZS1zdHJpcC5o
dG1sCmluZGV4IGJkMzM1ZTYyOGM2NzlhMTkwYWQ3OTZiZjUwMjk4OWVlNTI5YmQ2MjIuLjcxZDAx
MmE0NzI5ODJmNjY0MjBjY2MzNjM2MGI0NzI0OTI2NzNiNGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3dlYmdwdS92ZXJ0ZXgtYnVmZmVyLXRyaWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3ZlcnRleC1idWZmZXItdHJpYW5nbGUtc3RyaXAuaHRtbApAQCAtODEsNyAr
ODEsNyBAQCBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJjYW52YXMiKTsK
IGFzeW5jIGZ1bmN0aW9uIHRlc3QoZGV2aWNlKSB7CiAgICAgY29uc3Qgc3dhcENoYWluID0gY3Jl
YXRlQmFzaWNTd2FwQ2hhaW4oY2FudmFzLCBkZXZpY2UpOwogICAgIC8vIEZJWE1FOiBSZXBsYWNl
IHdpdGggbm9uLU1TTCBzaGFkZXJzLgotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBzaGFkZXJDb2RlIH0pOworICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBzaGFkZXJDb2RlLCBp
c01TTDogdHJ1ZSB9KTsKICAgICBjb25zdCB2ZXJ0ZXhCdWZmZXIgPSBjcmVhdGVWZXJ0ZXhCdWZm
ZXIoZGV2aWNlKTsKICAgICBjb25zdCB2ZXJ0ZXhJbnB1dERlc2NyaXB0b3IgPSBjcmVhdGVWZXJ0
ZXhJbnB1dERlc2NyaXB0b3IoKTsKICAgICBjb25zdCBwaXBlbGluZSA9IGNyZWF0ZUJhc2ljUGlw
ZWxpbmUoc2hhZGVyTW9kdWxlLCBkZXZpY2UsIG51bGwsIG51bGwsIHZlcnRleElucHV0RGVzY3Jp
cHRvcik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvdmlld3BvcnQtc2Npc3Nvci1y
ZWN0LXRyaWFuZ2xlLXN0cmlwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvdmlld3BvcnQtc2Np
c3Nvci1yZWN0LXRyaWFuZ2xlLXN0cmlwLmh0bWwKaW5kZXggYjlhZGU4N2E0YTFhZDE1NGFlZmVm
YTgyYzRlMmJhZDI2MjYzMzY2NC4uOTEyYjg4ZGM4N2Y2NDEzM2U3ODk1ODUxNWUyMjI4NzMyYjMz
YWEyYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3ZpZXdwb3J0LXNjaXNzb3ItcmVj
dC10cmlhbmdsZS1zdHJpcC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS92aWV3cG9ydC1z
Y2lzc29yLXJlY3QtdHJpYW5nbGUtc3RyaXAuaHRtbApAQCAtNTEsNyArNTEsNyBAQCBhc3luYyBm
dW5jdGlvbiB0ZXN0KGRldmljZSkgewogICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoImNhbnZhcyIpOwogICAgIGNvbnN0IHN3YXBDaGFpbiA9IGNyZWF0ZUJhc2ljU3dh
cENoYWluKGNhbnZhcywgZGV2aWNlKTsKICAgICAvLyBGSVhNRTogUmVwbGFjZSB3aXRoIG5vbi1N
U0wgc2hhZGVycy4KLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHsgY29kZTogc2hhZGVyQ29kZSB9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2hhZGVyQ29kZSwgaXNNU0w6IHRydWUg
fSk7CiAgICAgY29uc3QgcGlwZWxpbmUgPSBjcmVhdGVCYXNpY1BpcGVsaW5lKHNoYWRlck1vZHVs
ZSwgZGV2aWNlKTsKICAgICBjb25zdCBjb21tYW5kRW5jb2RlciA9IGRldmljZS5jcmVhdGVDb21t
YW5kRW5jb2RlcigpOwogICAgIGNvbnN0IGJsdWVBdHRhY2htZW50ID0gewpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2FyYml0cmFyeS12ZXJ0ZXgtYXR0cmlidXRlLWxvY2F0
aW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2FyYml0cmFyeS12ZXJ0ZXgtYXR0
cmlidXRlLWxvY2F0aW9ucy5odG1sCmluZGV4IGJjNWQzZDVhNTZhZGVkY2I5NDY4N2ZiMjYwZWU4
MWRhNGI0MTkxZmIuLmMyMzlmYWU1MzZkMjliMTM5ZGYxN2FiZWYwMjVjNWI4OGE1OTczNTAgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9hcmJpdHJhcnktdmVydGV4LWF0dHJp
YnV0ZS1sb2NhdGlvbnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYXJiaXRy
YXJ5LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25zLmh0bWwKQEAgLTI3LDcgKzI3LDcgQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6
IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJj
YW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNl
LCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3Rh
Z2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsK
ICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0
cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVm
ZmVyLWZyYWdtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVmZmVyLWZyYWdt
ZW50Lmh0bWwKaW5kZXggNGY0ZDVlYTFmYTRjNWU0NWRhNzNkZjUxNzU3MGUyZjY2MzBjMWY0Zi4u
YzYyYjMyNWM3NDk3NGY3ZDE0OTYwNGE2ZTg2OWUzOTYzMmM5MzFiNCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci1mcmFnbWVudC5odG1sCisrKyBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9idWZmZXItZnJhZ21lbnQuaHRtbApAQCAtMTksNyArMTksNyBAQCBm
cmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRp
b24sIGNvbnN0YW50IGZsb2F0W10gdAogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFk
ZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2
ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNo
YWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9s
b2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9idWZmZXItbGVuZ3RoLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVmZmVy
LWxlbmd0aC5odG1sCmluZGV4IGQwZmYzNjA5NTdkNmI3OWI0ODNhYWRmYmM4NGQ0NTY5YzY3Y2M1
MzkuLjk2ODY2ZTJmYzJjMjQ1MjMyZGI2YmM2YjM1MGY4MzY1ZmFkZDA0YmEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItbGVuZ3RoLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci1sZW5ndGguaHRtbApAQCAtMTQsNyArMTQsNyBAQCBj
b21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgdWludFtdIGJ1ZmZlciA6IHJlZ2lzdGVy
KHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9y
ID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdl
LWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVmZmVy
LXZlcnRleC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci12ZXJ0ZXguaHRt
bAppbmRleCBkYmZjMTkwZmUxNDJhNjcxMzY5ZWJjYjJmZTdlZDRhYTVkYzI1YmY4Li40YTZhYjFl
NDUxYjRlODRhYTcxNTczNTg3YzM0YzQ1YzMzZjIxMTQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvYnVmZmVyLXZlcnRleC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9idWZmZXItdmVydGV4Lmh0bWwKQEAgLTE5LDcgKzE5LDcgQEAgZnJhZ21lbnQgZmxv
YXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1Rh
cmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMi
KTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dI
TFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBj
b25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
ZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmds
ZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvY2hlY2tlci1z
aG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2Rp
Znktd3JpdGUtdmFyaWFibGVzLmh0bWwKaW5kZXggYjMxM2ZkNjlmN2I2MDc3N2MzNjMxNWFkZmMx
OTJjZjRmZGE5MGRiNS4uNjFiMjJjNWU2ZDAxNDExZDQ5MDljZGUwMmY2NzUwZmI1MGI1Y2FlYyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2NoZWNrZXItc2hvdWxkLXNldC10
eXBlLW9mLXJlYWQtbW9kaWZ5LXdyaXRlLXZhcmlhYmxlcy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9jaGVja2VyLXNob3VsZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0
ZS12YXJpYWJsZXMuaHRtbApAQCAtMTYsNyArMTYsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNo
YWRlcihkZXZpY2UgZmxvYXRbXSBidWZmZXIgOiByZWdpc3Rlcih1MCksIGZsb2F0MyB0aHJlYWRJ
RAogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgY29tcHV0ZVN0YWdl
ID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiY29tcHV0ZVNoYWRlciJ9Owog
CiAgICAgY29uc3QgYmluZEdyb3VwTGF5b3V0RGVzY3JpcHRvciA9IHtiaW5kaW5nczogW3tiaW5k
aW5nOiAwLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAic3RvcmFnZS1idWZmZXIifV19OwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2NvbXB1dGUuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9jb21wdXRlLmh0bWwKaW5kZXggM2NhYTBmMzhhNDVlNGNhNTgxZGFjYTQ4
YWVjZGFjM2YzNTE4YjY1MC4uMWY2MzJlNjZjZjYzN2JhMDZiM2Y1NDZkZDcwN2UwMWIzMTY3YWI1
NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2NvbXB1dGUuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvY29tcHV0ZS5odG1sCkBAIC0xNCw3ICsxNCw3IEBA
IGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lz
dGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZp
Y2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsK
ICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlw
dG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9y
YWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZGVy
ZWZlcmVuY2UtcG9pbnRlci1zaG91bGQtdHlwZS1jaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2RlcmVmZXJlbmNlLXBvaW50ZXItc2hvdWxkLXR5cGUtY2hlY2suaHRtbAppbmRl
eCA0NDgyMzAxZjZlYWZlMDA3ODRiYTE3OTVkYmE5MTgwNWQxOWYxZWYyLi45YWRhYmQ2OGQ1OTg3
OWIyZWEzNjYxNjZmMmZmNjBhZGU4OGRkZWNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvZGVyZWZlcmVuY2UtcG9pbnRlci1zaG91bGQtdHlwZS1jaGVjay5odG1sCisrKyBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXJlZmVyZW5jZS1wb2ludGVyLXNob3VsZC10eXBl
LWNoZWNrLmh0bWwKQEAgLTMyLDcgKzMyLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hh
ZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNh
bnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rp
b24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hh
ZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1
bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdl
ID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsK
ICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZGV2aWNlLXByb3Blci10eXBlLWNoZWNrZXIu
aHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXZpY2UtcHJvcGVyLXR5cGUtY2hlY2tl
ci5odG1sCmluZGV4IGNlZThjZjE5MTc0MGVhMmNkMDIxMzFhOGRhMzVlNDI4NzRiOWIwYWMuLmI1
MzEyMDU1YjAzMzA2ODY0NWE1OWRhMDU0MTNhNDdhZmMwNjE0MDYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9kZXZpY2UtcHJvcGVyLXR5cGUtY2hlY2tlci5odG1sCisrKyBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXZpY2UtcHJvcGVyLXR5cGUtY2hlY2tlci5odG1s
CkBAIC0yNCw3ICsyNCw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBQb2lu
dFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBm
dW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsK
KyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5k
R3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxp
dHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC1icmVhay5odG1sIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtYnJlYWsuaHRtbAppbmRleCBmNDgxMjgwNTgzYTJkYTNi
ZmIwODFjN2FjMDE1NGY0OTM2MjJhMTFlLi40YmJmYmY1MTYxYWFlY2NhZTNjOWFiNTY1YTAxZjFi
MGM5YmY1NGQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8td2hpbGUt
bG9vcC1icmVhay5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1s
b29wLWJyZWFrLmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Cisg
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
c2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0
YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIi
fTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC1jb250aW51ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtY29udGludWUuaHRt
bAppbmRleCA3YWVhNWIwZjZkMTllMjFiYzVkN2E5NzcyY2JkMjY4YmZkZDliNWZiLi5kMGE2Mzhi
Yzc1MzUxNjkwYjY4MjdmODc3NDllMDJiNmQ5NzVkNzVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC1jb250aW51ZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwKQEAgLTM4LDcgKzM4
LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmli
dXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhT
aGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3Bv
bG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvZG8td2hpbGUtbG9vcC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvLXdo
aWxlLWxvb3AuaHRtbAppbmRleCAyMzgxYjQyNTkwN2E5YjZjYWM1ZWY4MTg0ZjE3ZDY2NmNmOTIy
MTM5Li41MWI4YzUxYTc4MTk0M2Y4M2QzZTM5NWFiOGI2ZTNiMTYwYzhlOGI4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC5odG1sCisrKyBiL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLmh0bWwKQEAgLTMzLDcgKzMzLDcgQEAg
ZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDAp
KSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qg
c2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291
cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4
U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIi
fTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRy
eVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9
ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
ZG9udC1jcmFzaC1wYXJzaW5nLWVudW0uaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9k
b250LWNyYXNoLXBhcnNpbmctZW51bS5odG1sCmluZGV4IDdjZGVmMmE2ZDljNDJkMzYwZmVjMzUw
ZjE1M2VjMDg3NGIwYzcyMTMuLmM2NWM1YTc4ZDllYTVhZDU1OGJlMTk5NmYxYWRlZmQ2YmFiNTYy
YWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kb250LWNyYXNoLXBhcnNp
bmctZW51bS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kb250LWNyYXNoLXBh
cnNpbmctZW51bS5odG1sCkBAIC0yNCw3ICsyNCw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVu
dFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBj
b25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5j
IGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21l
bnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hh
ZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvdC1leHByZXNzaW9ucy5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvdC1leHByZXNzaW9ucy5odG1sCmluZGV4IGNk
MWU4ODJlMTIyYWYxNmRlNzkxMDRiNzIwNzVjMzhmNzhiMmM5NmEuLmM2YjYwMTQ1NjE1MGE2NzQ0
Yzc5ZTk2ZTAyYmM3MTY1MWIxZmU1MTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9kb3QtZXhwcmVzc2lvbnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
ZG90LWV4cHJlc3Npb25zLmh0bWwKQEAgLTI3LDcgKzI3LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZy
YWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsK
IGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5
bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVl
fSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBz
aGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFn
bWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRT
aGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZHVwbGljYXRlLXR5cGVzLXNo
b3VsZC1ub3QtcHJvZHVjZS1kdXBsaWNhdGUtY3RvcnMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9kdXBsaWNhdGUtdHlwZXMtc2hvdWxkLW5vdC1wcm9kdWNlLWR1cGxpY2F0ZS1jdG9y
cy5odG1sCmluZGV4IDU4NDI3MTJjYWUyMzM1ODcxNTk3ZGFiMzBhYWIzYzM2NzEyY2Y2ZDQuLmU3
MmE0NzNmMDg3ODU4Y2JlMjU1NDliNDg2NjRhNTdhNjVjNjliYzggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9kdXBsaWNhdGUtdHlwZXMtc2hvdWxkLW5vdC1wcm9kdWNlLWR1
cGxpY2F0ZS1jdG9ycy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kdXBsaWNh
dGUtdHlwZXMtc2hvdWxkLW5vdC1wcm9kdWNlLWR1cGxpY2F0ZS1jdG9ycy5odG1sCkBAIC0zNSw3
ICszNSw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBmbG9hdFtdIGJ1ZmZl
ciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBz
dGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlv
dXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5
cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS0yLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS0yLmh0bWwKaW5k
ZXggMDVhZDIyZjljYjM2ODgzZjYzOWY0NGQ0MGMxZjRiYjU0OTlhMDEyNy4uODZiODEwYTQxYzFk
MTZlYjI0OWZlZjk2MzdjMDU2ZDFiZDA5OTA5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMi5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLTIu
aHRtbApAQCAtNTYsNyArNTYsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxv
YXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFy
dChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3Vy
Y2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLTMu
aHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxp
ZmV0aW1lLTMuaHRtbAppbmRleCBhNTQ4YzcyM2RjOWYwNDg2MmE3ZTgyZTgxYjc0NWI1MDkxZTFi
ZGZkLi5jMjYyN2ZkZmYzN2QyNTcwNWUzMTdiMDA3ZGFjYTZkNTE5Yjg4NzUwIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGlt
ZS0zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFy
aWFibGUtbGlmZXRpbWUtMy5odG1sCkBAIC01Nyw3ICs1Nyw3IEBAIGZyYWdtZW50IGZsb2F0NCBm
cmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMCB7
CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFz
eW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTog
c2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFy
aWFibGUtbGlmZXRpbWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJv
cGVyLXZhcmlhYmxlLWxpZmV0aW1lLmh0bWwKaW5kZXggMTZhMWVlZDk4YjNjMzhiMTY1ODBmZDZl
ODhmNDZiZDNjNzY2NjMzNC4uY2Y4MTE4Njc1ZDYwNTE5ZWU4YTI2NmQyYzM4NDA0Mjc4NTBjMjRk
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFy
aWFibGUtbGlmZXRpbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJl
LXByb3Blci12YXJpYWJsZS1saWZldGltZS5odG1sCkBAIC01Niw3ICs1Niw3IEBAIGZyYWdtZW50
IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9U
YXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFz
Iik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNX
SExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0g
e21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAg
Y29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
ImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5n
bGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2h1Z2UtYXJy
YXkuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9odWdlLWFycmF5Lmh0bWwKaW5kZXgg
MzQzOGZmOTNiYjQyNGExMjRkOTgzYzM4ODQ3ZmRiOGJmNTRhYTFkNi4uZDkzYWJkNGZhYTFhMDJi
MjU4NTljNzUyMzA1ZjEzNjUxOGE5MDQ3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL2h1Z2UtYXJyYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvaHVn
ZS1hcnJheS5odG1sCkBAIC01MSw3ICs1MSw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVy
KGRldmljZSBpbnRbXSBidWZmZXIgOiByZWdpc3Rlcih1MCksIGZsb2F0MyB0aHJlYWRJRCA6CiB9
CiBgOwogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dI
TFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgY29tcHV0ZVN0YWdlID0g
e21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiY29tcHV0ZVNoYWRlciJ9OwogCiAg
ICAgY29uc3QgYmluZEdyb3VwTGF5b3V0RGVzY3JpcHRvciA9IHtiaW5kaW5nczogW3tiaW5kaW5n
OiAwLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAic3RvcmFnZS1idWZmZXIifV19OwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2pzL3Rlc3QtaGFybmVzcy5qcyBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9qcy90ZXN0LWhhcm5lc3MuanMKaW5kZXggOGU2MTA2Nzk0MWVlYmIz
M2I5ZmEzZmRiZmE4ODIyMjJlNDQ3ZjQ2Yy4uZTJhMmRjMWVkMTBmOGRjYjc1YjA5ZWQxNTUyYTRl
ZDU5MmU3NzE3NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2pzL3Rlc3Qt
aGFybmVzcy5qcworKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvanMvdGVzdC1oYXJuZXNz
LmpzCkBAIC0yNCwxMyArMjQsMTMgQEAgZnVuY3Rpb24gaXNTY2FsYXIodHlwZSkKICAgICB9CiB9
CiAKLWZ1bmN0aW9uIGNvbnZlcnRUeXBlVG9BcnJheVR5cGUoaXNXSExTTCwgdHlwZSkKK2Z1bmN0
aW9uIGNvbnZlcnRUeXBlVG9BcnJheVR5cGUoaXNNU0wsIHR5cGUpCiB7CiAgICAgc3dpdGNoKHR5
cGUpIHsKICAgICAgICAgY2FzZSBUeXBlcy5CT09MOgotICAgICAgICAgICAgaWYgKGlzV0hMU0wp
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIEludDMyQXJyYXk7Ci0gICAgICAgICAgICByZXR1cm4g
VWludDhBcnJheTsKKyAgICAgICAgICAgIGlmIChpc01TTCkKKyAgICAgICAgICAgICAgICByZXR1
cm4gVWludDhBcnJheTsKKyAgICAgICAgICAgIHJldHVybiBJbnQzMkFycmF5OwogICAgICAgICBj
YXNlIFR5cGVzLklOVDoKICAgICAgICAgICAgIHJldHVybiBJbnQzMkFycmF5OwogICAgICAgICBj
YXNlIFR5cGVzLlVDSEFSOgpAQCAtMTE5LDE0ICsxMTksMTQgQEAgY2xhc3MgRGF0YSB7CiAgICAg
ICAgIH0KIAogICAgICAgICB0aGlzLl90eXBlID0gdHlwZTsKLSAgICAgICAgdGhpcy5fYnl0ZUxl
bmd0aCA9IChjb252ZXJ0VHlwZVRvQXJyYXlUeXBlKGhhcm5lc3MuaXNXSExTTCwgdHlwZSkpLkJZ
VEVTX1BFUl9FTEVNRU5UICogdmFsdWVzLmxlbmd0aDsKKyAgICAgICAgdGhpcy5fYnl0ZUxlbmd0
aCA9IChjb252ZXJ0VHlwZVRvQXJyYXlUeXBlKGhhcm5lc3MuaXNNU0wsIHR5cGUpKS5CWVRFU19Q
RVJfRUxFTUVOVCAqIHZhbHVlcy5sZW5ndGg7CiAKICAgICAgICAgY29uc3QgW2J1ZmZlciwgYXJy
YXlCdWZmZXJdID0gaGFybmVzcy5kZXZpY2UuY3JlYXRlQnVmZmVyTWFwcGVkKHsKICAgICAgICAg
ICAgIHNpemU6IHRoaXMuX2J5dGVMZW5ndGgsCiAgICAgICAgICAgICB1c2FnZTogR1BVQnVmZmVy
VXNhZ2UuU1RPUkFHRSB8IEdQVUJ1ZmZlclVzYWdlLk1BUF9SRUFECiAgICAgICAgIH0pOwogCi0g
ICAgICAgIGNvbnN0IHR5cGVkQXJyYXkgPSBuZXcgKGNvbnZlcnRUeXBlVG9BcnJheVR5cGUoaGFy
bmVzcy5pc1dITFNMLCB0eXBlKSkoYXJyYXlCdWZmZXIpOworICAgICAgICBjb25zdCB0eXBlZEFy
cmF5ID0gbmV3IChjb252ZXJ0VHlwZVRvQXJyYXlUeXBlKGhhcm5lc3MuaXNNU0wsIHR5cGUpKShh
cnJheUJ1ZmZlcik7CiAgICAgICAgIHR5cGVkQXJyYXkuc2V0KHZhbHVlcyk7CiAgICAgICAgIGJ1
ZmZlci51bm1hcCgpOwogCkBAIC0xNjAsNyArMTYwLDcgQEAgY2xhc3MgRGF0YSB7CiBjbGFzcyBI
YXJuZXNzIHsKICAgICBjb25zdHJ1Y3RvciAoKQogICAgIHsKLSAgICAgICAgdGhpcy5pc1dITFNM
ID0gdHJ1ZTsKKyAgICAgICAgdGhpcy5pc01TTCA9IGZhbHNlOwogICAgIH0KIAogICAgIGFzeW5j
IHJlcXVlc3REZXZpY2UoKQpAQCAtMTc2LDE4ICsxNzYsMTggQEAgY2xhc3MgSGFybmVzcyB7CiAg
ICAgfQogCiAgICAgLy8gU2V0cyB3aGV0aGVyIEhhcm5lc3MgZ2VuZXJhdGVzIFdITFNMIG9yIE1T
TCBzaGFkZXJzLgotICAgIHNldCBpc1dITFNMKHZhbHVlKQorICAgIHNldCBpc01TTCh2YWx1ZSkK
ICAgICB7Ci0gICAgICAgIHRoaXMuX2lzV0hMU0wgPSB2YWx1ZTsKLSAgICAgICAgdGhpcy5fc2hh
ZGVySGVhZGVyID0gdmFsdWUgPyAiIiA6IGAKKyAgICAgICAgdGhpcy5faXNNU0wgPSB2YWx1ZTsK
KyAgICAgICAgdGhpcy5fc2hhZGVySGVhZGVyID0gdmFsdWUgPyBgCiAjaW5jbHVkZSA8bWV0YWxf
c3RkbGliPgogdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotICAgICAgICBgOworICAgICAgICBgIDog
IiI7CiAgICAgfQogCi0gICAgZ2V0IGlzV0hMU0woKQorICAgIGdldCBpc01TTCgpCiAgICAgewot
ICAgICAgICByZXR1cm4gdGhpcy5faXNXSExTTDsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2lzTVNM
OwogICAgIH0KIAogICAgIC8qKgpAQCAtMjI4LDE4ICsyMjgsNyBAQCB1c2luZyBuYW1lc3BhY2Ug
bWV0YWw7CiAgICAgICAgIH0pOwogCiAgICAgICAgIGxldCBlbnRyeVBvaW50Q29kZTsKLSAgICAg
ICAgaWYgKHRoaXMuX2lzV0hMU0wpIHsKLSAgICAgICAgICAgIGFyZ3NEZWNsYXJhdGlvbnMudW5z
aGlmdChgZGV2aWNlICR7d2hsc2xBcmd1bWVudFR5cGUodHlwZSl9W10gcmVzdWx0IDogcmVnaXN0
ZXIodTApYCk7Ci0gICAgICAgICAgICBsZXQgY2FsbENvZGUgPSBgJHtuYW1lfSgke2Z1bmN0aW9u
Q2FsbEFyZ3Muam9pbigiLCAiKX0pYDsKLSAgICAgICAgICAgIGNhbGxDb2RlID0gY29udmVydFRv
V0hMU0xPdXRwdXRUeXBlKGNhbGxDb2RlLCB0eXBlKTsKLSAgICAgICAgICAgIGVudHJ5UG9pbnRD
b2RlID0gYAotW251bXRocmVhZHMoMSwgMSwgMSldCi1jb21wdXRlIHZvaWQgX2NvbXB1dGVfbWFp
bigke2FyZ3NEZWNsYXJhdGlvbnMuam9pbigiLCAiKX0pCi17Ci0gICAgcmVzdWx0WzBdID0gJHtj
YWxsQ29kZX07Ci19Ci1gOwotICAgICAgICB9IGVsc2UgeworICAgICAgICBpZiAodGhpcy5faXNN
U0wpIHsKICAgICAgICAgICAgIGFyZ3NEZWNsYXJhdGlvbnMudW5zaGlmdChgZGV2aWNlICR7Y29u
dmVydFR5cGVUb1dITFNMVHlwZSh0eXBlKX0qIHJlc3VsdCBbW2lkKDApXV07YCk7CiAgICAgICAg
ICAgICBlbnRyeVBvaW50Q29kZSA9IGAKIHN0cnVjdCBfY29tcHV0ZV9hcmdzIHsKQEAgLTI1MCw2
ICsyMzksMTcgQEAga2VybmVsIHZvaWQgX2NvbXB1dGVfbWFpbihkZXZpY2UgX2NvbXB1dGVfYXJn
cyYgYXJncyBbW2J1ZmZlcigwKV1dKQogewogICAgICphcmdzLnJlc3VsdCA9ICR7bmFtZX0oJHtm
dW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwgIil9KTsKIH0KK2A7CisgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICBhcmdzRGVjbGFyYXRpb25zLnVuc2hpZnQoYGRldmljZSAke3dobHNsQXJndW1l
bnRUeXBlKHR5cGUpfVtdIHJlc3VsdCA6IHJlZ2lzdGVyKHUwKWApOworICAgICAgICAgICAgbGV0
IGNhbGxDb2RlID0gYCR7bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwgIil9KWA7Cisg
ICAgICAgICAgICBjYWxsQ29kZSA9IGNvbnZlcnRUb1dITFNMT3V0cHV0VHlwZShjYWxsQ29kZSwg
dHlwZSk7CisgICAgICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKK1tudW10aHJlYWRzKDEsIDEs
IDEpXQorY29tcHV0ZSB2b2lkIF9jb21wdXRlX21haW4oJHthcmdzRGVjbGFyYXRpb25zLmpvaW4o
IiwgIil9KQoreworICAgIHJlc3VsdFswXSA9ICR7Y2FsbENvZGV9OworfQogYDsKICAgICAgICAg
fQogICAgICAgICBjb25zdCBjb2RlID0gdGhpcy5fc2hhZGVySGVhZGVyICsgZnVuY3Rpb25zICsg
ZW50cnlQb2ludENvZGU7CkBAIC0yNjAsNyArMjYwLDcgQEAga2VybmVsIHZvaWQgX2NvbXB1dGVf
bWFpbihkZXZpY2UgX2NvbXB1dGVfYXJncyYgYXJncyBbW2J1ZmZlcigwKV1dKQogICAgICAgICB9
IGNhdGNoIHsKICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiSGFybmVzcyBlcnJvcjogVW5h
YmxlIHRvIHJlYWQgcmVzdWx0cyEiKTsKICAgICAgICAgfQotICAgICAgICBjb25zdCBhcnJheSA9
IG5ldyAoY29udmVydFR5cGVUb0FycmF5VHlwZSh0aGlzLl9pc1dITFNMLCB0eXBlKSkocmVzdWx0
KTsKKyAgICAgICAgY29uc3QgYXJyYXkgPSBuZXcgKGNvbnZlcnRUeXBlVG9BcnJheVR5cGUodGhp
cy5faXNNU0wsIHR5cGUpKShyZXN1bHQpOwogICAgICAgICB0aGlzLl9yZXN1bHRCdWZmZXIudW5t
YXAoKTsKIAogICAgICAgICByZXR1cm4gYXJyYXk7CkBAIC0yODAsMTQgKzI4MCw3IEBAIGtlcm5l
bCB2b2lkIF9jb21wdXRlX21haW4oZGV2aWNlIF9jb21wdXRlX2FyZ3MmIGFyZ3MgW1tidWZmZXIo
MCldXSkKICAgICAgICAgY29uc3QgW2FyZ3NMYXlvdXRzLCBhcmdzUmVzb3VyY2VCaW5kaW5ncywg
YXJnc0RlY2xhcmF0aW9ucywgZnVuY3Rpb25DYWxsQXJnc10gPSB0aGlzLl9zZXRVcEFyZ3VtZW50
cyhhcmdzKTsKIAogICAgICAgICBsZXQgZW50cnlQb2ludENvZGU7Ci0gICAgICAgIGlmICh0aGlz
Ll9pc1dITFNMKSB7Ci0gICAgICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKLVtudW10aHJlYWRz
KDEsIDEsIDEpXQotY29tcHV0ZSB2b2lkIF9jb21wdXRlX21haW4oJHthcmdzRGVjbGFyYXRpb25z
LmpvaW4oIiwgIil9KQotewotICAgICR7bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwg
Iil9KTsKLX1gOwotICAgICAgICB9IGVsc2UgeworICAgICAgICBpZiAodGhpcy5faXNNU0wpIHsK
ICAgICAgICAgICAgIGVudHJ5UG9pbnRDb2RlID0gYAogc3RydWN0IF9jb21wdXRlX2FyZ3Mgewog
ICAgICR7YXJnc0RlY2xhcmF0aW9ucy5qb2luKCJcbiIpfQpAQCAtMjk2LDggKzI4OSwxNCBAQCBz
dHJ1Y3QgX2NvbXB1dGVfYXJncyB7CiBrZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWluKGRldmljZSBf
Y29tcHV0ZV9hcmdzJiBhcmdzIFtbYnVmZmVyKDApXV0pCiB7CiAgICAgJHtuYW1lfSgke2Z1bmN0
aW9uQ2FsbEFyZ3Muam9pbigiLCAiKX0pOwotfQotYDsKK31gOworICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgZW50cnlQb2ludENvZGUgPSBgCitbbnVtdGhyZWFkcygxLCAxLCAxKV0KK2Nv
bXB1dGUgdm9pZCBfY29tcHV0ZV9tYWluKCR7YXJnc0RlY2xhcmF0aW9ucy5qb2luKCIsICIpfSkK
K3sKKyAgICAke25hbWV9KCR7ZnVuY3Rpb25DYWxsQXJncy5qb2luKCIsICIpfSk7Cit9YDsKICAg
ICAgICAgfQogICAgICAgICBjb25zdCBjb2RlID0gdGhpcy5fc2hhZGVySGVhZGVyICsgZnVuY3Rp
b25zICsgZW50cnlQb2ludENvZGU7CiAgICAgICAgIHRoaXMuX2NhbGxGdW5jdGlvbihjb2RlLCBh
cmdzTGF5b3V0cywgYXJnc1Jlc291cmNlQmluZGluZ3MpOwpAQCAtMzEzLDcgKzMxMiw3IEBAIGtl
cm5lbCB2b2lkIF9jb21wdXRlX21haW4oZGV2aWNlIF9jb21wdXRlX2FyZ3MmIGFyZ3MgW1tidWZm
ZXIoMCldXSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgCiAgICAgICAgIGxldCBlbnRy
eVBvaW50Q29kZTsKLSAgICAgICAgaWYgKHRoaXMuaXNXSExTTCkgeworICAgICAgICBpZiAodGhp
cy5pc01TTCkgewogICAgICAgICAgICAgZW50cnlQb2ludENvZGUgPSBgCiBbbnVtdGhyZWFkcygx
LCAxLCAxKV0KIGNvbXB1dGUgdm9pZCBfY29tcHV0ZV9tYWluKCkgeyB9YDsKQEAgLTMyNiw3ICsz
MjUsNyBAQCBrZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWluKCkgeyB9YDsKIAogICAgICAgICB0aGlz
Ll9kZXZpY2UucHVzaEVycm9yU2NvcGUoInZhbGlkYXRpb24iKTsKICAgICAgICAgCi0gICAgICAg
IGNvbnN0IHNoYWRlcnMgPSB0aGlzLl9kZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTog
Y29kZSwgaXNXSExTTDogdGhpcy5faXNXSExTTCB9KTsKKyAgICAgICAgY29uc3Qgc2hhZGVycyA9
IHRoaXMuX2RldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBjb2RlLCBpc01TTDogdGhp
cy5faXNNU0wgfSk7CiAgICAgCiAgICAgICAgIHRoaXMuX2RldmljZS5jcmVhdGVDb21wdXRlUGlw
ZWxpbmUoewogICAgICAgICAgICAgY29tcHV0ZVN0YWdlOiB7CkBAIC0zNzIsMTIgKzM3MSwxMiBA
QCBrZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWluKCkgeyB9YDsKIAogICAgICAgICBmb3IgKGxldCBp
ID0gMTsgaSA8PSBhcmdzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAgICBjb25zdCBhcmcgPSBh
cmdzW2kgLSAxXTsKLSAgICAgICAgICAgIGlmICh0aGlzLl9pc1dITFNMKSB7Ci0gICAgICAgICAg
ICAgICAgYXJnc0RlY2xhcmF0aW9ucy5wdXNoKGBkZXZpY2UgJHt3aGxzbEFyZ3VtZW50VHlwZShh
cmcudHlwZSl9W10gYXJnJHtpfSA6IHJlZ2lzdGVyKHUke2l9KWApOwotICAgICAgICAgICAgICAg
IGZ1bmN0aW9uQ2FsbEFyZ3MucHVzaChjb252ZXJ0VG9XSExTTElucHV0VHlwZShgYXJnJHtpfWAg
KyAoYXJnLmlzQnVmZmVyID8gIiIgOiAiWzBdIiksIGFyZy50eXBlKSk7Ci0gICAgICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgaWYgKHRoaXMuX2lzTVNMKSB7CiAgICAgICAgICAgICAgICAg
YXJnc0RlY2xhcmF0aW9ucy5wdXNoKGBkZXZpY2UgJHtjb252ZXJ0VHlwZVRvV0hMU0xUeXBlKGFy
Zy50eXBlKX0qIGFyZyR7aX0gW1tpZCgke2l9KV1dO2ApOwogICAgICAgICAgICAgICAgIGZ1bmN0
aW9uQ2FsbEFyZ3MucHVzaCgoYXJnLmlzQnVmZmVyID8gIiIgOiAiKiIpICsgYGFyZ3MuYXJnJHtp
fWApOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBhcmdzRGVjbGFyYXRp
b25zLnB1c2goYGRldmljZSAke3dobHNsQXJndW1lbnRUeXBlKGFyZy50eXBlKX1bXSBhcmcke2l9
IDogcmVnaXN0ZXIodSR7aX0pYCk7CisgICAgICAgICAgICAgICAgZnVuY3Rpb25DYWxsQXJncy5w
dXNoKGNvbnZlcnRUb1dITFNMSW5wdXRUeXBlKGBhcmcke2l9YCArIChhcmcuaXNCdWZmZXIgPyAi
IiA6ICJbMF0iKSwgYXJnLnR5cGUpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGFyZ3NM
YXlvdXRzLnB1c2goewogICAgICAgICAgICAgICAgIGJpbmRpbmc6IGksCkBAIC00MTEsNyArNDEw
LDcgQEAga2VybmVsIHZvaWQgX2NvbXB1dGVfbWFpbigpIHsgfWA7CiAKICAgICAgICAgdGhpcy5f
ZGV2aWNlLnB1c2hFcnJvclNjb3BlKCJ2YWxpZGF0aW9uIik7CiAKLSAgICAgICAgY29uc3Qgc2hh
ZGVycyA9IHRoaXMuX2RldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBjb2RlLCBpc1dI
TFNMOiB0aGlzLl9pc1dITFNMIH0pOworICAgICAgICBjb25zdCBzaGFkZXJzID0gdGhpcy5fZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IGNvZGUsIGlzTVNMOiB0aGlzLl9pc01TTCB9
KTsKICAgICAKICAgICAgICAgY29uc3QgcGlwZWxpbmUgPSB0aGlzLl9kZXZpY2UuY3JlYXRlQ29t
cHV0ZVBpcGVsaW5lKHsKICAgICAgICAgICAgIGxheW91dDogcGlwZWxpbmVMYXlvdXQsCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMtYnJlYWsuaHRtbCBiL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1icmVhay5odG1sCmluZGV4IDZjNDExNjdlZjBhOTc3
ZDk0ZDdiY2IwNmQ5NzM0YzkwNjNkZTI2ZTEuLmY0ZGZkNGQ1OGViYTAxOWYzNGQzZDZlY2QxOWM0
OTYwNjFiMWY2YmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1i
cmVhay5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1icmVhay5odG1s
CkBAIC0zNyw3ICszNyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBz
aGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRl
dmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0p
OwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3Qg
cHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3BzLWNvbnRpbnVlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvbG9vcHMtY29udGludWUuaHRtbAppbmRleCAzOTQ5ZmUzYTQ5YjliYzE1MzM4ZjE3
NzE3ZTdiNjFiZTUxZWY3MDBjLi45MjEyYTk3ZmRjMTQ5YWVlOWY5OTE2OWU5OTY0M2VjOTI4MjRm
NzUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMtY29udGludWUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMtY29udGludWUuaHRtbApA
QCAtMzcsNyArMzcsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hh
ZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZp
Y2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsK
ICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBz
aGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHBy
aW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9sb29wcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xv
b3BzLmh0bWwKaW5kZXggNDA1ZDFlNmRkNTdhZDk1MTAwZjUwYWI3MDViNDllNWU5YmNiMTA3NS4u
NzE1ZDE4ZjgyYzllNDNmZmYxMjI5MDkyOWUzNGE1NDQxZmU2ZjJkNyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3BzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL2xvb3BzLmh0bWwKQEAgLTMzLDcgKzMzLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdt
ZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNv
bnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMg
ZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVu
dFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFk
ZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbWFrZS1hcnJheS1yZWZlcmVuY2Uu
aHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYWtlLWFycmF5LXJlZmVyZW5jZS5odG1s
CmluZGV4IDE4YWQwNmE3OWIwNjYxMDgzOTJlOGIwZThmNGQ4MGJkMGFjOWVhM2YuLjQ0YzQwMTg5
MWZlZGRiN2ViNDUyZTU2YTBhZTM2N2NiMjhjZmRhYjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9tYWtlLWFycmF5LXJlZmVyZW5jZS5odG1sCisrKyBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9tYWtlLWFycmF5LXJlZmVyZW5jZS5odG1sCkBAIC0xMjAsNyArMTIwLDcg
QEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lz
dGVyKHUwKSwgZmxvYXQzIHRocmVhZElEIDoKIH0KIGA7CiBhc3luYyBmdW5jdGlvbiBzdGFydChk
ZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9
KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5
UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNj
cmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJz
dG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
bWF0cml4LTIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXgtMi5odG1sCmlu
ZGV4IDdiOTljYWRmMWJiMTI2NGFjZTYzOTg4YWU0ZmZjMmFjNWJjYTRhYTUuLjIwMWI1MjM5ZTI2
Yzg2YjNhY2I1MTg1NWMwZTI4YmVkM2MxYmNjZWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9tYXRyaXgtMi5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9t
YXRyaXgtMi5odG1sCkBAIC03Niw3ICs3Niw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVy
KGRldmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBg
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hM
U0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAg
ICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6
IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbWF0cml4LW1lbW9yeS1sYXlvdXQuaHRtbCBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXgtbWVtb3J5LWxheW91dC5odG1sCmluZGV4IDVm
Njc0ZDExODk2YWZmOTEzN2E5YzVkMDc3ZDEwOWEzN2NmMzZjYTUuLjVhMzZkNWRmNTVjZWY4NjU5
Nzc5NTQ0MTg0MjkwMmQyODljOTBlMmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9tYXRyaXgtbWVtb3J5LWxheW91dC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9tYXRyaXgtbWVtb3J5LWxheW91dC5odG1sCkBAIC00Miw3ICs0Miw3IEBAIGNvbXB1dGUg
dm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBmbG9hdDR4NFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUw
KSwgZmxvYXQzIHRocmVhCiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBz
aGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25z
dCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21w
dXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2Jp
bmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZl
ciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbWF0cml4Lmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbWF0cml4Lmh0bWwKaW5kZXggYzM4MWJjOTFhZTI4
ZmM2MWNhZWM4ZDkyNGM0ZDJjOWE4ZTNkMDc2NS4uZmUzNjIwZTE3OWExNjJkMzA0NDA2MDYyNWZm
MzRlNTYwZTczOTY0NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJp
eC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXguaHRtbApAQCAtODgs
NyArODgsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgZmxvYXRbXSBidWZm
ZXIgOiByZWdpc3Rlcih1MCksIGZsb2F0MyB0aHJlYWRJRAogYDsKIAogYXN5bmMgZnVuY3Rpb24g
c3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlfSk7CiAgICAgY29uc3QgY29tcHV0ZVN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAiY29tcHV0ZVNoYWRlciJ9OwogCiAgICAgY29uc3QgYmluZEdyb3VwTGF5
b3V0RGVzY3JpcHRvciA9IHtiaW5kaW5nczogW3tiaW5kaW5nOiAwLCB2aXNpYmlsaXR5OiA3LCB0
eXBlOiAic3RvcmFnZS1idWZmZXIifV19OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL25lc3RlZC1kb3QtZXhwcmVzc2lvbi1ydmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9uZXN0ZWQtZG90LWV4cHJlc3Npb24tcnZhbHVlLmh0bWwKaW5kZXggYjA1N2Yx
ZmIxMmI1NjJiYTA5OTc0MDRlNDI4ODhhNGVjMDRiMTJkOC4uOTA3NjdiMzczMzQzZDZlOTk0M2Zi
NzI5MTdhZTRkMjc5ZjQzMGY2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L25lc3RlZC1kb3QtZXhwcmVzc2lvbi1ydmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvbmVzdGVkLWRvdC1leHByZXNzaW9uLXJ2YWx1ZS5odG1sCkBAIC00MSw3ICs0MSw3
IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0
ZSgwKSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZl
cnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hh
ZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwg
ZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xv
Z3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL25lc3RlZC1sb29wLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWxv
b3AuaHRtbAppbmRleCBlZDgwNzBmZWMzMTk2MWViMTMzZDdhYmQxNTg1NmMwZmM0MGUyMDMwLi43
MWQyMzI5YTU2YmI2NDNkNTQ2MmJiMzAyMzFkMTBhYTJiNTE1ZmUxIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWxvb3AuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvbmVzdGVkLWxvb3AuaHRtbApAQCAtNjksNyArNjksNyBAQCBmcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFy
Z2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIp
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hM
U0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHtt
b2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNv
bnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJm
cmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xl
LXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9udWxsLWRlcmVm
ZXJlbmNlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbnVsbC1kZXJlZmVyZW5jZS5o
dG1sCmluZGV4IGQxNzk0NTBiZTZiMTZiNTYxMDA1NTBhNjM0OTdkYTg2NGQzZmU4OTEuLjU3OTBj
MTBiOGE2N2M3ZTQ5YmY4YzE5YTQ3OTdhYWEwZTgyYjc1ZmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9udWxsLWRlcmVmZXJlbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL251bGwtZGVyZWZlcmVuY2UuaHRtbApAQCAtNTAsNyArNTAsNyBAQCBjb21w
dXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgZmxvYXRbXSBidWZmZXIgOiByZWdpc3Rlcih1
MCksIGZsb2F0MyB0aHJlYWRJRAogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7
Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAg
Y29uc3QgY29tcHV0ZVN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
Y29tcHV0ZVNoYWRlciJ9OwogCiAgICAgY29uc3QgYmluZEdyb3VwTGF5b3V0RGVzY3JpcHRvciA9
IHtiaW5kaW5nczogW3tiaW5kaW5nOiAwLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAic3RvcmFnZS1i
dWZmZXIifV19OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL29vYi1hY2Nl
c3MuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9vb2ItYWNjZXNzLmh0bWwKaW5kZXgg
ZDM3YjM5NDM4NTM5ZmQ3ZDM5NWU3ZjE2ZGYwYjFjODIwMDRkNDlhYy4uMTFjYTZjY2QwYWVjOWJl
MzA0MWI1YzcwZmYyODVhNGJjM2JjMWFkOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL29vYi1hY2Nlc3MuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvb29i
LWFjY2Vzcy5odG1sCkBAIC0xNyw3ICsxNyw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVy
KGRldmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBg
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hM
U0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAg
ICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6
IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1hYnN0cmFj
dC1sdmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2FuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sCmluZGV4IGVhMTg1YTlmMWFhM2FjYWM2ZTRjZDFl
ZmJlNWZiNTUyODQ5NjNiYTUuLjRmODY2ZmMzOTQ4YzgyNGRhOWViYzg4MDE4YjllMzNhZGUwYzc5
NmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2FuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sCkBAIC00Miw3ICs0
Miw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNo
YWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2Fu
ZGVyLWx2YWx1ZS0zLWxldmVscy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3Bl
cnR5cmVzb2x2ZXIvYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwKaW5kZXggZDM0OTAxZDAyMjQ2
MDExYTlmZmFkMjcyOGYxOThjZmZlZjhhY2ZjNy4uYWE5YTEzYmQyNzk3OGFjZjE1YzMzYTg3ZWQz
ZDQzYWMyMzIzOGM3MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3Bl
cnR5cmVzb2x2ZXIvYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwK
QEAgLTQ1LDcgKzQ1LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9U
YXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFz
Iik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNX
SExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0g
e21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAg
Y29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
ImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5n
bGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5
cmVzb2x2ZXIvYW5kZXItbHZhbHVlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUuaHRtbAppbmRleCAxMTdhMTUwOGIwZDlhMDFlYzI5
MjRkYzM0ZDQxOGM4N2ZjOWM4M2E3Li45NDliMWRkNzUyOWM1Y2ZlNWI2OTI5YzNkMjM5M2FiNTRl
MGU4NTM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNv
bHZlci9hbmRlci1sdmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUuaHRtbApAQCAtMzcsNyArMzcsNyBAQCBmcmFnbWVu
dCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3Rh
cnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qg
c2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291
cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21v
ZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBj
b25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXIuaHRtbAppbmRleCA2
OWY3MzE4Y2Q5ZDhlOTEwM2UzYjQ0NWMwZDBkMjAzYjkyYmNjMjBiLi5hNDQ4NDYxYjA4MzU2OTA5
MWVlN2FhYmQ3NmE0ZTQ2NmIwNGJlMDZlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLmh0bWwKQEAgLTMzLDcgKzMzLDcgQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52
YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvZ2V0dGVyLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9nZXR0ZXIuaHRtbApp
bmRleCBiZjIyNjExZTAzN2ZmZDcwNTFhZjk2N2I2NmE4MGYxMGFmMmNiN2I3Li5kZGVhZjI3NGNj
ZTg0MDEzOWZhZDYzM2ZmMjY1Nzc0ZDRlNTU5MzBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9nZXR0ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9nZXR0ZXIuaHRtbApAQCAtMjksNyArMjks
NyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNv
bnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMg
ZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVu
dFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFk
ZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRl
eGVyLWFuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbAppbmRl
eCBhZmQ3NDM0OWFhMmE1MjkyZmI1NDljZTU1MzVlZjc0MjRjZmM3MTlhLi4xODJlNDY1Y2Y0Zjhl
ZWY1NDM3MjI1MDBmYjViYjI2YjM2NTlmZjEwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWFic3RyYWN0LWx2YWx1ZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4
ZXItYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKQEAgLTQyLDcgKzQyLDcgQEAgZnJhZ21lbnQg
ZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0
KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRy
eVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1
bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29u
c3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFs
dWUtMy1sZXZlbHMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29s
dmVyL2luZGV4ZXItYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwKaW5kZXggZWIxZTUxMWJjOGJm
ZWYzM2Q2YmVjM2M2M2Q2ZWEzYjM1YzI3MjE3OC4uNzA3NjcyZWRhZTFiZWIwNDljZGEzNzEyMGQ3
MDQ0NDVhZjliN2JlNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3Bl
cnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFsdWUtMy1sZXZlbHMuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWx2YWx1
ZS0zLWxldmVscy5odG1sCkBAIC00NSw3ICs0NSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVu
dFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBz
aGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25z
dCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRl
eFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1
bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRv
cG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItbHZhbHVlLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWx2YWx1
ZS5odG1sCmluZGV4IDdkZWQwM2E0NDczNGIxZjFjODQ1MTFiN2Q2MDhlNmNmYjhmYjBlMDAuLjNl
ODVhNGMzNDMxYjNiOGMwMmNlOTMzMmY5MDI3ZTM3NWQ3ZWFhYTIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItbHZhbHVl
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5k
ZXhlci1hbmRlci1sdmFsdWUuaHRtbApAQCAtMzcsNyArMzcsNyBAQCBmcmFnbWVudCBmbG9hdDQg
ZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNl
KSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAg
ICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmlt
aXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLmh0bWwK
aW5kZXggMTc3NjFmOWNhN2UyMjAwMzhhNzc5MzQ2OGRiYzNlNmZmYTZiN2M2Yy4uY2JkZTc1ZmRj
NzhkYjQyZDIxZDJmNDQzMDczZDVmY2ZjZWFmZmNjMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXIuaHRt
bApAQCAtMzMsNyArMzMsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNW
X1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52
YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2Ug
PSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAg
ICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50
OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlh
bmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVy
dHlyZXNvbHZlci9pbmRleGVyLWdldHRlci5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1nZXR0ZXIuaHRtbAppbmRleCAxOTY5MTZhOGVkZGM2
YmQ3NmRiNGViMmNlMjhmYTY3ZjExNDBlYmRlLi44YTVkOWEyZmJmMjAxYjNiMTc4NDczNzQ4NWMx
Yzc1YTU2M2ZiNTM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVy
dHlyZXNvbHZlci9pbmRleGVyLWdldHRlci5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItZ2V0dGVyLmh0bWwKQEAgLTI4LDcgKzI4LDcg
QEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25z
dCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVy
TW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRT
dGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVy
In07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhl
ci1zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLTMtbGV2ZWxzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUt
My1sZXZlbHMuaHRtbAppbmRleCBhNmQ5YjRlYzVlYjVjMWM0MWZkODVkMWU4ZDkwZWI3MjA0NGI0
NDMwLi44NTNhYTJlZGQzOWMyYWYwMWU4MDA1MGNjNjc0ZWJjNzQ0OTgyODRiIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRl
ci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1s
ZXZlbHMuaHRtbApAQCAtNjAsNyArNjAsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVy
dGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFk
ZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9n
eSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbCBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVy
LWFic3RyYWN0LWx2YWx1ZS5odG1sCmluZGV4IGU0NmUwNmRhNWYwYjUxNGY1OTZkNDc1ODkxNzMx
YWYyZWFmOWFlNTQuLmRhNjFiMTQ2ZDdjYThiYjU4OWMxYjZlZTdiY2RkZmE2ZTk2ZDg1YTQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4
ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5odG1s
CkBAIC00Nyw3ICs0Nyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1Zf
VGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZh
cyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAg
IGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFu
Z2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0
eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItbHZhbHVlLmh0bWwKaW5kZXgg
ODI3OTgxYTY2MjMxOGU5OWFlOGQ1NmZmYTQzZTUxNDUyMGJmYjE4NS4uYmVjOWQ5MmY3NmRiMWMx
OWNkN2NhM2QyYjRmNGVmMzU4OTRlNDUxMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItbHZhbHVlLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXIt
bHZhbHVlLmh0bWwKQEAgLTQyLDcgKzQyLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hh
ZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZl
cnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hh
ZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwg
ZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xv
Z3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXIuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLmh0bWwKaW5kZXggNjJk
ZGY1ZWE3MTNjZDI0OTQxZmZiNGIxZTgwOGY0OTMzYWYxYzNjYy4uYjYxNjIzYWIxZjQ1YjFiMTIx
OWUyNTU1NmZkNjVkOWFjYjY5YWYyMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci5odG1sCkBAIC00
NSw3ICs0NSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0
IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwog
CiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6
IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1
bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0
IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFn
bWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0
cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29s
dmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZl
bHMuaHRtbAppbmRleCA1OWM0ODUwOTAwMGY2YTI2YjJmMDhhOTNjNWM4ZDExZWZmMjhkYjY3Li40
MThiODU5NWMzYzk2NGQ5Zjc1YTE5MTY0ZDg0NGE2NTVhNWRiOWU3IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0ZXItYWJzdHJhY3QtbHZh
bHVlLTMtbGV2ZWxzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5
cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCkBAIC02MCw3ICs2
MCw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNo
YWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3Nl
dHRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbAppbmRleCA2OGQ1ODdlNzYw
ZWUzMzQzNWM2N2FhNjQ2YTBiYzdhNGUwYTg5MjU0Li45NmFkOGM4ZDgwMjQyMjRhOWVlMjQ1NThl
NzhhNDhkZjgwNDE1ZjBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5o
dG1sCkBAIC00Nyw3ICs0Nyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDog
U1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNh
bnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9Owog
ICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRy
aWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL3NldHRlci1sdmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1sdmFsdWUuaHRtbAppbmRleCA3YWJhNWNmZGVlMjVm
NTA5OWNkYmI4NTBlYWIyZDFiYzNiNjRlZTY1Li5kNTBmOGI4NGE1NjQ2Yjk0YzdlZTJiOTIxZDhm
MDI4MWFjOTFhNzU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVy
dHlyZXNvbHZlci9zZXR0ZXItbHZhbHVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWx2YWx1ZS5odG1sCkBAIC00Miw3ICs0Miw3IEBA
IGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3Qg
Y2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBz
aGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3Rh
Z2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9
OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZWFkLW1vZGlmeS13cml0ZS1oaWdoLXpv
bWJpZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZWFkLW1vZGlmeS13cml0ZS1o
aWdoLXpvbWJpZXMuaHRtbAppbmRleCAwNDA3ZjcwNTY5YmY3YjdmZDk1ZWQwOWY2NTRmZWJlNzcz
N2JmNGM3Li5iYTRkZDA4MGNlOGIxMzhmN2Q2NjM1YTNjYmY4ZDU2NjBhYmI2ZjZiIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcmVhZC1tb2RpZnktd3JpdGUtaGlnaC16b21i
aWVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRl
LWhpZ2gtem9tYmllcy5odG1sCkBAIC0zNSw3ICszNSw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRl
U2hhZGVyKGRldmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVh
ZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3Rh
Z2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07
CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2Jp
bmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcmVhZC1tb2RpZnktd3JpdGUuaHRtbCBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZWFkLW1vZGlmeS13cml0ZS5odG1sCmluZGV4IGNl
ZjdmMDFmNTYxY2M3Yjg2NWE3NTNkMTExM2I3NzA4NzkyNGJjYzEuLjhkMDU2YTNhZmJmZTNmOWYw
OTc1OTc4NmYwZjI2MjdiMzczMTM4YTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9yZWFkLW1vZGlmeS13cml0ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9yZWFkLW1vZGlmeS13cml0ZS5odG1sCkBAIC0zOSw3ICszOSw3IEBAIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KCkgewogICAgIGNvbnN0IGFkYXB0ZXIgPSBhd2FpdCBuYXZpZ2F0b3IuZ3B1LnJlcXVl
c3RBZGFwdGVyKCk7CiAgICAgY29uc3QgZGV2aWNlID0gYXdhaXQgYWRhcHRlci5yZXF1ZXN0RGV2
aWNlKCk7CiAKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9
KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5
UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNj
cmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJz
dG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
cmV0dXJuLWxvY2FsLXZhcmlhYmxlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcmV0
dXJuLWxvY2FsLXZhcmlhYmxlLmh0bWwKaW5kZXggNmY2OTQ3MDQ0ZDgwYmVmMjE5NDljYzJhYmM4
YWJmM2JiMjNjZDM3Ny4uNzVkMWM5Y2E1YmEyYTY2OTU4Nzc2MjdmOTk5ZDgwZDFjOWJhMDY4YyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JldHVybi1sb2NhbC12YXJpYWJs
ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZXR1cm4tbG9jYWwtdmFyaWFi
bGUuaHRtbApAQCAtMzQsNyArMzQsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIo
ZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFz
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBz
dGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwg
ZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAg
IGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xMC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEwLmh0bWwKaW5kZXgg
N2I5NDk1Njk2Y2VlMDAxMDg1ZWZiNjY3MGU5MWY3MDcwOTJmNmI4Yi4uYmFiYTI2NDAxNDlhYWIy
MDNhZTgyMjFhMmVhOGNlNGNjOGQ2ZjE2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEw
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEwLmh0bWwKQEAgLTIyLDggKzIyLDggQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9u
KSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qg
dmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVy
dGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOwor
ICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEx
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTEuaHRtbAppbmRleCBkMWRhMTU5ZDRmZWJlYWEzMDFh
ZTNiZDRkMTA3OTc4OTRlNzZmNDgyLi42NDI0YjFiNzU0Yjk5NjUwYmQ2ZGEyMzllZDJjOTM5OTIy
MWU5YTM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTEuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMTEuaHRtbApAQCAtMjUsOCArMjUsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21l
bnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNo
YWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21l
bnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJh
Z21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1z
dHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTIuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy0xMi5odG1sCmluZGV4IDUzYTJmNDgwNDYxNWY2MWUwYzcwYjJkOTM1MjIyYWFmODAxMDYz
NDYuLmJkZDZiOGJlZDJkYjk3YjhiMGI4ZDJlOWNhZTNmZTEzY2Y1ZmEzZmIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xMi5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xMi5odG1sCkBA
IC0yNCw4ICsyNCw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9z
aXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRl
dmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAg
IGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2
ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0
ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAg
Y29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTog
ZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAg
IGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xMy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEzLmh0bWwKaW5kZXgg
NzRiMmQ5MTZjNzNhZjVhMjY2NTYyNGU1MjU3M2I4MWZlYThlYTkzZC4uZTI5Y2ZkMTJiMDU0ZGI1
MDE0ZmEyY2Q1MTVkMThmMTljMjQ0N2Q2YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEzLmh0bWwKQEAgLTIyLDggKzIyLDggQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9u
KSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qg
dmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVy
dGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOwor
ICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE0
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTQuaHRtbAppbmRleCBkYjVlMWFiYTE1N2RlMjcxYTI1
NDQxMDUyZGZiYWM4ZjQ0ZWVjZjE3Li44Njg0ODNiMmQwOGQ1NTc0NzY0Yzk0ZDkzMTYxOTdlMjAx
NGIzMDFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMTQuaHRtbApAQCAtMjYsOCArMjYsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21l
bnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNo
YWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21l
bnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJh
Z21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1z
dHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTUuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy0xNS5odG1sCmluZGV4IDk1N2M5NjRhZDU2ZDQxOGM1YTgzZmI3YjkwYjI4YzFmZGIzNmY2
ZjQuLjA0MjJkOWM1NTU5M2Y3NmZmNzViN2Q3ZjgyOTQ1OTUyMmY5OGYxMTEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xNS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNS5odG1sCkBA
IC0yNiw4ICsyNiw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9z
aXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRl
dmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAg
IGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2
ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0
ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAg
Y29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTog
ZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAg
IGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xNi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE2Lmh0bWwKaW5kZXgg
MjlhNGY0YTM5ZjA5Y2Y3ZjcxZDZjYmJjYzM5N2YzNDgyZWZhNmJiMS4uZmM3YzQ5ZWIyMTY3Zjdm
M2RmZGM5Y2Y3NTlmYjhiMTY5YWE0N2NiYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE2
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE2Lmh0bWwKQEAgLTI2LDggKzI2LDggQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9u
KSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qg
dmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVy
dGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOwor
ICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE3
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTcuaHRtbAppbmRleCAzYzliZjQ3NDNiNGI4NDEyYTk1
NWIwZDlmYzQ4ODNmYjNiZjcyN2M3Li5mNmMyNWJhN2ZmMDMxN2QyM2U1ODEzMWI5MmI4OWE1NTNj
MDRlOWRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTcuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMTcuaHRtbApAQCAtMjMsOCArMjMsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21l
bnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNo
YWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21l
bnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJh
Z21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1z
dHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTguaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy0xOC5odG1sCmluZGV4IDgxMzdlNjViMzY3MTM5MWYyNzA5ZDNhMDFlNTZjMDZkOTQzYTg3
N2IuLjUwMzg4YzJmOWNmNTY1YTZhMGYwNTRiODE5MjNjYWFjZjQ3ZDNjYjcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xOC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xOC5odG1sCkBA
IC0yOCw4ICsyOCw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9z
aXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRl
dmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAg
IGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2
ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0
ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAg
Y29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTog
ZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAg
IGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0xOS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE5Lmh0bWwKaW5kZXgg
ZDIzMzJhNTBkNTdkMzhiMGFjNWYwNTUzZmE2ODk1M2I1MTA5MTU1My4uMGFkYmRlY2MxOGJhNTM0
NWY2NDkyNjg4ODE4MzY1YWEzNzgxMzAzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE5
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE5Lmh0bWwKQEAgLTI4LDggKzI4LDggQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9u
KSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qg
dmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVy
dGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOwor
ICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIu
aHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yLmh0bWwKaW5kZXggZTVkMjZiMzc4ZTZmZjAzNTA1MmFj
MTNlNDcxZTU2MWQ1YzgxZDJjNS4uZDNkNGQ1ODhlODM4N2Y5ODI4MjE1Zjc3Y2M1MzMzMDI2MzM3
YzUwYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMtMi5odG1sCkBAIC0yMyw4ICsyMyw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNo
YWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25z
dCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVy
U291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0
YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVu
dFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlw
IjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yMC5odG1sIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
LTIwLmh0bWwKaW5kZXggZDljOGFiNmY4MzRkNTA3ZjViNmU3ZDc1NTgyNjAzODcyYjQ3NWY0MC4u
NmRiYTc4YjE3YTVhMDQyOTY2ZDVlMzUyOGIyMjlmYTcwNzc3MDZhNSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzLTIwLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIwLmh0bWwKQEAgLTI0
LDggKzI0LDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlv
biA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0
YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBj
b25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7
CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21v
ZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9
OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yMS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIxLmh0bWwK
aW5kZXggMTAzMmZlOGFmYTQwYmUzMjAyNDMzOTc4ZmJmY2MwYjI0ZWRjOTkwZi4uMjk1Yjg0YjBk
NTgzMTRmZTcwOGU0MjZmZWU1NDFkYzJiNjRiOTA4MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTIxLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIxLmh0bWwKQEAgLTIwLDggKzIwLDgg
QEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bv
c2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmlj
ZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0
ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhT
aGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJh
Z21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy0yMi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIyLmh0bWwKaW5kZXggYWY0
ZmM5Y2QyZTgzZjczMzNkNGMwM2QwYTAyYzNmNWE5ZDdjZTYyMi4uNDlhMmVlOTliZTliYmNlYTU1
OWRkNWMyNGY0YzFjZjE3NjhkODViYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIyLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIyLmh0bWwKQEAgLTI0LDggKzI0LDggQEAgZnJhZ21l
bnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6
IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAg
IGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdt
ZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21l
bnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3Vy
Y2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4
U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhT
aGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1p
dGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy0yMy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIzLmh0bWwKaW5kZXggM2RkYzFmMDdiOTBh
ODQ1NjdjZTZhZTYwMjJiZGE4NjZjYTcwYmQ4OC4uMDFiMmEwZGJjYTJkMDRlMWQ5NjM2ODRmOGNj
MjRkNDc2MDNmM2ExYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIzLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzLTIzLmh0bWwKQEAgLTI0LDggKzI0LDggQEAgZnJhZ21lbnQgZmxvYXQ0
IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1Rhcmdl
dCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZl
cnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRl
eFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAg
ICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7
bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsK
ICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9s
b2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNC5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTI0Lmh0bWwKaW5kZXggMTRhMmQwN2U3OGY1MzA5ZTBlNmRi
NWNhOTYwZTFkM2ZmMTJiYTQ0MC4uMjMzMGY3NjJlZDU3NmIzYTVkZjlmN2ZmMzM5ODRjMThmZWE1
NDkzMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTI0Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTI0Lmh0bWwKQEAgLTIzLDggKzIzLDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNv
bnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMg
ZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dI
TFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFk
ZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50
U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdt
ZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3Ry
aXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTI1Lmh0bWwgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMtMjUuaHRtbAppbmRleCA5MzQyMzRkZTc2Yjk3ODY1OTE2NzM1ZGMzZjQ3OTZhM2IzYzZiY2M1
Li5iYWY3M2NiMThkNDQzZDBiNzFhNmJhNGMyNDQ3ODY4NmU1MjI5YmUxIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMtMjUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjUuaHRtbApAQCAt
MjIsOCArMjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIyKGZsb2F0NCBwb3Np
dGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAg
ICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNl
fSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0g
e21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRl
ciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTI2Lmh0
bWwKaW5kZXggNGY4MGE3NWNjNjI3NTljM2I0Yjg4ODk5NzFlNzZiYWEyMDg3OWE4Ny4uY2I1MTZh
ZjY4YzFkZGZmNTRiOWRkNjExMjZmY2Y1OTU5N2EzYmNkYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTI2Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTI2Lmh0bWwKQEAgLTI0LDggKzI0
LDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNW
X1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0g
ICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJh
Z21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFn
bWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNv
dXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0
ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRl
eFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJp
bWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTI3Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjcuaHRtbAppbmRleCAzOTFjMTU0YWY0
MzY1MGY1ZDVjNWQ1OWM3NTgyMjAyNzkyY2ZiNzNkLi41MWRiNjlkYzgyZjFjMmJiMDRkMDc4ZTIx
MzZkMDNlMTU3NWM5ZmRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjcuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMjcuaHRtbApAQCAtMjIsOCArMjIsOCBAQCBmcmFnbWVudCBmbG9h
dDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24sIGJvb2wgaXNG
b250RmFjZSA6CiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25z
dCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2
ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7
CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdl
ID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVy
In07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVU
b3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
My5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTMuaHRtbAppbmRleCBmZTRmMjQ0NjMyOGNlYmI2MzQz
NGQ4NTFkNDRhNDNjOTllYWVlMjkzLi4xNWQzMzIwMmNlZWQ3YmRmNTVhMjZlNmZmNDljZDE1MGVk
NmIzOGYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMy5odG1sCisrKyBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy0zLmh0bWwKQEAgLTIxLDggKzIxLDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGA7
CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBm
cmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZy
YWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2
ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25z
dCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRy
aWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy00Lmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtNC5odG1sCmluZGV4IDU0ZWM4YmIxYzcxMDViYmU1YTBhZDg0ODU5YTFmNjI1
MGZiMjU3MjUuLjdkMzcyZWIzMWMyMzk2NmFjOWJmMzNhYmEwMTI4NzI5NzY5ZWJjMzggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy00Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTQuaHRt
bApAQCAtMjAsOCArMjAsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0
IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3Rh
Z2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy01
Lmh0bWwKaW5kZXggZmRjMThmZTg3NDVlMTI1ZDhiZTY2ZTVlNGRmOGIwNmYzNTdkODVlZS4uODk0
NTVjN2Q0YWI5ZmVkYWM5YWQwZGNiZTlkNDNiZmIwOTllZTI4MCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzLTUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNS5odG1sCkBAIC0yMyw4ICsy
Myw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBT
Vl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChk
ZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAg
ICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qg
dmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVy
dGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAg
IGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6
IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAg
ICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtNi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTYuaHRtbAppbmRleCBl
MDVlNDY4NGM4MDZmNDhhNGI2YjIwOGRjZTEyNTBlY2ZlNjYxOTAzLi5kYWJhNjg3YWJmMDA5NDZl
YWJjNjBkYTBhOWQ2Yzc1NjVmMGU3YzY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNi5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy02Lmh0bWwKQEAgLTIyLDggKzIyLDggQEAgZnJhZ21l
bnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6
IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAg
IGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdt
ZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21l
bnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3Vy
Y2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4
U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhT
aGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1p
dGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy03Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNy5odG1sCmluZGV4IDZjZDFiNGY5NjcyYjhi
MWZjOTVmMzkwOTI3MDZiMDViOTlhNjU3YTEuLjJlYWYwNDk5OTAzMGFkNDNkNTNkMTJkMGNhOTNk
MTczN2ExNjFlMTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy03Lmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzLTcuaHRtbApAQCAtMjYsOCArMjYsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJh
Z21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAg
ewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBh
c3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21l
bnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVu
dFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4
U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
ZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmds
ZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtOC5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTguaHRtbAppbmRleCAwMTJhNGZkMGMyNmRmZmFlMzY3NDc1YzM4NTc1ZmJkNWIxYjk3
OTFiLi41ZTc2ZDkwYWRjN2U3NTA4MTkwMDUzMjU1Mjk2NDUyMDRlNWQyZjQ2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtOC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy04Lmh0bWwKQEAg
LTIxLDggKzIxLDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3Np
dGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAg
ICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNl
fSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0g
e21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRl
ciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy05Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtOS5odG1s
CmluZGV4IGRhNmMwOTUyOTQxZDkwMGY3NWM5NjRhMDkzZWIwOTdjMGRmMDQwZDEuLmFhNmE3ODU3
NDZmMjI1MzU3ZTgyN2M5ZTA4NGY2MDYzOGM2YWY4MTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy05Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTkuaHRtbApAQCAtMTksOCArMTksOCBA
QCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9z
aXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNl
KSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29u
c3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRl
eFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNo
YWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25z
dCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
InZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFn
bWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29u
c3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMuaHRtbAppbmRleCBkNDIwYTgyMmVj
ZTgzZmYwNzQ4N2E4ZmQ0OGYyYmM5NzU4YmVhYmFmLi5iZjBkZGYxZmE2OTdhZGUxOWU3YjFjODI3
YWFkODQ2MWQyY2Q4OTk1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMuaHRtbApAQCAtMjAsOCArMjAsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJh
Z21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAg
ewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBh
c3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21l
bnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVu
dFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4
U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
ZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmds
ZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2ltcGxlLWFy
cmF5cy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NpbXBsZS1hcnJheXMuaHRtbApp
bmRleCA4MTExNDllZDIyNWYwNjBmODRhODk1MGE1NjkwY2RkMzA1MWUxZTllLi41YjMzZGIyOTcz
ZDAzM2VmZWM5MGY4MGQwNDYwZGMzNzBkYzgyN2ViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2ltcGxlLWFycmF5cy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9zaW1wbGUtYXJyYXlzLmh0bWwKQEAgLTU5LDcgKzU5LDcgQEAgY29tcHV0ZSB2b2lkIGNv
bXB1dGVTaGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRo
cmVhZElEIDoKIH0KIGA7CiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21w
dXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hh
ZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdz
OiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc3RvcmUtdG8tcHJvcGVydHkt
dXBkYXRlcy1wcm9wZXJseS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3N0b3JlLXRv
LXByb3BlcnR5LXVwZGF0ZXMtcHJvcGVybHkuaHRtbAppbmRleCAwYzc5YTY5MTNjMzhkM2M0MmQ3
NGMwYTMxOTQ4ZjBjYjFlODZiMGM2Li5iZWU5NDc1ZGVhY2EwN2E4OTdmYjczN2I4OTc1NmViNjg0
ZDMwYmVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc3RvcmUtdG8tcHJv
cGVydHktdXBkYXRlcy1wcm9wZXJseS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zdG9yZS10by1wcm9wZXJ0eS11cGRhdGVzLXByb3Blcmx5Lmh0bWwKQEAgLTQ5LDcgKzQ5LDcg
QEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRl
KDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVy
dGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFk
ZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9n
eSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvdGV4dHVyZXMtZ2V0ZGltZW5zaW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3RleHR1cmVzLWdldGRpbWVuc2lvbnMuaHRtbAppbmRleCBmZTBmNWNkNjljNDA3YzgzNGUyMWQz
ZDRlMDg1YTZjMTYyN2UyZmRhLi45NWFjYTM0ODAwMmVkNjNjNGFlMTUyMzkwMTcwYzY1MjcyMWVh
ODY3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdGV4dHVyZXMtZ2V0ZGlt
ZW5zaW9ucy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1nZXRk
aW1lbnNpb25zLmh0bWwKQEAgLTIwLDcgKzIwLDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFk
ZXIoVGV4dHVyZTJEPGZsb2F0ND4gdGhlVGV4dHVyZSA6IHJlZ2lzdGVyKHQwKSwgZGV2aWNlIHUK
IGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNX
SExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAog
ICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGlu
ZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInNhbXBsZWQtdGV4dHVyZSJ9LCB7YmluZGluZzog
MSwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1sb2FkLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvdGV4dHVyZXMtbG9hZC5odG1sCmluZGV4IGUyOTU3YjllNWIzZTU0YjVj
OWRlYzQwNTE5MmM1MWZkNzQyNDEyNjcuLmVhNGQ2ODE5MDMzMTI1NzMwYThkNTkyOGQ3YzA4MmNk
NmE5Mjg2NzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1s
b2FkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLWxvYWQuaHRt
bApAQCAtMTksNyArMTksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoVGV4dHVy
ZTJEPGZsb2F0ND4gdGhlVGV4dHVyZSA6IHJlZ2lzdGVyKHQwKSkgOiBTVgogY29uc3QgY2FudmFz
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBz
dGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwg
ZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAg
IGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1zYW1wbGUuaHRtbCBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1zYW1wbGUuaHRtbAppbmRleCA4N2I0MDM1NmI0Mjhl
MmZlZTEwNWUyNjU5NjVhZTVhOTViYzVjNmMwLi44NjAzYzg0MWU4YTBjYjg5NWIxNjg0YTAzNzFh
MTg4M2U1YWFlZDQ5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdGV4dHVy
ZXMtc2FtcGxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLXNh
bXBsZS5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRl
cihUZXh0dXJlMkQ8ZmxvYXQ0PiB0aGVUZXh0dXJlIDogcmVnaXN0ZXIodDApLCBzYW1wCiBjb25z
dCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVy
TW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRT
dGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVy
In07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3R3by1kaW1lbnNpb25hbC1hcnJheS5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3R3by1kaW1lbnNpb25hbC1hcnJheS5odG1s
CmluZGV4IDM1NTI4NmQwZDIzNzc4NDkzNzNmYTE2MWIyOTAyZTI0YjIzNjZhMzUuLjMxOWY4YTRm
MDQ4OGQyMDcwNGI4MWQ0MjIxZmYyMjU0M2ZiNDUzMDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC90d28tZGltZW5zaW9uYWwtYXJyYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvdHdvLWRpbWVuc2lvbmFsLWFycmF5Lmh0bWwKQEAgLTYxLDcgKzYxLDcg
QEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lz
dGVyKHUwKSwgZmxvYXQzIHRocmVhZElEIDoKIH0KIGA7CiBhc3luYyBmdW5jdGlvbiBzdGFydChk
ZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9
KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5
UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNj
cmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJz
dG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
dXNlLXVuZGVmaW5lZC12YXJpYWJsZS0yLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
dXNlLXVuZGVmaW5lZC12YXJpYWJsZS0yLmh0bWwKaW5kZXggZTA2ZjcyNDI0ZDY5NTJjMmYxNmI4
NmJhYTcwNzQ1MjhiZWI0NmJlMy4uY2QzMDRhZTU0YTRkYWI3Mzk5M2YzZmIwOWIwN2EzYjExMGRh
ZjNhYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3VzZS11bmRlZmluZWQt
dmFyaWFibGUtMi5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC91c2UtdW5kZWZp
bmVkLXZhcmlhYmxlLTIuaHRtbApAQCAtMTcsNyArMTcsNyBAQCBhc3luYyBmdW5jdGlvbiBzdGFy
dCgpIHsKICAgICBjb25zdCBhZGFwdGVyID0gYXdhaXQgbmF2aWdhdG9yLmdwdS5yZXF1ZXN0QWRh
cHRlcigpOwogICAgIGNvbnN0IGRldmljZSA9IGF3YWl0IGFkYXB0ZXIucmVxdWVzdERldmljZSgp
OwogCi0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAg
ICAgY29uc3QgY29tcHV0ZVN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50
OiAiY29tcHV0ZVNoYWRlciJ9OwogCiAgICAgY29uc3QgYmluZEdyb3VwTGF5b3V0RGVzY3JpcHRv
ciA9IHtiaW5kaW5nczogW3tiaW5kaW5nOiAwLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAic3RvcmFn
ZS1idWZmZXIifV19OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3VzZS11
bmRlZmluZWQtdmFyaWFibGUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC91c2UtdW5k
ZWZpbmVkLXZhcmlhYmxlLmh0bWwKaW5kZXggZGEwZTJmZDFjYTE5NTExMmVkZTVkNmM5YTUyYTUy
MGQxN2Y2MTdjOS4uOWM1MDA3MzdiMmZjZTYwNjFjOGI1OGQ4OTcyODg2MmMxNTA2OTE0YiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3VzZS11bmRlZmluZWQtdmFyaWFibGUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJs
ZS5odG1sCkBAIC0yMCw3ICsyMCw3IEBAIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KCkgewogICAgIGNv
bnN0IGFkYXB0ZXIgPSBhd2FpdCBuYXZpZ2F0b3IuZ3B1LnJlcXVlc3RBZGFwdGVyKCk7CiAgICAg
Y29uc3QgZGV2aWNlID0gYXdhaXQgYWRhcHRlci5yZXF1ZXN0RGV2aWNlKCk7CiAKLSAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21w
dXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hh
ZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdz
OiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvd2hpbGUtbG9vcC1icmVhay5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3doaWxlLWxvb3AtYnJlYWsuaHRtbAppbmRl
eCA1YTU0Nzk3NGI0NmNiZGRlMzBlZmFkYjFhMDExZDlkMTc3NjgxMjU5Li5iNmE5MzBmODg2NTRh
OTgyMTVmMmUzZTM0ZmVhOWNjYThkNTNmMDkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvd2hpbGUtbG9vcC1icmVhay5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC93aGlsZS1sb29wLWJyZWFrLmh0bWwKQEAgLTM5LDcgKzM5LDcgQEAgZnJhZ21lbnQgZmxv
YXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1Rhcmdl
dCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsK
IAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25z
dCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJh
Z21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1z
dHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvd2hpbGUtbG9vcC1j
b250aW51ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3doaWxlLWxvb3AtY29udGlu
dWUuaHRtbAppbmRleCAzMDhlZmUxYjBmZmYwM2JhYTU4NWM3YjE5NjAxN2Q0NTUwMmNhNmE4Li40
MjIzYmYxYzNhMjEzYmIyZjkzMTRkNDI1YzM3YmRmMDYyYzQ1MWU0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvd2hpbGUtbG9vcC1jb250aW51ZS5odG1sCisrKyBiL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC93aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwKQEAgLTM5LDcgKzM5
LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmli
dXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhT
aGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3Bv
bG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvd2hsc2wuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGxzbC5odG1sCmlu
ZGV4IGJkODcwNDgxMjZlZjhhNzhlNjQ4MzE3OGY1NTVmNzBkMjYxYWNiMzYuLjljMjRjMWYyNzdk
OWRjNjY0MTA5NzI0MjgyZTgxODk1YzlhNzY0MWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC93aGxzbC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGxz
bC5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihm
bG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52
YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMtMi5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMtMi5odG1s
CmluZGV4IDE4YzhjNTJhZmNiYzhmNTczZGM3OGQwZWEyYmZhMDVlZGQzOWE4MTAuLmZiZjQ1ZjAy
OWJhZGRmYTcwYjhjYTkyODAxZmQ0MTNlZDkzNjJiM2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLTIuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvemVyby1pbml0aWFsaXplLXZhbHVlcy0yLmh0bWwKQEAgLTU1LDcg
KzU1LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0
cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0g
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
c2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0
ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVU
b3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvemVyby1pbml0aWFsaXplLXZhbHVlcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMuaHRtbAppbmRleCAyNDE2NzFhYjlkYTE4NmRh
MzZiNDkzNjM2NjAzZmM0YzRmMzg5MjIyLi43ZmY3MGQ2YWQ0YWRmODIyZmVjNDk1YjM5ZGI1M2Y4
Y2RlNjcyZDZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvemVyby1pbml0
aWFsaXplLXZhbHVlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC96ZXJvLWlu
aXRpYWxpemUtdmFsdWVzLmh0bWwKQEAgLTM4LDcgKzM4LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZy
YWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsK
IGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5
bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVl
fSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBz
aGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFn
bWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRT
aGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377308</attachid>
            <date>2019-08-26 19:09:30 -0700</date>
            <delta_ts>2019-08-26 19:29:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201162-20190826190929.patch</filename>
            <type>text/plain</type>
            <size>156138</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmIxNjkzYjBkNTJjM2Zj
ZjUyNTFmN2QyMzI5MDY2OGMxZTRjMDk1Mi4uNzI1YWY1NjVmZTE4MTgxZGRmMjMxYzhiMzhjNmQ3
ZTBiZmE1ZTE4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA4LTI2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBS
ZXdyaXRlIGFsbCB0ZXN0cyB0byB1c2UgV0hMU0wgYW5kIGRlbGV0ZSB0aGUgaXNXSExTTCBmbGFn
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDExNjIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZSBjYW4g
ZGVsZXRlIHNvbWUgY29kZSBiZWNhdXNlIHdlIG5vIGxvbmdlciBuZWVkIHRvIHN1cHBvcnQgTVNM
IHNoYWRlcnMuCisKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6V2ViR1BVRGV2aWNlOjpjcmVhdGVTaGFkZXJNb2R1bGUgY29uc3Qp
OgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3Iu
aDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XZWJHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9y
LmlkbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVU2hhZGVyTW9kdWxlLmg6
CisgICAgICAgIChXZWJDb3JlOjpHUFVTaGFkZXJNb2R1bGU6OndobHNsTW9kdWxlIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkdQVVNoYWRlck1vZHVsZTo6cGxhdGZvcm1TaGFkZXJNb2R1bGUg
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVTaGFk
ZXJNb2R1bGVEZXNjcmlwdG9yLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2Nv
Y29hL0dQVUNvbXB1dGVQaXBlbGluZU1ldGFsLm1tOgorICAgICAgICAoV2ViQ29yZTo6dHJ5U2V0
RnVuY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydENvbXB1dGVQaXBlbGluZURlc2Ny
aXB0b3IpOgorICAgICAgICAoV2ViQ29yZTo6dHJ5U2V0RnVuY3Rpb25zKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVUmVuZGVyUGlwZWxpbmVNZXRh
bC5tbToKKyAgICAgICAgKFdlYkNvcmU6OnRyeVNldFZlcnRleElucHV0KToKKyAgICAgICAgKFdl
YkNvcmU6OnRyeVNldENvbG9yU3RhdGVzKToKKyAgICAgICAgKFdlYkNvcmU6OnRyeVNldEZ1bmN0
aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9y
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVU2hhZGVyTW9kdWxl
TWV0YWwubW06CisgICAgICAgIChXZWJDb3JlOjpHUFVTaGFkZXJNb2R1bGU6OnRyeUNyZWF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpHUFVTaGFkZXJNb2R1bGU6OkdQVVNoYWRlck1vZHVsZSk6CisK
IDIwMTktMDgtMjQgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBb
TEZDXVtURkNdIEFkZCBzZWN0aW9uIHJlbmRlcmVycyB0byB0aGUgbGF5b3V0IHRyZWUgKFRIRUFE
L1RCT0RZL1RGT09UKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUv
V2ViR1BVRGV2aWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVURl
dmljZS5jcHAKaW5kZXggODVmZGNhM2IyYjk0YmNkZjkxMTEwNmFjMDZlNmRkMWYwM2M1YjU5OS4u
NTVmN2ZmYjgyNjRiMDQzY2IxMjZjOGViMzFiNTRhNTQ4MmQ3OTU1YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuY3BwCkBAIC0xNTMsNyArMTUzLDcg
QEAgUmVmPFdlYkdQVUJpbmRHcm91cD4gV2ViR1BVRGV2aWNlOjpjcmVhdGVCaW5kR3JvdXAoY29u
c3QgV2ViR1BVQmluZEdyb3VwRGVzY3JpcHQKIFJlZjxXZWJHUFVTaGFkZXJNb2R1bGU+IFdlYkdQ
VURldmljZTo6Y3JlYXRlU2hhZGVyTW9kdWxlKGNvbnN0IFdlYkdQVVNoYWRlck1vZHVsZURlc2Ny
aXB0b3ImIGRlc2NyaXB0b3IpIGNvbnN0CiB7CiAgICAgLy8gRklYTUU6IFdoYXQgY2FuIGJlIHZh
bGlkYXRlZCBoZXJlPwotICAgIGF1dG8gbW9kdWxlID0gbV9kZXZpY2UtPnRyeUNyZWF0ZVNoYWRl
ck1vZHVsZShHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yIHsgZGVzY3JpcHRvci5jb2RlLCBkZXNj
cmlwdG9yLmlzV0hMU0wgfSk7CisgICAgYXV0byBtb2R1bGUgPSBtX2RldmljZS0+dHJ5Q3JlYXRl
U2hhZGVyTW9kdWxlKEdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IgeyBkZXNjcmlwdG9yLmNvZGUg
fSk7CiAgICAgcmV0dXJuIFdlYkdQVVNoYWRlck1vZHVsZTo6Y3JlYXRlKFdURk1vdmUobW9kdWxl
KSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQ
VVNoYWRlck1vZHVsZURlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1
L1dlYkdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IuaAppbmRleCBiOGQ5ODE3Y2QwYTk0ZmJiYWZj
ZDUzODhmNDU5NzBhZjY1MTU1NDEyLi5hZjMyYTk4OWVkNWM1MDZkZjNhN2RjYjA5MzU1Y2U1MjY4
NGMzMDhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVT
aGFkZXJNb2R1bGVEZXNjcmlwdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJn
cHUvV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5oCkBAIC0zMyw3ICszMyw2IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogc3RydWN0IFdlYkdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3Igewog
ICAgIFN0cmluZyBjb2RlOwotICAgIGJvb2wgaXNXSExTTDsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQ
VVNoYWRlck1vZHVsZURlc2NyaXB0b3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJn
cHUvV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5pZGwKaW5kZXggOWEyZjU1YzhmMmUzNTdj
ZjdkZDQxYmFkMDNkM2E1NmNmZDIyYzk5OC4uYjhkOWQ5M2M3MmFiYzhmMWI3YzU3ZDBjZjNkYWI4
ZTAxNzMyOWFhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2Vi
R1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5pZGwKQEAgLTI5LDUgKzI5LDQg
QEAKICAgICBFbmFibGVkQXRSdW50aW1lPVdlYkdQVQogXSBkaWN0aW9uYXJ5IFdlYkdQVVNoYWRl
ck1vZHVsZURlc2NyaXB0b3IgewogICAgIHJlcXVpcmVkIC8qQXJyYXlCdWZmZXIqLyBET01TdHJp
bmcgY29kZTsgLy8gRklYTUU6IERPTVN0cmluZyBmb3IgTVRMIHByb3RvdHlwaW5nIG9ubHkuCi0g
ICAgYm9vbGVhbiBpc1dITFNMID0gZmFsc2U7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1vZHVsZS5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1vZHVsZS5oCmluZGV4IDg4MzA4ZDY5
ZTIzMzY2N2M4ZGFmNmUwMzRjZmU5MDAyNzcwMGNjYWYuLjNjN2UzMTBkMGI3MTk5NDdkZTM3ZWVh
NzA4NzIyMjMyZDlmMDJmOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dwdS9HUFVTaGFkZXJNb2R1bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ncHUvR1BVU2hhZGVyTW9kdWxlLmgKQEAgLTQ2LDE2ICs0NiwxMiBAQCB1c2lu
ZyBQbGF0Zm9ybVNoYWRlck1vZHVsZVNtYXJ0UHRyID0gUmV0YWluUHRyPE1UTExpYnJhcnk+Owog
Y2xhc3MgR1BVU2hhZGVyTW9kdWxlIDogcHVibGljIFJlZkNvdW50ZWQ8R1BVU2hhZGVyTW9kdWxl
PiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZlB0cjxHUFVTaGFkZXJNb2R1bGU+IHRyeUNyZWF0
ZShjb25zdCBHUFVEZXZpY2UmLCBjb25zdCBHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yJik7Ci0K
LSAgICBQbGF0Zm9ybVNoYWRlck1vZHVsZSogcGxhdGZvcm1TaGFkZXJNb2R1bGUoKSBjb25zdCB7
IHJldHVybiBtX3dobHNsTW9kdWxlID8gbnVsbHB0ciA6IG1fcGxhdGZvcm1TaGFkZXJNb2R1bGUu
Z2V0KCk7IH0KLSAgICBjb25zdCBXSExTTDo6U2hhZGVyTW9kdWxlKiB3aGxzbE1vZHVsZSgpIGNv
bnN0IHsgcmV0dXJuIG1fd2hsc2xNb2R1bGUuZ2V0KCk7IH0KKyAgICBjb25zdCBXSExTTDo6U2hh
ZGVyTW9kdWxlJiB3aGxzbE1vZHVsZSgpIGNvbnN0IHsgcmV0dXJuIG1fd2hsc2xNb2R1bGUuZ2V0
KCk7IH0KIAogcHJpdmF0ZToKLSAgICBHUFVTaGFkZXJNb2R1bGUoUGxhdGZvcm1TaGFkZXJNb2R1
bGVTbWFydFB0ciYmKTsKICAgICBHUFVTaGFkZXJNb2R1bGUoVW5pcXVlUmVmPFdITFNMOjpTaGFk
ZXJNb2R1bGU+JiYgd2hsc2xNb2R1bGUpOwogCi0gICAgUGxhdGZvcm1TaGFkZXJNb2R1bGVTbWFy
dFB0ciBtX3BsYXRmb3JtU2hhZGVyTW9kdWxlOwotICAgIHN0ZDo6dW5pcXVlX3B0cjxXSExTTDo6
U2hhZGVyTW9kdWxlPiBtX3dobHNsTW9kdWxlOworICAgIFVuaXF1ZVJlZjxXSExTTDo6U2hhZGVy
TW9kdWxlPiBtX3dobHNsTW9kdWxlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1v
ZHVsZURlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9H
UFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmgKaW5kZXggNWMzZWNmNmE3YzAxMTFmMjIyM2NiOWJl
MmY0NDQ4Mzg2OTI1NWZmZi4uNmNmZTBhZDVhODdiMzJjNDhhZTM0YmQ3NmQyZjFjNTk4MWJlN2Q1
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNo
YWRlck1vZHVsZURlc2NyaXB0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ncHUvR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5oCkBAIC0zMyw3ICszMyw2IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogc3RydWN0IEdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3Igewog
ICAgIFN0cmluZyBjb2RlOwotICAgIGJvb2wgaXNXSExTTDsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dw
dS9jb2NvYS9HUFVDb21wdXRlUGlwZWxpbmVNZXRhbC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVDb21wdXRlUGlwZWxpbmVNZXRhbC5tbQppbmRleCBl
MDFiNzVhZjk1MTc1YzA0OTY1NTgwODkzZjYxNjAwZDU2ZTUyZDU3Li4yMTIyMzRmY2U1MzQ4Y2Nh
YjkyMTE4YjY3MjcxZjZiNTUzYmYwZmFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVQ29tcHV0ZVBpcGVsaW5lTWV0YWwubW0KKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVUNvbXB1dGVQaXBl
bGluZU1ldGFsLm1tCkBAIC02Miw0OSArNjIsNDIgQEAgc3RhdGljIGJvb2wgdHJ5U2V0TWV0YWxG
dW5jdGlvbnMoTVRMTGlicmFyeSAqY29tcHV0ZU1ldGFsTGlicmFyeSwgTVRMQ29tcHV0ZVBpcGUK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotc3RhdGljIE9wdGlvbmFsPFdITFNMOjpDb21wdXRlRGlt
ZW5zaW9ucz4gdHJ5U2V0RnVuY3Rpb25zKGNvbnN0IEdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlwdG9y
JiBjb21wdXRlU3RhZ2UsIGNvbnN0IEdQVURldmljZSYgZGV2aWNlLCBNVExDb21wdXRlUGlwZWxp
bmVEZXNjcmlwdG9yKiBtdGxEZXNjcmlwdG9yLCBPcHRpb25hbDxXSExTTDo6Q29tcHV0ZVBpcGVs
aW5lRGVzY3JpcHRvcj4mIHdobHNsRGVzY3JpcHRvciwgR1BVRXJyb3JTY29wZXMmIGVycm9yU2Nv
cGVzKQorc3RhdGljIE9wdGlvbmFsPFdITFNMOjpDb21wdXRlRGltZW5zaW9ucz4gdHJ5U2V0RnVu
Y3Rpb24oY29uc3QgR1BVUGlwZWxpbmVTdGFnZURlc2NyaXB0b3ImIGNvbXB1dGVTdGFnZSwgY29u
c3QgR1BVRGV2aWNlJiBkZXZpY2UsIE1UTENvbXB1dGVQaXBlbGluZURlc2NyaXB0b3IqIG10bERl
c2NyaXB0b3IsIFdITFNMOjpDb21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yJiB3aGxzbERlc2NyaXB0
b3IsIEdQVUVycm9yU2NvcGVzJiBlcnJvclNjb3BlcykKIHsKICAgICBSZXRhaW5QdHI8TVRMTGli
cmFyeT4gY29tcHV0ZUxpYnJhcnk7CiAgICAgU3RyaW5nIGNvbXB1dGVFbnRyeVBvaW50OwogCiAg
ICAgV0hMU0w6OkNvbXB1dGVEaW1lbnNpb25zIGNvbXB1dGVEaW1lbnNpb25zIHsgMSwgMSwgMSB9
OwogCi0gICAgaWYgKHdobHNsRGVzY3JpcHRvcikgewotICAgICAgICBBU1NFUlQoY29tcHV0ZVN0
YWdlLm1vZHVsZS0+d2hsc2xNb2R1bGUoKSk7CisgICAgd2hsc2xEZXNjcmlwdG9yLmVudHJ5UG9p
bnROYW1lID0gY29tcHV0ZVN0YWdlLmVudHJ5UG9pbnQ7CiAKLSAgICAgICAgd2hsc2xEZXNjcmlw
dG9yLT5lbnRyeVBvaW50TmFtZSA9IGNvbXB1dGVTdGFnZS5lbnRyeVBvaW50OwotCi0gICAgICAg
IGF1dG8gd2hsc2xDb21waWxlUmVzdWx0ID0gV0hMU0w6OnByZXBhcmUoKmNvbXB1dGVTdGFnZS5t
b2R1bGUtPndobHNsTW9kdWxlKCksICp3aGxzbERlc2NyaXB0b3IpOwotICAgICAgICBpZiAoIXdo
bHNsQ29tcGlsZVJlc3VsdCkgewotICAgICAgICAgICAgZXJyb3JTY29wZXMuZ2VuZXJhdGVQcmVm
aXhlZEVycm9yKG1ha2VTdHJpbmcoIldITFNMIGNvbXBpbGUgZXJyb3I6ICIsIHdobHNsQ29tcGls
ZVJlc3VsdC5lcnJvcigpKSk7Ci0gICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwotICAg
ICAgICB9CisgICAgYXV0byB3aGxzbENvbXBpbGVSZXN1bHQgPSBXSExTTDo6cHJlcGFyZShjb21w
dXRlU3RhZ2UubW9kdWxlLT53aGxzbE1vZHVsZSgpLCB3aGxzbERlc2NyaXB0b3IpOworICAgIGlm
ICghd2hsc2xDb21waWxlUmVzdWx0KSB7CisgICAgICAgIGVycm9yU2NvcGVzLmdlbmVyYXRlUHJl
Zml4ZWRFcnJvcihtYWtlU3RyaW5nKCJXSExTTCBjb21waWxlIGVycm9yOiAiLCB3aGxzbENvbXBp
bGVSZXN1bHQuZXJyb3IoKSkpOworICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAgIH0K
IAotICAgICAgICBjb21wdXRlRGltZW5zaW9ucyA9IHdobHNsQ29tcGlsZVJlc3VsdC0+Y29tcHV0
ZURpbWVuc2lvbnM7CisgICAgY29tcHV0ZURpbWVuc2lvbnMgPSB3aGxzbENvbXBpbGVSZXN1bHQt
PmNvbXB1dGVEaW1lbnNpb25zOwogCi0gICAgICAgIE5TRXJyb3IgKmVycm9yID0gbmlsOworICAg
IE5TRXJyb3IgKmVycm9yID0gbmlsOwogCi0gICAgICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBU
SU9OUzsKLSAgICAgICAgTW9ub3RvbmljVGltZSBzdGFydFRpbWU7Ci0gICAgICAgIGlmIChXSExT
TDo6ZHVtcE1ldGFsQ29tcGlsZVRpbWVzKQotICAgICAgICAgICAgc3RhcnRUaW1lID0gTW9ub3Rv
bmljVGltZTo6bm93KCk7Ci0gICAgICAgIC8vIEZJWE1FOiBodHRwczovL3dlYmtpdC5vcmcvYi8y
MDA0NzQgQWRkIGRpcmVjdCBTdHJpbmdCdWlsZGVyIC0+IE5TU3RyaW5nIGNvbnZlcnNpb24gdG8g
YXZvaWQgZXh0cmEgY29weSBpbnRvIGEgV1RGOjpTdHJpbmcKLSAgICAgICAgY29tcHV0ZUxpYnJh
cnkgPSBhZG9wdE5TKFtkZXZpY2UucGxhdGZvcm1EZXZpY2UoKSBuZXdMaWJyYXJ5V2l0aFNvdXJj
ZTp3aGxzbENvbXBpbGVSZXN1bHQtPm1ldGFsU291cmNlLnRvU3RyaW5nKCkgb3B0aW9uczpuaWwg
ZXJyb3I6JmVycm9yXSk7Ci0gICAgICAgIGlmIChXSExTTDo6ZHVtcE1ldGFsQ29tcGlsZVRpbWVz
KQotICAgICAgICAgICAgZGF0YUxvZ0xuKCJNZXRhbCBjb21waWxlIHRpbWVzOiAiLCAoTW9ub3Rv
bmljVGltZTo6bm93KCkgLSBzdGFydFRpbWUpLm1pbGxpc2Vjb25kcygpLCAiIG1zIik7Ci0gICAg
ICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENF
UFRJT05TOworICAgIE1vbm90b25pY1RpbWUgc3RhcnRUaW1lOworICAgIGlmIChXSExTTDo6ZHVt
cE1ldGFsQ29tcGlsZVRpbWVzKQorICAgICAgICBzdGFydFRpbWUgPSBNb25vdG9uaWNUaW1lOjpu
b3coKTsKKyAgICAvLyBGSVhNRTogaHR0cHM6Ly93ZWJraXQub3JnL2IvMjAwNDc0IEFkZCBkaXJl
Y3QgU3RyaW5nQnVpbGRlciAtPiBOU1N0cmluZyBjb252ZXJzaW9uIHRvIGF2b2lkIGV4dHJhIGNv
cHkgaW50byBhIFdURjo6U3RyaW5nCisgICAgY29tcHV0ZUxpYnJhcnkgPSBhZG9wdE5TKFtkZXZp
Y2UucGxhdGZvcm1EZXZpY2UoKSBuZXdMaWJyYXJ5V2l0aFNvdXJjZTp3aGxzbENvbXBpbGVSZXN1
bHQtPm1ldGFsU291cmNlLnRvU3RyaW5nKCkgb3B0aW9uczpuaWwgZXJyb3I6JmVycm9yXSk7Cisg
ICAgaWYgKFdITFNMOjpkdW1wTWV0YWxDb21waWxlVGltZXMpCisgICAgICAgIGRhdGFMb2dMbigi
TWV0YWwgY29tcGlsZSB0aW1lczogIiwgKE1vbm90b25pY1RpbWU6Om5vdygpIC0gc3RhcnRUaW1l
KS5taWxsaXNlY29uZHMoKSwgIiBtcyIpOworICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7
CiAjaWZuZGVmIE5ERUJVRwotICAgICAgICBpZiAoIWNvbXB1dGVMaWJyYXJ5KQotICAgICAgICAg
ICAgTlNMb2coQCIlQCIsIGVycm9yKTsKKyAgICBpZiAoIWNvbXB1dGVMaWJyYXJ5KQorICAgICAg
ICBOU0xvZyhAIiVAIiwgZXJyb3IpOwogI2VuZGlmCi0gICAgICAgIEFTU0VSVChjb21wdXRlTGli
cmFyeSk7Ci0gICAgICAgIC8vIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk1NzcxIE9uY2Ugd2UgemVyby1maWxsIHZhcmlhYmxlcywgdGhlcmUgc2hvdWxk
IGJlIG5vIHdhcm5pbmdzLCBzbyB3ZSBzaG91bGQgYmUgYWJsZSB0byBBU1NFUlQoIWVycm9yKSBo
ZXJlLgorICAgIEFTU0VSVChjb21wdXRlTGlicmFyeSk7CisgICAgLy8gRklYTUU6IGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU3NzEgT25jZSB3ZSB6ZXJvLWZpbGwg
dmFyaWFibGVzLCB0aGVyZSBzaG91bGQgYmUgbm8gd2FybmluZ3MsIHNvIHdlIHNob3VsZCBiZSBh
YmxlIHRvIEFTU0VSVCghZXJyb3IpIGhlcmUuCiAKLSAgICAgICAgY29tcHV0ZUVudHJ5UG9pbnQg
PSB3aGxzbENvbXBpbGVSZXN1bHQtPm1hbmdsZWRFbnRyeVBvaW50TmFtZS50b1N0cmluZygpOwot
ICAgIH0gZWxzZSB7Ci0gICAgICAgIGNvbXB1dGVMaWJyYXJ5ID0gY29tcHV0ZVN0YWdlLm1vZHVs
ZS0+cGxhdGZvcm1TaGFkZXJNb2R1bGUoKTsKLSAgICAgICAgY29tcHV0ZUVudHJ5UG9pbnQgPSBj
b21wdXRlU3RhZ2UuZW50cnlQb2ludDsKLSAgICB9CisgICAgY29tcHV0ZUVudHJ5UG9pbnQgPSB3
aGxzbENvbXBpbGVSZXN1bHQtPm1hbmdsZWRFbnRyeVBvaW50TmFtZS50b1N0cmluZygpOwogCiAg
ICAgaWYgKHRyeVNldE1ldGFsRnVuY3Rpb25zKGNvbXB1dGVMaWJyYXJ5LmdldCgpLCBtdGxEZXNj
cmlwdG9yLCBjb21wdXRlRW50cnlQb2ludCwgZXJyb3JTY29wZXMpKQogICAgICAgICByZXR1cm4g
Y29tcHV0ZURpbWVuc2lvbnM7CkBAIC0xMzIsMjIgKzEyNSwxOCBAQCBzdGF0aWMgT3B0aW9uYWw8
Q29udmVydFJlc3VsdD4gY29udmVydENvbXB1dGVQaXBlbGluZURlc2NyaXB0b3IoY29uc3QgR1BV
Q29tcHV0ZQogCiAgICAgY29uc3QgYXV0byYgY29tcHV0ZVN0YWdlID0gZGVzY3JpcHRvci5jb21w
dXRlU3RhZ2U7CiAKLSAgICBib29sIGlzV2hsc2wgPSBjb21wdXRlU3RhZ2UubW9kdWxlLT53aGxz
bE1vZHVsZSgpOwotCi0gICAgT3B0aW9uYWw8V0hMU0w6OkNvbXB1dGVQaXBlbGluZURlc2NyaXB0
b3I+IHdobHNsRGVzY3JpcHRvcjsKLSAgICBpZiAoaXNXaGxzbCkKLSAgICAgICAgd2hsc2xEZXNj
cmlwdG9yID0gV0hMU0w6OkNvbXB1dGVQaXBlbGluZURlc2NyaXB0b3IoKTsKKyAgICBXSExTTDo6
Q29tcHV0ZVBpcGVsaW5lRGVzY3JpcHRvciB3aGxzbERlc2NyaXB0b3IgPSBXSExTTDo6Q29tcHV0
ZVBpcGVsaW5lRGVzY3JpcHRvcigpOwogCi0gICAgaWYgKGRlc2NyaXB0b3IubGF5b3V0ICYmIHdo
bHNsRGVzY3JpcHRvcikgeworICAgIGlmIChkZXNjcmlwdG9yLmxheW91dCkgewogICAgICAgICBp
ZiAoYXV0byBsYXlvdXQgPSBjb252ZXJ0TGF5b3V0KCpkZXNjcmlwdG9yLmxheW91dCkpCi0gICAg
ICAgICAgICB3aGxzbERlc2NyaXB0b3ItPmxheW91dCA9IFdURk1vdmUoKmxheW91dCk7CisgICAg
ICAgICAgICB3aGxzbERlc2NyaXB0b3IubGF5b3V0ID0gV1RGTW92ZSgqbGF5b3V0KTsKICAgICAg
ICAgZWxzZSB7CiAgICAgICAgICAgICBlcnJvclNjb3Blcy5nZW5lcmF0ZVByZWZpeGVkRXJyb3Io
IkVycm9yIGNvbnZlcnRpbmcgR1BVUGlwZWxpbmVMYXlvdXQhIik7CiAgICAgICAgICAgICByZXR1
cm4gV1RGOjpudWxsb3B0OwogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKGF1dG8gY29tcHV0
ZURpbWVuc2lvbnMgPSB0cnlTZXRGdW5jdGlvbnMoY29tcHV0ZVN0YWdlLCBkZXZpY2UsIG10bERl
c2NyaXB0b3IuZ2V0KCksIHdobHNsRGVzY3JpcHRvciwgZXJyb3JTY29wZXMpKQorICAgIGlmIChh
dXRvIGNvbXB1dGVEaW1lbnNpb25zID0gdHJ5U2V0RnVuY3Rpb24oY29tcHV0ZVN0YWdlLCBkZXZp
Y2UsIG10bERlc2NyaXB0b3IuZ2V0KCksIHdobHNsRGVzY3JpcHRvciwgZXJyb3JTY29wZXMpKQog
ICAgICAgICByZXR1cm4ge3sgbXRsRGVzY3JpcHRvciwgKmNvbXB1dGVEaW1lbnNpb25zIH19Owog
CiAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVSZW5kZXJQaXBlbGluZU1ldGFsLm1tIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBpcGVsaW5l
TWV0YWwubW0KaW5kZXggZjRhMDM3MWZjOTU2OWU4NDg0YTNjNGJhNDc3ZTI4ODQ4MjUyMzU3Ny4u
OGYwNDcwZDFkN2Y0ZDdkMDQ0ZDk5Njc1ODUxYzk1Mjc2ODM0ZTY4NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVJlbmRlclBpcGVsaW5l
TWV0YWwubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29h
L0dQVVJlbmRlclBpcGVsaW5lTWV0YWwubW0KQEAgLTE0Nyw3ICsxNDcsNyBAQCBzdGF0aWMgTVRM
VmVydGV4U3RlcEZ1bmN0aW9uIG10bFN0ZXBGdW5jdGlvbkZvckdQVUlucHV0U3RlcE1vZGUoR1BV
SW5wdXRTdGVwTW9kZQogLy8gRklYTUU6IE1vdmUgdGhpcyBpbnRvIEdQVUxpbWl0cyB3aGVuIHRo
YXQgaXMgaW1wbGVtZW50ZWQgcHJvcGVybHkuCiBjb25zdGV4cHIgdW5zaWduZWQgbWF4VmVydGV4
QXR0cmlidXRlcyA9IDE2OwogCi1zdGF0aWMgYm9vbCB0cnlTZXRWZXJ0ZXhJbnB1dChjb25zdCBH
UFVWZXJ0ZXhJbnB1dERlc2NyaXB0b3ImIGRlc2NyaXB0b3IsIE1UTFJlbmRlclBpcGVsaW5lRGVz
Y3JpcHRvciAqbXRsRGVzY3JpcHRvciwgT3B0aW9uYWw8V0hMU0w6OlJlbmRlclBpcGVsaW5lRGVz
Y3JpcHRvcj4mIHdobHNsRGVzY3JpcHRvciwgR1BVRXJyb3JTY29wZXMmIGVycm9yU2NvcGVzKQor
c3RhdGljIGJvb2wgdHJ5U2V0VmVydGV4SW5wdXQoY29uc3QgR1BVVmVydGV4SW5wdXREZXNjcmlw
dG9yJiBkZXNjcmlwdG9yLCBNVExSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IgKm10bERlc2NyaXB0
b3IsIFdITFNMOjpSZW5kZXJQaXBlbGluZURlc2NyaXB0b3ImIHdobHNsRGVzY3JpcHRvciwgR1BV
RXJyb3JTY29wZXMmIGVycm9yU2NvcGVzKQogewogICAgIGNvbnN0IGF1dG8mIGJ1ZmZlcnMgPSBk
ZXNjcmlwdG9yLnZlcnRleEJ1ZmZlcnM7CiAKQEAgLTIwOSw4ICsyMDksNyBAQCBzdGF0aWMgYm9v
bCB0cnlTZXRWZXJ0ZXhJbnB1dChjb25zdCBHUFVWZXJ0ZXhJbnB1dERlc2NyaXB0b3ImIGRlc2Ny
aXB0b3IsIE1UTFJlbgogICAgICAgICAgICAgW210bEF0dHJpYnV0ZURlc2Mgc2V0QnVmZmVySW5k
ZXg6Y29udmVydGVkQnVmZmVySW5kZXhdOwogICAgICAgICAgICAgRU5EX0JMT0NLX09CSkNfRVhD
RVBUSU9OUzsKIAotICAgICAgICAgICAgaWYgKHdobHNsRGVzY3JpcHRvcikKLSAgICAgICAgICAg
ICAgICB3aGxzbERlc2NyaXB0b3ItPnZlcnRleEF0dHJpYnV0ZXMuYXBwZW5kKHsgY29udmVydFZl
cnRleEZvcm1hdChhdHRyaWJ1dGUuZm9ybWF0KSwgYXR0cmlidXRlLnNoYWRlckxvY2F0aW9uLCBh
dHRyaWJ1dGVJbmRleCB9KTsKKyAgICAgICAgICAgIHdobHNsRGVzY3JpcHRvci52ZXJ0ZXhBdHRy
aWJ1dGVzLmFwcGVuZCh7IGNvbnZlcnRWZXJ0ZXhGb3JtYXQoYXR0cmlidXRlLmZvcm1hdCksIGF0
dHJpYnV0ZS5zaGFkZXJMb2NhdGlvbiwgYXR0cmlidXRlSW5kZXggfSk7CiAKICAgICAgICAgICAg
ICsrYXR0cmlidXRlSW5kZXg7CiAgICAgICAgIH0KQEAgLTI5Myw3ICsyOTIsNyBAQCBzdGF0aWMg
TVRMQmxlbmRGYWN0b3IgbXRsQmxlbmRGYWN0b3JGb3JHUFVCbGVuZEZhY3RvcihHUFVCbGVuZEZh
Y3RvciBmYWN0b3IpCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKLXN0YXRpYyBib29s
IHRyeVNldENvbG9yU3RhdGVzKGNvbnN0IFZlY3RvcjxHUFVDb2xvclN0YXRlRGVzY3JpcHRvcj4m
IGNvbG9yU3RhdGVzLCBNVExSZW5kZXJQaXBlbGluZUNvbG9yQXR0YWNobWVudERlc2NyaXB0b3JB
cnJheSogYXJyYXksIE9wdGlvbmFsPFdITFNMOjpSZW5kZXJQaXBlbGluZURlc2NyaXB0b3I+JiB3
aGxzbERlc2NyaXB0b3IsIEdQVUVycm9yU2NvcGVzJiBlcnJvclNjb3BlcykKK3N0YXRpYyBib29s
IHRyeVNldENvbG9yU3RhdGVzKGNvbnN0IFZlY3RvcjxHUFVDb2xvclN0YXRlRGVzY3JpcHRvcj4m
IGNvbG9yU3RhdGVzLCBNVExSZW5kZXJQaXBlbGluZUNvbG9yQXR0YWNobWVudERlc2NyaXB0b3JB
cnJheSogYXJyYXksIFdITFNMOjpSZW5kZXJQaXBlbGluZURlc2NyaXB0b3ImIHdobHNsRGVzY3Jp
cHRvciwgR1BVRXJyb3JTY29wZXMmIGVycm9yU2NvcGVzKQogewogICAgIC8vIEZJWE1FOiBSZXBs
YWNlIHdpdGggbWF4aW11bSBudW1iZXIgb2YgY29sb3IgYXR0YWNobWVudHMgcGVyIHJlbmRlciBw
YXNzIGZyb20gR1BVTGltaXRzLgogICAgIGlmIChjb2xvclN0YXRlcy5zaXplKCkgPiA0KSB7CkBA
IC0zMTYsMTMgKzMxNSwxMSBAQCBzdGF0aWMgYm9vbCB0cnlTZXRDb2xvclN0YXRlcyhjb25zdCBW
ZWN0b3I8R1BVQ29sb3JTdGF0ZURlc2NyaXB0b3I+JiBjb2xvclN0YXRlcwogICAgICAgICBbZGVz
Y3JpcHRvciBzZXRTb3VyY2VBbHBoYUJsZW5kRmFjdG9yOm10bEJsZW5kRmFjdG9yRm9yR1BVQmxl
bmRGYWN0b3Ioc3RhdGUuYWxwaGFCbGVuZC5zcmNGYWN0b3IpXTsKICAgICAgICAgW2Rlc2NyaXB0
b3Igc2V0U291cmNlUkdCQmxlbmRGYWN0b3I6bXRsQmxlbmRGYWN0b3JGb3JHUFVCbGVuZEZhY3Rv
cihzdGF0ZS5jb2xvckJsZW5kLnNyY0ZhY3RvcildOwogCi0gICAgICAgIGlmICh3aGxzbERlc2Ny
aXB0b3IpIHsKLSAgICAgICAgICAgIGlmIChhdXRvIGZvcm1hdCA9IGNvbnZlcnRUZXh0dXJlRm9y
bWF0KHN0YXRlLmZvcm1hdCkpCi0gICAgICAgICAgICAgICAgd2hsc2xEZXNjcmlwdG9yLT5hdHRh
Y2htZW50c1N0YXRlRGVzY3JpcHRvci5hdHRhY2htZW50RGVzY3JpcHRvcnMuYXBwZW5kKHsqZm9y
bWF0LCBpfSk7Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBlcnJvclNjb3Bl
cy5nZW5lcmF0ZVByZWZpeGVkRXJyb3IobWFrZVN0cmluZygiSW52YWxpZCBHUFVUZXh0dXJlRm9y
bWF0IGZvciBHUFVDb2xvclN0YXRlRGVzY3JpcHRvciAiLCBpLCAiISIpKTsKLSAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9CisgICAgICAgIGlmIChhdXRvIGZvcm1h
dCA9IGNvbnZlcnRUZXh0dXJlRm9ybWF0KHN0YXRlLmZvcm1hdCkpCisgICAgICAgICAgICB3aGxz
bERlc2NyaXB0b3IuYXR0YWNobWVudHNTdGF0ZURlc2NyaXB0b3IuYXR0YWNobWVudERlc2NyaXB0
b3JzLmFwcGVuZCh7KmZvcm1hdCwgaX0pOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGVy
cm9yU2NvcGVzLmdlbmVyYXRlUHJlZml4ZWRFcnJvcihtYWtlU3RyaW5nKCJJbnZhbGlkIEdQVVRl
eHR1cmVGb3JtYXQgZm9yIEdQVUNvbG9yU3RhdGVEZXNjcmlwdG9yICIsIGksICIhIikpOworICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAgICAgfQogCkBAIC0zNzYsNjAgKzM3
Myw0OCBAQCBzdGF0aWMgYm9vbCB0cnlTZXRNZXRhbEZ1bmN0aW9ucyhNVExMaWJyYXJ5ICp2ZXJ0
ZXhNZXRhbExpYnJhcnksIE1UTExpYnJhcnkgKmZyYQogICAgIHJldHVybiBmYWxzZTsKIH0KIAot
c3RhdGljIGJvb2wgdHJ5U2V0RnVuY3Rpb25zKGNvbnN0IEdQVVBpcGVsaW5lU3RhZ2VEZXNjcmlw
dG9yJiB2ZXJ0ZXhTdGFnZSwgY29uc3QgT3B0aW9uYWw8R1BVUGlwZWxpbmVTdGFnZURlc2NyaXB0
b3I+JiBmcmFnbWVudFN0YWdlLCBjb25zdCBHUFVEZXZpY2UmIGRldmljZSwgTVRMUmVuZGVyUGlw
ZWxpbmVEZXNjcmlwdG9yKiBtdGxEZXNjcmlwdG9yLCBPcHRpb25hbDxXSExTTDo6UmVuZGVyUGlw
ZWxpbmVEZXNjcmlwdG9yPiYgd2hsc2xEZXNjcmlwdG9yLCBHUFVFcnJvclNjb3BlcyYgZXJyb3JT
Y29wZXMpCitzdGF0aWMgYm9vbCB0cnlTZXRGdW5jdGlvbnMoY29uc3QgR1BVUGlwZWxpbmVTdGFn
ZURlc2NyaXB0b3ImIHZlcnRleFN0YWdlLCBjb25zdCBPcHRpb25hbDxHUFVQaXBlbGluZVN0YWdl
RGVzY3JpcHRvcj4mIGZyYWdtZW50U3RhZ2UsIGNvbnN0IEdQVURldmljZSYgZGV2aWNlLCBNVExS
ZW5kZXJQaXBlbGluZURlc2NyaXB0b3IqIG10bERlc2NyaXB0b3IsIFdITFNMOjpSZW5kZXJQaXBl
bGluZURlc2NyaXB0b3ImIHdobHNsRGVzY3JpcHRvciwgR1BVRXJyb3JTY29wZXMmIGVycm9yU2Nv
cGVzKQogewogICAgIFJldGFpblB0cjxNVExMaWJyYXJ5PiB2ZXJ0ZXhMaWJyYXJ5LCBmcmFnbWVu
dExpYnJhcnk7CiAgICAgU3RyaW5nIHZlcnRleEVudHJ5UG9pbnQsIGZyYWdtZW50RW50cnlQb2lu
dDsKIAotICAgIGlmICh3aGxzbERlc2NyaXB0b3IpIHsKLSAgICAgICAgQVNTRVJUKHZlcnRleFN0
YWdlLm1vZHVsZS0+d2hsc2xNb2R1bGUoKSk7Ci0gICAgICAgIEFTU0VSVCghZnJhZ21lbnRTdGFn
ZSB8fCBmcmFnbWVudFN0YWdlLT5tb2R1bGUtPndobHNsTW9kdWxlKCkpOwotCi0gICAgICAgIHdo
bHNsRGVzY3JpcHRvci0+dmVydGV4RW50cnlQb2ludE5hbWUgPSB2ZXJ0ZXhTdGFnZS5lbnRyeVBv
aW50OwotICAgICAgICBpZiAoZnJhZ21lbnRTdGFnZSkKLSAgICAgICAgICAgIHdobHNsRGVzY3Jp
cHRvci0+ZnJhZ21lbnRFbnRyeVBvaW50TmFtZSA9IGZyYWdtZW50U3RhZ2UtPmVudHJ5UG9pbnQ7
CisgICAgd2hsc2xEZXNjcmlwdG9yLnZlcnRleEVudHJ5UG9pbnROYW1lID0gdmVydGV4U3RhZ2Uu
ZW50cnlQb2ludDsKKyAgICBpZiAoZnJhZ21lbnRTdGFnZSkKKyAgICAgICAgd2hsc2xEZXNjcmlw
dG9yLmZyYWdtZW50RW50cnlQb2ludE5hbWUgPSBmcmFnbWVudFN0YWdlLT5lbnRyeVBvaW50Owog
Ci0gICAgICAgIGF1dG8gd2hsc2xDb21waWxlUmVzdWx0ID0gV0hMU0w6OnByZXBhcmUoKnZlcnRl
eFN0YWdlLm1vZHVsZS0+d2hsc2xNb2R1bGUoKSwgZnJhZ21lbnRTdGFnZSA/IGZyYWdtZW50U3Rh
Z2UtPm1vZHVsZS0+d2hsc2xNb2R1bGUoKSA6IG51bGxwdHIsICp3aGxzbERlc2NyaXB0b3IpOwot
ICAgICAgICBpZiAoIXdobHNsQ29tcGlsZVJlc3VsdCkgewotICAgICAgICAgICAgZXJyb3JTY29w
ZXMuZ2VuZXJhdGVQcmVmaXhlZEVycm9yKG1ha2VTdHJpbmcoIldITFNMIGNvbXBpbGUgZXJyb3I6
ICIsIHdobHNsQ29tcGlsZVJlc3VsdC5lcnJvcigpKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgIH0KKyAgICBhdXRvIHdobHNsQ29tcGlsZVJlc3VsdCA9IFdITFNMOjpwcmVw
YXJlKHZlcnRleFN0YWdlLm1vZHVsZS0+d2hsc2xNb2R1bGUoKSwgZnJhZ21lbnRTdGFnZSA/ICZm
cmFnbWVudFN0YWdlLT5tb2R1bGUtPndobHNsTW9kdWxlKCkgOiBudWxscHRyLCB3aGxzbERlc2Ny
aXB0b3IpOworICAgIGlmICghd2hsc2xDb21waWxlUmVzdWx0KSB7CisgICAgICAgIGVycm9yU2Nv
cGVzLmdlbmVyYXRlUHJlZml4ZWRFcnJvcihtYWtlU3RyaW5nKCJXSExTTCBjb21waWxlIGVycm9y
OiAiLCB3aGxzbENvbXBpbGVSZXN1bHQuZXJyb3IoKSkpOworICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQogCi0gICAgICAgIE5TRXJyb3IgKmVycm9yID0gbmlsOworICAgIE5TRXJyb3IgKmVy
cm9yID0gbmlsOwogCi0gICAgICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKLSAgICAg
ICAgTW9ub3RvbmljVGltZSBzdGFydFRpbWU7Ci0gICAgICAgIGlmIChXSExTTDo6ZHVtcE1ldGFs
Q29tcGlsZVRpbWVzKQotICAgICAgICAgICAgc3RhcnRUaW1lID0gTW9ub3RvbmljVGltZTo6bm93
KCk7Ci0gICAgICAgIC8vIEZJWE1FOiBodHRwczovL3dlYmtpdC5vcmcvYi8yMDA0NzQgQWRkIGRp
cmVjdCBTdHJpbmdCdWlsZGVyIC0+IE5TU3RyaW5nIGNvbnZlcnNpb24gdG8gYXZvaWQgZXh0cmEg
Y29weSBpbnRvIGEgV1RGOjpTdHJpbmcKLSAgICAgICAgdmVydGV4TGlicmFyeSA9IGFkb3B0TlMo
W2RldmljZS5wbGF0Zm9ybURldmljZSgpIG5ld0xpYnJhcnlXaXRoU291cmNlOndobHNsQ29tcGls
ZVJlc3VsdC0+bWV0YWxTb3VyY2UudG9TdHJpbmcoKSBvcHRpb25zOm5pbCBlcnJvcjomZXJyb3Jd
KTsKLSAgICAgICAgaWYgKFdITFNMOjpkdW1wTWV0YWxDb21waWxlVGltZXMpCi0gICAgICAgICAg
ICBkYXRhTG9nTG4oIk1ldGFsIGNvbXBpbGUgdGltZXM6ICIsIChNb25vdG9uaWNUaW1lOjpub3co
KSAtIHN0YXJ0VGltZSkubWlsbGlzZWNvbmRzKCksICIgbXMiKTsKLSAgICAgICAgRU5EX0JMT0NL
X09CSkNfRVhDRVBUSU9OUzsKKyAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisgICAg
TW9ub3RvbmljVGltZSBzdGFydFRpbWU7CisgICAgaWYgKFdITFNMOjpkdW1wTWV0YWxDb21waWxl
VGltZXMpCisgICAgICAgIHN0YXJ0VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOworICAgIC8v
IEZJWE1FOiBodHRwczovL3dlYmtpdC5vcmcvYi8yMDA0NzQgQWRkIGRpcmVjdCBTdHJpbmdCdWls
ZGVyIC0+IE5TU3RyaW5nIGNvbnZlcnNpb24gdG8gYXZvaWQgZXh0cmEgY29weSBpbnRvIGEgV1RG
OjpTdHJpbmcKKyAgICB2ZXJ0ZXhMaWJyYXJ5ID0gYWRvcHROUyhbZGV2aWNlLnBsYXRmb3JtRGV2
aWNlKCkgbmV3TGlicmFyeVdpdGhTb3VyY2U6d2hsc2xDb21waWxlUmVzdWx0LT5tZXRhbFNvdXJj
ZS50b1N0cmluZygpIG9wdGlvbnM6bmlsIGVycm9yOiZlcnJvcl0pOworICAgIGlmIChXSExTTDo6
ZHVtcE1ldGFsQ29tcGlsZVRpbWVzKQorICAgICAgICBkYXRhTG9nTG4oIk1ldGFsIGNvbXBpbGUg
dGltZXM6ICIsIChNb25vdG9uaWNUaW1lOjpub3coKSAtIHN0YXJ0VGltZSkubWlsbGlzZWNvbmRz
KCksICIgbXMiKTsKKyAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogCi0gICAgICAgIGlm
ICghdmVydGV4TGlicmFyeSAmJiBlcnJvcikgewotICAgICAgICAgICAgZXJyb3JTY29wZXMuZ2Vu
ZXJhdGVQcmVmaXhlZEVycm9yKGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9uLlVURjhTdHJpbmcp
OworICAgIGlmICghdmVydGV4TGlicmFyeSAmJiBlcnJvcikgeworICAgICAgICBlcnJvclNjb3Bl
cy5nZW5lcmF0ZVByZWZpeGVkRXJyb3IoZXJyb3IubG9jYWxpemVkRGVzY3JpcHRpb24uVVRGOFN0
cmluZyk7CiAjaWZuZGVmIE5ERUJVRwotICAgICAgICAgICAgTlNMb2coQCIlQCIsIGVycm9yKTsK
KyAgICAgICAgTlNMb2coQCIlQCIsIGVycm9yKTsKICNlbmRpZgotICAgICAgICB9Ci0KLSAgICAg
ICAgQVNTRVJUKHZlcnRleExpYnJhcnkpOwotICAgICAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTc3MSBPbmNlIHdlIHplcm8tZmlsbCB2YXJp
YWJsZXMsIHRoZXJlIHNob3VsZCBiZSBubyB3YXJuaW5ncywgc28gd2Ugc2hvdWxkIGJlIGFibGUg
dG8gQVNTRVJUKCFlcnJvcikgaGVyZS4KLQotICAgICAgICBmcmFnbWVudExpYnJhcnkgPSB2ZXJ0
ZXhMaWJyYXJ5OwotICAgICAgICB2ZXJ0ZXhFbnRyeVBvaW50ID0gd2hsc2xDb21waWxlUmVzdWx0
LT5tYW5nbGVkVmVydGV4RW50cnlQb2ludE5hbWUudG9TdHJpbmcoKTsKLSAgICAgICAgaWYgKGZy
YWdtZW50U3RhZ2UpCi0gICAgICAgICAgICBmcmFnbWVudEVudHJ5UG9pbnQgPSB3aGxzbENvbXBp
bGVSZXN1bHQtPm1hbmdsZWRGcmFnbWVudEVudHJ5UG9pbnROYW1lLnRvU3RyaW5nKCk7Ci0gICAg
fSBlbHNlIHsKLSAgICAgICAgdmVydGV4TGlicmFyeSA9IHZlcnRleFN0YWdlLm1vZHVsZS0+cGxh
dGZvcm1TaGFkZXJNb2R1bGUoKTsKLSAgICAgICAgdmVydGV4RW50cnlQb2ludCA9IHZlcnRleFN0
YWdlLmVudHJ5UG9pbnQ7Ci0gICAgICAgIGlmIChmcmFnbWVudFN0YWdlKSB7Ci0gICAgICAgICAg
ICBmcmFnbWVudExpYnJhcnkgPSBmcmFnbWVudFN0YWdlLT5tb2R1bGUtPnBsYXRmb3JtU2hhZGVy
TW9kdWxlKCk7Ci0gICAgICAgICAgICBmcmFnbWVudEVudHJ5UG9pbnQgPSBmcmFnbWVudFN0YWdl
LT5lbnRyeVBvaW50OwotICAgICAgICB9CiAgICAgfQogCisgICAgQVNTRVJUKHZlcnRleExpYnJh
cnkpOworICAgIC8vIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTk1NzcxIE9uY2Ugd2UgemVyby1maWxsIHZhcmlhYmxlcywgdGhlcmUgc2hvdWxkIGJlIG5v
IHdhcm5pbmdzLCBzbyB3ZSBzaG91bGQgYmUgYWJsZSB0byBBU1NFUlQoIWVycm9yKSBoZXJlLgor
CisgICAgZnJhZ21lbnRMaWJyYXJ5ID0gdmVydGV4TGlicmFyeTsKKyAgICB2ZXJ0ZXhFbnRyeVBv
aW50ID0gd2hsc2xDb21waWxlUmVzdWx0LT5tYW5nbGVkVmVydGV4RW50cnlQb2ludE5hbWUudG9T
dHJpbmcoKTsKKyAgICBpZiAoZnJhZ21lbnRTdGFnZSkKKyAgICAgICAgZnJhZ21lbnRFbnRyeVBv
aW50ID0gd2hsc2xDb21waWxlUmVzdWx0LT5tYW5nbGVkRnJhZ21lbnRFbnRyeVBvaW50TmFtZS50
b1N0cmluZygpOworCiAgICAgcmV0dXJuIHRyeVNldE1ldGFsRnVuY3Rpb25zKHZlcnRleExpYnJh
cnkuZ2V0KCksIGZyYWdtZW50TGlicmFyeS5nZXQoKSwgbXRsRGVzY3JpcHRvciwgdmVydGV4RW50
cnlQb2ludCwgZnJhZ21lbnRFbnRyeVBvaW50LCBlcnJvclNjb3Blcyk7CiB9CiAKQEAgLTQ1Miwx
NCArNDM3LDggQEAgc3RhdGljIFJldGFpblB0cjxNVExSZW5kZXJQaXBlbGluZURlc2NyaXB0b3I+
IGNvbnZlcnRSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IoY28KICAgICBjb25zdCBhdXRvJiB2ZXJ0
ZXhTdGFnZSA9IGRlc2NyaXB0b3IudmVydGV4U3RhZ2U7CiAgICAgY29uc3QgYXV0byYgZnJhZ21l
bnRTdGFnZSA9IGRlc2NyaXB0b3IuZnJhZ21lbnRTdGFnZTsKIAotICAgIGlmIChmcmFnbWVudFN0
YWdlICYmIHN0YXRpY19jYXN0PGJvb2w+KHZlcnRleFN0YWdlLm1vZHVsZS0+d2hsc2xNb2R1bGUo
KSkgIT0gc3RhdGljX2Nhc3Q8Ym9vbD4oZnJhZ21lbnRTdGFnZS0+bW9kdWxlLT53aGxzbE1vZHVs
ZSgpKSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgYm9vbCBpc1dobHNsID0gdmVydGV4
U3RhZ2UubW9kdWxlLT53aGxzbE1vZHVsZSgpOwotCiAgICAgLy8gU2V0IGRhdGEgZm9yIHRoZSBN
ZXRhbCBwaXBlbGluZSBkZXNjcmlwdG9yIChhbmQgV0hMU0wncywgaWYgbmVlZGVkKS4KLSAgICBP
cHRpb25hbDxXSExTTDo6UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yPiB3aGxzbERlc2NyaXB0b3I7
Ci0gICAgaWYgKGlzV2hsc2wpCi0gICAgICAgIHdobHNsRGVzY3JpcHRvciA9IFdITFNMOjpSZW5k
ZXJQaXBlbGluZURlc2NyaXB0b3IoKTsKKyAgICBXSExTTDo6UmVuZGVyUGlwZWxpbmVEZXNjcmlw
dG9yIHdobHNsRGVzY3JpcHRvciA9IFdITFNMOjpSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IoKTsK
IAogICAgIGlmICghdHJ5U2V0VmVydGV4SW5wdXQoZGVzY3JpcHRvci52ZXJ0ZXhJbnB1dCwgbXRs
RGVzY3JpcHRvci5nZXQoKSwgd2hsc2xEZXNjcmlwdG9yLCBlcnJvclNjb3BlcykpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwpAQCAtNDY3LDkgKzQ0Niw5IEBAIHN0YXRpYyBSZXRhaW5QdHI8TVRM
UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yPiBjb252ZXJ0UmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9y
KGNvCiAgICAgaWYgKCF0cnlTZXRDb2xvclN0YXRlcyhkZXNjcmlwdG9yLmNvbG9yU3RhdGVzLCBt
dGxEZXNjcmlwdG9yLmdldCgpLmNvbG9yQXR0YWNobWVudHMsIHdobHNsRGVzY3JpcHRvciwgZXJy
b3JTY29wZXMpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGlmIChkZXNjcmlwdG9y
LmxheW91dCAmJiB3aGxzbERlc2NyaXB0b3IpIHsKKyAgICBpZiAoZGVzY3JpcHRvci5sYXlvdXQp
IHsKICAgICAgICAgaWYgKGF1dG8gbGF5b3V0ID0gY29udmVydExheW91dCgqZGVzY3JpcHRvci5s
YXlvdXQpKQotICAgICAgICAgICAgd2hsc2xEZXNjcmlwdG9yLT5sYXlvdXQgPSBXVEZNb3ZlKCps
YXlvdXQpOworICAgICAgICAgICAgd2hsc2xEZXNjcmlwdG9yLmxheW91dCA9IFdURk1vdmUoKmxh
eW91dCk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgZXJyb3JTY29wZXMuZ2VuZXJhdGVQ
cmVmaXhlZEVycm9yKCJFcnJvciBjb252ZXJ0aW5nIEdQVVBpcGVsaW5lTGF5b3V0ISIpOwogICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVU2hhZGVyTW9kdWxlTWV0YWwubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVU2hhZGVyTW9kdWxlTWV0YWwu
bW0KaW5kZXggYjg2ZjA1MTU3NTdjMjVhMTVhNzQ0ZGE4MzUzMjA2YzZmYzc1OGExYi4uMzc4YTA5
MDE2YmM5ZTkwMGEzMDYwYjk4NjhlYjA1OWNhMmEyNDBjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVVNoYWRlck1vZHVsZU1ldGFsLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVTaGFk
ZXJNb2R1bGVNZXRhbC5tbQpAQCAtNDQsMzAgKzQ0LDExIEBAIFJlZlB0cjxHUFVTaGFkZXJNb2R1
bGU+IEdQVVNoYWRlck1vZHVsZTo6dHJ5Q3JlYXRlKGNvbnN0IEdQVURldmljZSYgZGV2aWNlLCBj
b25zCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KICAgICAKLSAgICBpZiAoZGVzY3Jp
cHRvci5pc1dITFNMKQotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEdQVVNoYWRlck1vZHVs
ZShXSExTTDo6Y3JlYXRlU2hhZGVyTW9kdWxlKGRlc2NyaXB0b3IuY29kZSkpKTsKLQotICAgIFBs
YXRmb3JtU2hhZGVyTW9kdWxlU21hcnRQdHIgbW9kdWxlOwotCi0gICAgQkVHSU5fQkxPQ0tfT0JK
Q19FWENFUFRJT05TOwotCi0gICAgTlNFcnJvciAqZXJyb3IgPSBbTlNFcnJvciBlcnJvcldpdGhE
b21haW46QCJjb20uYXBwbGUuV2ViS2l0LkdQVSIgY29kZToxIHVzZXJJbmZvOm5pbF07Ci0gICAg
bW9kdWxlID0gYWRvcHROUyhbZGV2aWNlLnBsYXRmb3JtRGV2aWNlKCkgbmV3TGlicmFyeVdpdGhT
b3VyY2U6ZGVzY3JpcHRvci5jb2RlIG9wdGlvbnM6bmlsIGVycm9yOiZlcnJvcl0pOwotICAgIGlm
ICghbW9kdWxlKQotICAgICAgICBMT0coV2ViR1BVLCAiU2hhZGVyIGNvbXBpbGF0aW9uIGVycm9y
OiAlcyIsIFtbZXJyb3IgbG9jYWxpemVkRGVzY3JpcHRpb25dIFVURjhTdHJpbmddKTsKLQotICAg
IEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7Ci0KLSAgICByZXR1cm4gbW9kdWxlID8gYWRvcHRS
ZWYobmV3IEdQVVNoYWRlck1vZHVsZShXVEZNb3ZlKG1vZHVsZSkpKSA6IG51bGxwdHI7Ci19Ci0K
LUdQVVNoYWRlck1vZHVsZTo6R1BVU2hhZGVyTW9kdWxlKFBsYXRmb3JtU2hhZGVyTW9kdWxlU21h
cnRQdHImJiBtb2R1bGUpCi0gICAgOiBtX3BsYXRmb3JtU2hhZGVyTW9kdWxlKFdURk1vdmUobW9k
dWxlKSkKLXsKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IEdQVVNoYWRlck1vZHVsZShXSExTTDo6
Y3JlYXRlU2hhZGVyTW9kdWxlKGRlc2NyaXB0b3IuY29kZSkpKTsKIH0KIAogR1BVU2hhZGVyTW9k
dWxlOjpHUFVTaGFkZXJNb2R1bGUoVW5pcXVlUmVmPFdITFNMOjpTaGFkZXJNb2R1bGU+JiYgd2hs
c2xNb2R1bGUpCi0gICAgOiBtX3dobHNsTW9kdWxlKHdobHNsTW9kdWxlLm1vdmVUb1VuaXF1ZVB0
cigpKQorICAgIDogbV93aGxzbE1vZHVsZShXVEZNb3ZlKHdobHNsTW9kdWxlKSkKIHsKIH0KIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IDA1NjQ2YjkwNzg5ODRkOTM0MzM1YTNjZjlmYzQ5NzhiODBhM2Q5OTYuLjA5ODBhYzFi
ZmVlZmE0ZWM4OTBiMmY5ZTRlZmI3NWY3YzRlNjg1OTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMjkgQEAK
KzIwMTktMDgtMjYgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKwor
ICAgICAgICBbV0hMU0xdIFJld3JpdGUgYWxsIHRlc3RzIHRvIHVzZSBXSExTTCBhbmQgZGVsZXRl
IHRoZSBpc1dITFNMIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwMTE2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogd2ViZ3B1L2JpbmQtZ3JvdXBzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2Js
ZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2JsZW5kLXRy
aWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2J1ZmZlci1jb21tYW5kLWJ1ZmZl
ci1yYWNlcy5odG1sOgorICAgICAgICAqIHdlYmdwdS9jb2xvci13cml0ZS1tYXNrLXRyaWFuZ2xl
LXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2NvbXB1dGUtcGlwZWxpbmUtZXJyb3JzLmh0
bWw6CisgICAgICAgICogd2ViZ3B1L2RlcHRoLWVuYWJsZWQtdHJpYW5nbGUtc3RyaXAuaHRtbDoK
KyAgICAgICAgKiB3ZWJncHUvZHJhdy1pbmRleGVkLXRyaWFuZ2xlcy5odG1sOgorICAgICAgICAq
IHdlYmdwdS9tc2wtaGFybmVzcy10ZXN0LWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAg
KiB3ZWJncHUvbXNsLWhhcm5lc3MtdGVzdC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYmdw
dS9yZW5kZXItY29tbWFuZC1lbmNvZGluZy5odG1sOgorICAgICAgICAqIHdlYmdwdS9yZW5kZXIt
cGlwZWxpbmUtZXJyb3JzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3JlbmRlci1waXBlbGluZXMu
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvc2hhZGVyLW1vZHVsZXMuaHRtbDoKKyAgICAgICAgKiB3
ZWJncHUvc2ltcGxlLXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3RleHR1
cmUtdHJpYW5nbGUtc3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvdmVydGV4LWJ1ZmZlci10
cmlhbmdsZS1zdHJpcC5odG1sOgorICAgICAgICAqIHdlYmdwdS92aWV3cG9ydC1zY2lzc29yLXJl
Y3QtdHJpYW5nbGUtc3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvYXJiaXRyYXJ5
LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25zLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNs
L2J1ZmZlci1mcmFnbWVudC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9idWZmZXItbGVu
Z3RoLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2J1ZmZlci12ZXJ0ZXguaHRtbDoKKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wvY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2Rp
Znktd3JpdGUtdmFyaWFibGVzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2NvbXB1dGUu
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZGVyZWZlcmVuY2UtcG9pbnRlci1zaG91bGQt
dHlwZS1jaGVjay5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9kZXZpY2UtcHJvcGVyLXR5
cGUtY2hlY2tlci5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWJy
ZWFrLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtY29udGludWUu
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC5odG1sOgorICAgICAg
ICAqIHdlYmdwdS93aGxzbC9kb250LWNyYXNoLXBhcnNpbmctZW51bS5odG1sOgorICAgICAgICAq
IHdlYmdwdS93aGxzbC9kb3QtZXhwcmVzc2lvbnMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvZHVwbGljYXRlLXR5cGVzLXNob3VsZC1ub3QtcHJvZHVjZS1kdXBsaWNhdGUtY3RvcnMuaHRt
bDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGlt
ZS0yLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUt
bGlmZXRpbWUtMy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZh
cmlhYmxlLWxpZmV0aW1lLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2h1Z2UtYXJyYXku
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvanMvdGVzdC1oYXJuZXNzLmpzOgorICAgICAg
ICAoY29udmVydFR5cGVUb0FycmF5VHlwZSk6CisgICAgICAgIChEYXRhKToKKyAgICAgICAgKEhh
cm5lc3MpOgorICAgICAgICAoSGFybmVzcy5wcm90b3R5cGUuYXN5bmMuY2FsbFR5cGVkRnVuY3Rp
b24pOgorICAgICAgICAoSGFybmVzcy5wcm90b3R5cGUuY2FsbFZvaWRGdW5jdGlvbik6CisgICAg
ICAgIChIYXJuZXNzLnByb3RvdHlwZS5hc3luYy5jaGVja0NvbXBpbGVGYWlsKToKKyAgICAgICAg
KEhhcm5lc3MucHJvdG90eXBlLl9zZXRVcEFyZ3VtZW50cyk6CisgICAgICAgIChIYXJuZXNzLnBy
b3RvdHlwZS5hc3luYy5fY2FsbEZ1bmN0aW9uKToKKyAgICAgICAgKEhhcm5lc3MucHJvdG90eXBl
LnNldCBpc1dITFNMKTogRGVsZXRlZC4KKyAgICAgICAgKEhhcm5lc3MucHJvdG90eXBlLmdldCBp
c1dITFNMKTogRGVsZXRlZC4KKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbG9vcHMtYnJlYWsuaHRt
bDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbG9vcHMtY29udGludWUuaHRtbDoKKyAgICAgICAg
KiB3ZWJncHUvd2hsc2wvbG9vcHMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbWFrZS1h
cnJheS1yZWZlcmVuY2UuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbWF0cml4LTIuaHRt
bDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbWF0cml4LW1lbW9yeS1sYXlvdXQuaHRtbDoKKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wvbWF0cml4Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNs
L25lc3RlZC1kb3QtZXhwcmVzc2lvbi1ydmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvbmVzdGVkLWxvb3AuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbnVsbC1kZXJlZmVy
ZW5jZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9vb2ItYWNjZXNzLmh0bWw6CisgICAg
ICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItYWJzdHJhY3QtbHZhbHVl
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItbHZh
bHVlLTMtbGV2ZWxzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2
ZXIvYW5kZXItbHZhbHVlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVz
b2x2ZXIvYW5kZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZl
ci9nZXR0ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9p
bmRleGVyLWFuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFs
dWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVy
LWFuZGVyLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5k
ZXhlci1nZXR0ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZl
ci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbDoKKyAgICAgICAg
KiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1s
dmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRl
eGVyLXNldHRlci1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHly
ZXNvbHZlci9pbmRleGVyLXNldHRlci5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0ZXItYWJzdHJhY3QtbHZhbHVl
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWx2
YWx1ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9yZWFkLW1vZGlmeS13cml0ZS1oaWdo
LXpvbWJpZXMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcmVhZC1tb2RpZnktd3JpdGUu
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcmV0dXJuLWxvY2FsLXZhcmlhYmxlLmh0bWw6
CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzLTEwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTExLmh0bWw6CisgICAgICAg
ICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTEyLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEzLmh0bWw6CisgICAgICAgICogd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE0
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE2Lmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzLTE3Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE4Lmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTE5Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjAuaHRt
bDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMjEuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjIuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQuaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MjUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjYuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjcuaHRtbDoK
KyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMtMy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy00Lmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNi5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy03Lmh0bWw6
CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzLTguaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtOS5odG1sOgorICAgICAgICAq
IHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zaW1wbGUtYXJyYXlzLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L3dobHNsL3N0b3JlLXRvLXByb3BlcnR5LXVwZGF0ZXMtcHJvcGVybHku
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvdGV4dHVyZXMtZ2V0ZGltZW5zaW9ucy5odG1s
OgorICAgICAgICAqIHdlYmdwdS93aGxzbC90ZXh0dXJlcy1sb2FkLmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3RleHR1cmVzLXNhbXBsZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC90d28tZGltZW5zaW9uYWwtYXJyYXkuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvdXNl
LXVuZGVmaW5lZC12YXJpYWJsZS0yLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3VzZS11
bmRlZmluZWQtdmFyaWFibGUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvd2hpbGUtbG9v
cC1icmVhay5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC93aGlsZS1sb29wLWNvbnRpbnVl
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3dobHNsLmh0bWw6CisgICAgICAgICogd2Vi
Z3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMtMi5odG1sOgorICAgICAgICAqIHdlYmdw
dS93aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLmh0bWw6CisKIDIwMTktMDgtMjMgIERldmlu
IFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGNy
ZWF0ZSBhZGRpdGlvbmFsIGNvbW1hbmQgbGluZSBhcGkgZnVuY3Rpb25zIGZvciBvdGhlciBjb25z
b2xlIG1ldGhvZHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9iaW5kLWdyb3Vwcy5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JpbmQtZ3JvdXBzLmh0bWwKaW5kZXggMDgzZGJmYjQz
OGFlYTRkNGJjNGFjNGMzMTZmNGE1N2M0YWY4YmZhMy4uMTllM2IyNTczNjU5NmViMmI1NTM1ZDAw
Yzk1MWJlODFjNWRkN2Q5MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2JpbmQtZ3Jv
dXBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JpbmQtZ3JvdXBzLmh0bWwKQEAgLTM1
LDcgKzM1LDcgQEAgdGVzdHNbIkNyZWF0ZSBhbmQgdXNlIGEgYmFzaWMgR1BVQmluZEdyb3VwLiJd
ID0gYXN5bmMgZGV2aWNlID0+IHsKIAogICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2aWNl
LmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHsgYmluZEdyb3VwTGF5b3V0czogW2JpbmRHcm91cExheW91
dF0gfSk7CiAKLSAgICBjb25zdCBiYXNpY1NoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoeyBjb2RlOiBiYXNpY0J1ZmZlclNoYWRlciwgaXNXSExTTDogdHJ1ZSB9KTsKKyAg
ICBjb25zdCBiYXNpY1NoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBj
b2RlOiBiYXNpY0J1ZmZlclNoYWRlciB9KTsKICAgICBiYXNpY1BpcGVsaW5lID0gZGV2aWNlLmNy
ZWF0ZUNvbXB1dGVQaXBlbGluZSh7CiAgICAgICAgIGxheW91dDogcGlwZWxpbmVMYXlvdXQsCiAg
ICAgICAgIGNvbXB1dGVTdGFnZTogewpAQCAtMTM5LDcgKzEzOSw3IEBAIHRlc3RzWyJDcmVhdGUg
YW5kIGFjY2VzcyBhIHVuaWZvcm0tYnVmZmVyIGluIGEgR1BVQmluZEdyb3VwLiJdID0gYXN5bmMg
ZGV2aWNlID0+CiAKICAgICBjb25zdCBwaXBlbGluZUxheW91dCA9IGRldmljZS5jcmVhdGVQaXBl
bGluZUxheW91dCh7IGJpbmRHcm91cExheW91dHM6IFtiaW5kR3JvdXBMYXlvdXRdIH0pOwogCi0g
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6
IHVuaWZvcm1CdWZmZXJTaGFkZXIsIGlzV0hMU0w6IHRydWUgfSk7CisgICAgY29uc3Qgc2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHVuaWZvcm1CdWZmZXJT
aGFkZXIgfSk7CiAKICAgICBjb25zdCBwaXBlbGluZSA9IGRldmljZS5jcmVhdGVDb21wdXRlUGlw
ZWxpbmUoewogICAgICAgICBsYXlvdXQ6IHBpcGVsaW5lTGF5b3V0LApAQCAtMjE2LDcgKzIxNiw3
IEBAIHRlc3RzWyJDcmVhdGUgYW5kIGFjY2VzcyBhIHNhbXBsZWQgdGV4dHVyZSBpbiBhIEdQVUJp
bmRHcm91cC4iXSA9IGFzeW5jIGRldmljZSA9CiAgICAgICAgIH1dCiAgICAgfSk7CiAKLSAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogc2Ft
cGxlZFRleHR1cmVTaGFkZXIsIGlzV0hMU0w6IHRydWUgfSk7CisgICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHNhbXBsZWRUZXh0dXJlU2hh
ZGVyIH0pOwogICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZVBpcGVsaW5l
TGF5b3V0KHsgYmluZEdyb3VwTGF5b3V0czogW2JpbmRHcm91cExheW91dF0gfSk7CiAKICAgICBj
b25zdCBwaXBlbGluZSA9IGRldmljZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoewpAQCAtMzQxLDcg
KzM0MSw3IEBAIHRlc3RzWyJDcmVhdGUgYW5kIHVzZSBtdWx0aXBsZSBHUFVCaW5kR3JvdXBzIGlu
IGEgc2luZ2xlIGRpc3BhdGNoLiJdID0gYXN5bmMgZGV2CiAgICAgICAgIH1dCiAgICAgfSk7CiAK
LSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29k
ZTogY29tYm9TaGFkZXIsIGlzV0hMU0w6IHRydWUgfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IGNvbWJvU2hhZGVyIH0pOwogICAg
IGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHsgYmlu
ZEdyb3VwTGF5b3V0czogW2JnbDAsIGJnbDEsIGJnbDIsIGJnbDNdIH0pOwogCiAgICAgY29uc3Qg
cGlwZWxpbmUgPSBkZXZpY2UuY3JlYXRlQ29tcHV0ZVBpcGVsaW5lKHsKQEAgLTQxOCw3ICs0MTgs
NyBAQCB0ZXN0c1siQmluZCBhIHNpbmdsZSBHUFVCdWZmZXIgd2l0aCBkaWZmZXJlbnQgb2Zmc2V0
cyBpbiBkaWZmZXJlbnQgR1BVQmluZEdyb3VwcwogCiAgICAgY29uc3QgcGlwZWxpbmVMYXlvdXQg
PSBkZXZpY2UuY3JlYXRlUGlwZWxpbmVMYXlvdXQoeyBiaW5kR3JvdXBMYXlvdXRzOiBbYmluZEdy
b3VwTGF5b3V0XSB9KTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoeyBjb2RlOiB1bmlmb3JtQnVmZmVyU2hhZGVyLCBpc1dITFNMOiB0cnVlIH0p
OworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBj
b2RlOiB1bmlmb3JtQnVmZmVyU2hhZGVyIH0pOwogCiAgICAgY29uc3QgcGlwZWxpbmUgPSBkZXZp
Y2UuY3JlYXRlQ29tcHV0ZVBpcGVsaW5lKHsKICAgICAgICAgbGF5b3V0OiBwaXBlbGluZUxheW91
dCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9ibGVuZC1jb2xvci10cmlhbmdsZS1z
dHJpcC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlw
Lmh0bWwKaW5kZXggZTBhY2ZkMmZlMGQ5ODMzOWFmMDZjMDNjMGJhOTgzZTY5OGRiYjg0OS4uNjVh
ODQ0YzBkODgxNTQ0NjM3ZjgxYmE1OGYwY2E0NWRjNjA0NzYxNCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L2JsZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L2JsZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAgLTExLDM2ICsx
MSwyNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgot
ICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4Ci17Ci0gICAgZmxv
YXQ0IHBvc2l0aW9uIFtbcG9zaXRpb25dXTsKLX07Ci0KLXZlcnRleCBWZXJ0ZXggdmVydGV4X21h
aW4odWludCB2aWQgW1t2ZXJ0ZXhfaWRdXSkKLXsKLSAgICBWZXJ0ZXggdjsKK3ZlcnRleCBmbG9h
dDQgdmVydGV4X21haW4odWludCB2aWQgOiBTVl9WZXJ0ZXhJRCkgOiBTVl9Qb3NpdGlvbiB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKICAgICBzd2l0Y2ggKHZpZCkgewogICAgIGNhc2UgMDoKLSAgICAg
ICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgMSwgMCwgMSk7CisgICAgICAgIHJlc3VsdCA9IGZs
b2F0NCgtMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMToKLSAgICAgICAg
di5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgLTEsIDAsIDEpOworICAgICAgICByZXN1bHQgPSBmbG9h
dDQoLTEsIC0xLCAwLCAxKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAyOgotICAgICAgICB2
LnBvc2l0aW9uID0gZmxvYXQ0KDEsIDEsIDAsIDEpOworICAgICAgICByZXN1bHQgPSBmbG9hdDQo
MSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6Ci0gICAgICAgIHYucG9z
aXRpb24gPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICByZXN1bHQgPSBmbG9hdDQoMSwg
LTEsIDAsIDEpOworICAgICAgICBicmVhazsKICAgICB9Ci0gICAgcmV0dXJuIHY7CisgICAgcmV0
dXJuIHJlc3VsdDsKIH0KIAotZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKQoteworZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNWX1RhcmdldCAwIHsKICAgICByZXR1cm4g
ZmxvYXQ0KDAsIDEsIDEsIDEpOwogfQogYDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdw
dS9ibGVuZC10cmlhbmdsZS1zdHJpcC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLXRy
aWFuZ2xlLXN0cmlwLmh0bWwKaW5kZXggYzY2NWY1N2YwZmJhNThkYjc4NmQ1ZjA0ODRiOWVmNjcx
ODc5OTRjYy4uMjA2YTBhNzU2ZDhjYzBiY2UxNTNhMTlmZjUxMmU1Y2UzYzcxM2MyZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLXRyaWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAgLTEzLDMyICsx
MywyMiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiBjb25zdCBwb3NpdGlvbkF0dHJpYnV0ZU51
bSA9IDA7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgot
ICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4KLXsKLSAgICBm
bG9hdDQgcG9zaXRpb24gW1thdHRyaWJ1dGUoJHtwb3NpdGlvbkF0dHJpYnV0ZU51bX0pXV07Ci19
OwotCiBzdHJ1Y3QgVmVydGV4T3V0CiB7Ci0gICAgZmxvYXQ0IHBvc2l0aW9uIFtbcG9zaXRpb25d
XTsKLSAgICBmbG9hdDQgY29sb3I7CisgICAgZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb247
CisgICAgZmxvYXQ0IGNvbG9yIDogYXR0cmlidXRlKDApOwogfTsKIAotdmVydGV4IFZlcnRleE91
dCB2ZXJ0ZXhfbWFpbihWZXJ0ZXhJbiB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCi17Cit2ZXJ0ZXgg
VmVydGV4T3V0IHZlcnRleF9tYWluKGZsb2F0NCBwb3NpdGlvbiA6IGF0dHJpYnV0ZSgke3Bvc2l0
aW9uQXR0cmlidXRlTnVtfSkpIHsKICAgICBWZXJ0ZXhPdXQgdk91dDsKLSAgICB2T3V0LnBvc2l0
aW9uID0gdmVydGV4SW4ucG9zaXRpb247CisgICAgdk91dC5wb3NpdGlvbiA9IHBvc2l0aW9uOwog
ICAgIHZPdXQuY29sb3IgPSBmbG9hdDQoMCwgMC41LCAwLCAwLjUpOwogICAgIHJldHVybiB2T3V0
OwogfQogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXhPdXQgdiBbW3N0YWdl
X2luXV0pCitmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihmbG9hdDQgY29sb3IgOiBhdHRy
aWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAKIHsKLSAgICByZXR1cm4gdi5jb2xvcjsKKyAgICByZXR1
cm4gY29sb3I7CiB9CiBgOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvYnVmZmVy
LWNvbW1hbmQtYnVmZmVyLXJhY2VzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvYnVmZmVyLWNv
bW1hbmQtYnVmZmVyLXJhY2VzLmh0bWwKaW5kZXggMDFiMWU1ODRiNzY4N2VkMDU4NTY5YTg5OGMx
YjY5MjljZTA3ZjMxNC4uYTBiNWMzOGU2NGNkYTMxZGVhM2YyY2VjNGM3ODBlYjUxMDAxNGI5ZiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2J1ZmZlci1jb21tYW5kLWJ1ZmZlci1yYWNl
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9idWZmZXItY29tbWFuZC1idWZmZXItcmFj
ZXMuaHRtbApAQCAtMTEsMzQgKzExLDIyIEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKIAogY29uc3Qgc2hhZGVyQ29kZSA9IGAKLSNpbmNs
dWRlIDxtZXRhbF9zdGRsaWI+Ci0gICAgCi11c2luZyBuYW1lc3BhY2UgbWV0YWw7Ci0KLXN0cnVj
dCBWZXJ0ZXhJbgotewotICAgIGZsb2F0MiB4eSBbW2F0dHJpYnV0ZSgwKV1dOwotICAgIGZsb2F0
MyByZ2IgW1thdHRyaWJ1dGUoMSldXTsKLX07Ci0KIHN0cnVjdCBWZXJ0ZXhPdXQKIHsKLSAgICBm
bG9hdDQgcG9zaXRpb24gW1twb3NpdGlvbl1dOwotICAgIGZsb2F0NCBjb2xvcjsKKyAgICBmbG9h
dDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsKKyAgICBmbG9hdDQgY29sb3IgOiBhdHRyaWJ1dGUo
MCk7CiB9OwogCi12ZXJ0ZXggVmVydGV4T3V0IHZlcnRleF9tYWluKFZlcnRleEluIHZlcnRleElu
IFtbc3RhZ2VfaW5dXSkKLXsKK3ZlcnRleCBWZXJ0ZXhPdXQgdmVydGV4X21haW4oZmxvYXQyIHh5
IDogYXR0cmlidXRlKDApLCBmbG9hdDMgcmdiIDogYXR0cmlidXRlKDEpKSB7CiAgICAgVmVydGV4
T3V0IHZPdXQ7Ci0gICAgdk91dC5wb3NpdGlvbiA9IGZsb2F0NCh2ZXJ0ZXhJbi54eSwgMCwgMSk7
Ci0gICAgdk91dC5jb2xvciA9IGZsb2F0NCh2ZXJ0ZXhJbi5yZ2IsIDEpOwotCisgICAgdk91dC5w
b3NpdGlvbiA9IGZsb2F0NCh4eSwgMCwgMSk7CisgICAgdk91dC5jb2xvciA9IGZsb2F0NChyZ2Is
IDEpOwogICAgIHJldHVybiB2T3V0OwogfQogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFp
bihWZXJ0ZXhPdXQgdiBbW3N0YWdlX2luXV0pCitmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFp
bihmbG9hdDQgY29sb3IgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAKIHsKLSAgICByZXR1
cm4gdi5jb2xvcjsKKyAgICByZXR1cm4gY29sb3I7CiB9CiBgCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS9jb2xvci13cml0ZS1tYXNrLXRyaWFuZ2xlLXN0cmlwLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvY29sb3Itd3JpdGUtbWFzay10cmlhbmdsZS1zdHJpcC5odG1sCmluZGV4
IDJmM2YxMmMzYmM2YjQ0ZjFiNzBiOGIwNjc1YWEwMDdjNGRkOGY4MDQuLjI4N2VmZGU0YTJlMTc4
ZGUzMzVjZDAxN2M3MzNmMmM0YWVjOTAyM2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdw
dS9jb2xvci13cml0ZS1tYXNrLXRyaWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L2NvbG9yLXdyaXRlLW1hc2stdHJpYW5nbGUtc3RyaXAuaHRtbApAQCAtMTEsMzUgKzEx
LDI3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKIAogY29uc3Qgc2hhZGVyQ29kZSA9IGAKLSNpbmNsdWRlIDxtZXRhbF9zdGRsaWI+Ci0g
ICAgCi11c2luZyBuYW1lc3BhY2UgbWV0YWw7Ci0KLXN0cnVjdCBWZXJ0ZXgKLXsKLSAgICBmbG9h
dDQgcG9zaXRpb24gW1twb3NpdGlvbl1dOwotfTsKLQotdmVydGV4IFZlcnRleCB2ZXJ0ZXhfbWFp
bih1aW50IHZpZCBbW3ZlcnRleF9pZF1dKQordmVydGV4IGZsb2F0NCB2ZXJ0ZXhfbWFpbih1aW50
IHZpZCA6IFNWX1ZlcnRleElEKSA6IFNWX1Bvc2l0aW9uCiB7Ci0gICAgVmVydGV4IHY7CisgICAg
ZmxvYXQ0IHY7CiAgICAgc3dpdGNoICh2aWQpIHsKICAgICBjYXNlIDA6Ci0gICAgICAgIHYucG9z
aXRpb24gPSBmbG9hdDQoLTEsIDEsIDAsIDEpOworICAgICAgICB2ID0gZmxvYXQ0KC0xLCAxLCAw
LCAxKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAxOgotICAgICAgICB2LnBvc2l0aW9uID0g
ZmxvYXQ0KC0xLCAtMSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoLTEsIC0xLCAwLCAxKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAyOgotICAgICAgICB2LnBvc2l0aW9uID0gZmxvYXQ0
KDEsIDEsIDAsIDEpOworICAgICAgICB2ID0gZmxvYXQ0KDEsIDEsIDAsIDEpOwogICAgICAgICBi
cmVhazsKICAgICBkZWZhdWx0OgotICAgICAgICB2LnBvc2l0aW9uID0gZmxvYXQ0KDEsIC0xLCAw
LCAxKTsKKyAgICAgICAgdiA9IGZsb2F0NCgxLCAtMSwgMCwgMSk7CisgICAgICAgIGJyZWFrOwog
ICAgIH0KICAgICByZXR1cm4gdjsKIH0KIAotZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4o
KQorZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNWX1RhcmdldCAwCiB7CiAgICAg
cmV0dXJuIGZsb2F0NCgxLCAxLCAxLCAxKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmdwdS9jb21wdXRlLXBpcGVsaW5lLWVycm9ycy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2Nv
bXB1dGUtcGlwZWxpbmUtZXJyb3JzLmh0bWwKaW5kZXggZjhiYmZlMGRjZWZmZjkzNDhiMWYyYmEy
YmNkNGIwYjAyZmQ2NTgyMi4uZTk3NTQ0ZDkzY2U5ZDkyZmMyM2M3NzAwYjI5MjVmZTdkNzhhNTI1
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2NvbXB1dGUtcGlwZWxpbmUtZXJyb3Jz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2NvbXB1dGUtcGlwZWxpbmUtZXJyb3JzLmh0
bWwKQEAgLTE0LDcgKzE0LDcgQEAgdGVzdHNbIkNvbXB1dGUgY29tcGlsYXRpb24gZmFpbGVkIGR1
ZSB0byBpbmNvcnJlY3QgZW50cnkgcG9pbnQgc3RyaW5nLiJdID0gYXN5bmMKIFtudW10aHJlYWRz
KDEsIDEsIDEpXQogY29tcHV0ZSB2b2lkIF9jb21wdXRlX21haW4oKSB7IH0KIGA7Ci0gICAgZ29v
ZE1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBnb29kV0hMU0wsIGlz
V0hMU0w6IHRydWUgfSk7CisgICAgZ29vZE1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoeyBjb2RlOiBnb29kV0hMU0wgfSk7CiAKICAgICBkZXZpY2UucHVzaEVycm9yU2NvcGUoInZh
bGlkYXRpb24iKTsKIApAQCAtODIsNCArODIsNCBAQCBrZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWlu
KCkgeyB9CiAKIHJ1blRlc3RzV2l0aERldmljZSh0ZXN0cyk7CiA8L3NjcmlwdD4KLTwvYm9keT4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJncHUvZGVwdGgtZW5hYmxlZC10cmlhbmdsZS1zdHJpcC5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L2RlcHRoLWVuYWJsZWQtdHJpYW5nbGUtc3RyaXAuaHRtbAppbmRleCBmYjU1OWE4
MzkyYjJmNzQxODliZjc2ZWFmMWZhNDI5NWMwNzhiZGE1Li4xMzQ0MjRiZTg2NTJlN2E2ZmM2Nzg3
ZDIzNDFhMzdiYzA0ZGRmOTllIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvZGVwdGgt
ZW5hYmxlZC10cmlhbmdsZS1zdHJpcC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9kZXB0
aC1lbmFibGVkLXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAgLTExLDI1ICsxMSwxNiBAQCBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAKIGNvbnN0
IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNpbmcgbmFt
ZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4KLXsKLSAgICBmbG9hdDQgcG9zaXRpb24g
W1thdHRyaWJ1dGUoMCldXTsKLX07Ci0KIHN0cnVjdCBWZXJ0ZXhPdXQKIHsKLSAgICBmbG9hdDQg
cG9zaXRpb24gW1twb3NpdGlvbl1dOwotICAgIGZsb2F0NCBjb2xvcjsKKyAgICBmbG9hdDQgcG9z
aXRpb24gOiBTVl9Qb3NpdGlvbjsKKyAgICBmbG9hdDQgY29sb3IgOiBhdHRyaWJ1dGUoMCk7CiB9
OwogCi12ZXJ0ZXggVmVydGV4T3V0IHZlcnRleF9tYWluKFZlcnRleEluIHZlcnRleEluIFtbc3Rh
Z2VfaW5dXSwgdWludCBpaWQgW1tpbnN0YW5jZV9pZF1dKQordmVydGV4IFZlcnRleE91dCB2ZXJ0
ZXhfbWFpbihmbG9hdDQgcG9zaXRpb24gOiBhdHRyaWJ1dGUoMCksIHVpbnQgaWlkIDogU1ZfSW5z
dGFuY2VJRCkKIHsKICAgICBWZXJ0ZXhPdXQgdk91dDsKLSAgICB2T3V0LnBvc2l0aW9uID0gdmVy
dGV4SW4ucG9zaXRpb247CisgICAgdk91dC5wb3NpdGlvbiA9IHBvc2l0aW9uOwogCiAgICAgaWYg
KGlpZCA9PSAwKSB7CiAgICAgICAgIHZPdXQucG9zaXRpb24ueiA9IDAuNTsKQEAgLTQxLDkgKzMy
LDkgQEAgdmVydGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihWZXJ0ZXhJbiB2ZXJ0ZXhJbiBbW3N0
YWdlX2luXV0sIHVpbnQgaWlkIFtbaW5zdGFuY2UKICAgICByZXR1cm4gdk91dDsKIH0KIAotZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oVmVydGV4T3V0IHYgW1tzdGFnZV9pbl1dKQorZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oZmxvYXQ0IGNvbG9yIDogYXR0cmlidXRlKDApKSA6
IFNWX1RhcmdldCAwCiB7Ci0gICAgcmV0dXJuIHYuY29sb3I7CisgICAgcmV0dXJuIGNvbG9yOwog
fQogYAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvZHJhdy1pbmRleGVkLXRyaWFu
Z2xlcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2RyYXctaW5kZXhlZC10cmlhbmdsZXMuaHRt
bAppbmRleCAxMWEyYjQ2ZWVmMTExMmY0NzhiNzQ4MDNiYjA1YmEzNTk3YWM0MzMyLi5kMjIxYjNi
ZDA1YWYzOWRiMjhmNzU1ZjA4NTBkNTYxZDFiZjdhY2E0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy93ZWJncHUvZHJhdy1pbmRleGVkLXRyaWFuZ2xlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS9kcmF3LWluZGV4ZWQtdHJpYW5nbGVzLmh0bWwKQEAgLTExLDMzICsxMSwyMyBAQCBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAKIGNv
bnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNpbmcg
bmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4KLXsKLSAgICBmbG9hdDQgcG9zaXRp
b24gW1thdHRyaWJ1dGUoMCldXTsKLSAgICBmbG9hdCBncmVlbiBbW2F0dHJpYnV0ZSgxKV1dOwot
fTsKLQogc3RydWN0IFZlcnRleE91dAogewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0aW9u
XV07Ci0gICAgZmxvYXQ0IGNvbG9yOworICAgIGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9u
OworICAgIGZsb2F0NCBjb2xvciA6IGF0dHJpYnV0ZSgwKTsKIH07CiAKLXZlcnRleCBWZXJ0ZXhP
dXQgdmVydGV4X21haW4oVmVydGV4SW4gdmVydGV4SW4gW1tzdGFnZV9pbl1dKQordmVydGV4IFZl
cnRleE91dCB2ZXJ0ZXhfbWFpbihmbG9hdDQgcG9zaXRpb24gOiBhdHRyaWJ1dGUoMCksIGZsb2F0
IGdyZWVuIDogYXR0cmlidXRlKDEpKQogewogICAgIFZlcnRleE91dCB2T3V0OwotICAgIHZPdXQu
cG9zaXRpb24gPSB2ZXJ0ZXhJbi5wb3NpdGlvbjsKLSAgICB2T3V0LmNvbG9yID0gZmxvYXQ0KDAs
IHZlcnRleEluLmdyZWVuLCAwLCAxKTsKKyAgICB2T3V0LnBvc2l0aW9uID0gcG9zaXRpb247Cisg
ICAgdk91dC5jb2xvciA9IGZsb2F0NCgwLCBncmVlbiwgMCwgMSk7CiAgICAgcmV0dXJuIHZPdXQ7
CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKFZlcnRleE91dCB2IFtbc3RhZ2Vf
aW5dXSkKK2ZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKGZsb2F0NCBjb2xvciA6IGF0dHJp
YnV0ZSgwKSkgOiBTVl9UYXJnZXQgMAogewotICAgIHJldHVybiB2LmNvbG9yOworICAgIHJldHVy
biBjb2xvcjsKIH0KIGAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJu
ZXNzLXRlc3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJuZXNzLXRl
c3QtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlODcwOTU2MzJj
NjFlYWUzMWZiODFkZDQ3ZDA1MDdkMmIzZDhiZGMwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS9tc2wtaGFybmVzcy10ZXN0
LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLQotUEFTUyBSZXR1
cm4gYSBsaXRlcmFsIG9mIHR5cGUgYm9vbC4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBmbG9h
dDQgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgaW50IHZhbHVlLiAKLVBBU1MgUmV0
dXJuIGFuIGV4cGVjdGVkIHVjaGFyIHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIHVp
bnQgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgZmxvYXQgdmFsdWUuIAotUEFTUyBV
cGxvYWQgYW5kIHJldHVybiBhIGJvb2wgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQg
ZmxvYXQ0IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIGludCB2YWx1ZS4gCi1QQVNT
IFJldHVybiBhbiBleHBlY3RlZCB1Y2hhciB2YWx1ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3Rl
ZCB1aW50IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIGZsb2F0IHZhbHVlLiAKLVBB
U1MgVXBsb2FkIG1hbnkgYm9vbCB2YWx1ZXMgYW5kIHJldHVybiBhIGNhbGN1bGF0ZWQgcmVzdWx0
LiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIGZsb2F0NCB2YWx1ZS4gCi1QQVNTIFJldHVybiBh
biBleHBlY3RlZCBpbnQgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgdWNoYXIgdmFs
dWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgdWludCB2YWx1ZS4gCi1QQVNTIFJldHVybiBh
biBleHBlY3RlZCBmbG9hdCB2YWx1ZS4gCi1QQVNTIEFjY2VzcyBhbmQgcmV0dXJuIGEgc2luZ2xl
IGJvb2wgdGhyb3VnaCBhIGJvb2wqLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIGZsb2F0NCB2
YWx1ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBpbnQgdmFsdWUuIAotUEFTUyBSZXR1cm4g
YW4gZXhwZWN0ZWQgdWNoYXIgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgdWludCB2
YWx1ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBmbG9hdCB2YWx1ZS4gCi1QQVNTIEFjY2Vz
cyBtdWx0aXBsZSBib29scyB0aHJvdWdoIHZhcmlvdXMgYnVmZmVycyBhbmQgcmV0dXJuIGEgYm9v
bC4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBmbG9hdDQgdmFsdWUuIAotUEFTUyBSZXR1cm4g
YW4gZXhwZWN0ZWQgaW50IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIHVjaGFyIHZh
bHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIHVpbnQgdmFsdWUuIAotUEFTUyBSZXR1cm4g
YW4gZXhwZWN0ZWQgZmxvYXQgdmFsdWUuIAotUEFTUyBVcGxvYWQgYW5kIGNhbGN1bGF0ZSBhIHJl
c3VsdCBmcm9tIHZhcmllZCBhcmd1bWVudCB0eXBlcy4gCi1QQVNTIFN0b3JlIGludG8gYSBmbG9h
dDQqLiAKLVBBU1MgVXBsb2FkIGEgdWNoYXIqIGFuZCBzdG9yZSBpbnRvIGEgdWNoYXIqLiAKLQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJuZXNzLXRlc3QuaHRtbCBiL0xh
eW91dFRlc3RzL3dlYmdwdS9tc2wtaGFybmVzcy10ZXN0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGVhMzAwNzEyM2U5NWVlYjAyMzM5OWUzZWEwNDExMDEwMzgwZGI0YzAuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
d2ViZ3B1L21zbC1oYXJuZXNzLXRlc3QuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIwOSArMCww
IEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPG1ldGEgY2hhcnNldD11dGYtOD4KLTx0aXRs
ZT5UZXN0IHRoZSBXSExTTCB0ZXN0IGhhcm5lc3MuPC90aXRsZT4KLTxzY3JpcHQgc3JjPSJ3aGxz
bC9qcy90ZXN0LWhhcm5lc3MuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+Ci1jb25zdCBlcHNpbG9uID0g
MC4wMDAxOwotCi1jb25zdCBudW1lcmljU2NhbGFyVHlwZXMgPSBbImludCIsICJ1Y2hhciIsICJ1
aW50IiwgImZsb2F0Il07Ci0KLWNvbnN0IG51bWVyaWNTY2FsYXJGdW5jcyA9IHsKLSAgICAiaW50
IjogY2FsbEludEZ1bmN0aW9uLAotICAgICJ1Y2hhciI6IGNhbGxVY2hhckZ1bmN0aW9uLAotICAg
ICJ1aW50IjogY2FsbFVpbnRGdW5jdGlvbiwKLSAgICAiZmxvYXQiOiBjYWxsRmxvYXRGdW5jdGlv
bgotfTsKLQotY29uc3Qgc2NhbGFyQXJnTWFrZXJzID0gewotICAgICJpbnQiOiBtYWtlSW50LAot
ICAgICJ1Y2hhciI6IG1ha2VVY2hhciwKLSAgICAidWludCI6IG1ha2VVaW50LAotICAgICJmbG9h
dCI6IG1ha2VGbG9hdAotfTsKLQotbGV0IG1zbFRlc3RzID0ge307Ci0KLW1zbFRlc3RzLmxpdGVy
YWxzID0gKCkgPT4gewotICAgIGNoZWNrQm9vbHMoIlJldHVybiBhIGxpdGVyYWwgb2YgdHlwZSBi
b29sLiIsICJyZXR1cm4gdHJ1ZTsiKTsKLSAgICBjaGVja0Zsb2F0NHMoInJldHVybiBmbG9hdDQo
MCwgMSwgMiwgMyk7Iik7Ci0gICAgY2hlY2tOdW1lcmljU2NhbGFycygicmV0dXJuIDQyOyIsIFtd
LCA0Mik7Ci19OwotCi1tc2xUZXN0cy5zaW5nbGVBcmd1bWVudCA9ICgpID0+IHsKLSAgICBjaGVj
a0Jvb2xzKCJVcGxvYWQgYW5kIHJldHVybiBhIGJvb2wgdmFsdWUuIiwgInJldHVybiBpbjA7Iiwg
W3RydWVdKTsKLSAgICBjaGVja0Zsb2F0NHMoInJldHVybiBpbjAud3p5eDsiLCBbWzMsIDIsIDEs
IDBdXSk7Ci0gICAgY2hlY2tOdW1lcmljU2NhbGFycygicmV0dXJuIGluMDsiLCBbNDJdLCA0Mik7
Ci19OwotCi1tc2xUZXN0cy5tYW55QXJndW1lbnRzID0gKCkgPT4gewotICAgIGNoZWNrQm9vbHMo
IlVwbG9hZCBtYW55IGJvb2wgdmFsdWVzIGFuZCByZXR1cm4gYSBjYWxjdWxhdGVkIHJlc3VsdC4i
LAotICAgICAgICAicmV0dXJuIGluMCAmIGluMSAmIGluMiAmIGluMyAmIGluNCAmIGluNSAmIGlu
NiAmIGluNzsiLCAgCi0gICAgICAgIFt0cnVlLCB0cnVlLCB0cnVlLCB0cnVlLCB0cnVlLCB0cnVl
LCB0cnVlLCB0cnVlXSk7Ci0KLSAgICBjb25zdCBib2R5ID0gYHJldHVybiBpbjAgKyBpbjEgKyBp
bjIgKyBpbjMgKyBpbjQgKyBpbjUgKyBpbjYgKyBpbjc7YDsKLSAgICBsZXQgYXJncyA9IFtdOwot
ICAgIGZvciAobGV0IGkgPSAwOyBpIDwgODsgKytpKQotICAgICAgICBhcmdzLnB1c2goWzAsIDEs
IDIsIDNdKTsKLSAgICBjaGVja0Zsb2F0NHMoYm9keSwgYXJncywgWzAsIDgsIDE2LCAyNF0pOwot
ICAgIGNoZWNrTnVtZXJpY1NjYWxhcnMoYm9keSwgWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDddLCAy
OCk7Ci19OwotCi1tc2xUZXN0cy5idWZmZXJzV2l0aE9uZVZhbHVlID0gKCkgPT4gewotICAgIGNv
bnN0IGJvZHkgPSBgcmV0dXJuIGluMFswXTtgCi0gICAgY2hlY2tCb29scygiQWNjZXNzIGFuZCBy
ZXR1cm4gYSBzaW5nbGUgYm9vbCB0aHJvdWdoIGEgYm9vbCouIiwgYm9keSwgW1t0cnVlXV0pOwot
ICAgIGNoZWNrRmxvYXQ0cyhib2R5LCBbW1swLCAxLCAyLCAzXV1dKTsKLSAgICBjaGVja051bWVy
aWNTY2FsYXJzKGJvZHksIFtbNDJdXSwgNDIpOwotfTsKLQotbXNsVGVzdHMubXVsdGlwbGVCdWZm
ZXJBcmd1bWVudHMgPSAoKSA9PiB7Ci0gICAgY2hlY2tCb29scygiQWNjZXNzIG11bHRpcGxlIGJv
b2xzIHRocm91Z2ggdmFyaW91cyBidWZmZXJzIGFuZCByZXR1cm4gYSBib29sLiIsIAotICAgICAg
ICAicmV0dXJuIGluMFswXSAmIGluMFsxXSAmIGluMFsyXSAmIGluMSAmIGluMlswXTsiLCAKLSAg
ICAgICAgW1t0cnVlLCB0cnVlLCB0cnVlXSwgdHJ1ZSwgW3RydWVdXSk7Ci0gICAgCi0gICAgY29u
c3QgYm9keSA9IGByZXR1cm4gaW4wWzBdICsgaW4wWzFdICsgaW4wWzJdICsgaW4xICsgaW4yWzBd
O2A7Ci0gICAgY29uc3QgdmVjdG9yID0gWzAsIDEsIDIsIDNdOwotICAgIGNoZWNrRmxvYXQ0cyhi
b2R5LCBbW3ZlY3RvciwgdmVjdG9yLCB2ZWN0b3JdLCB2ZWN0b3IsIFt2ZWN0b3JdXSwgWzAsIDUs
IDEwLCAxNV0pOwotICAgIGNoZWNrTnVtZXJpY1NjYWxhcnMoYm9keSwgW1swLCAxLCAyXSwgMywg
WzRdXSwgMTApOwotfTsKLQotbXNsVGVzdHMubXVsdGlwbGVBcmd1bWVudFR5cGVzID0gKCkgPT4g
ewotICAgIGNvbnN0IHNyYyA9IGBmbG9hdCB0ZXN0KGludCBpLCB1Y2hhciBjLCBkZXZpY2UgdWlu
dCogdSwgYm9vbCBiLCBkZXZpY2UgYm9vbCogYnMsIGZsb2F0NCBmNCwgZGV2aWNlIGZsb2F0KiBm
cykKLSAgICB7Ci0gICAgICAgIGlmIChiICYmIGJzWzBdICYmIGJzWzFdKQotICAgICAgICAgICAg
cmV0dXJuIGkgKyBjICsgdVswXSArIGY0LnggKyBmNC55ICsgZjQueiArIGY0LncgKyBmc1swXSAr
IGZzWzFdOwotICAgICAgICAKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfWA7Ci0gICAgY29uc3Qg
aSA9IG1ha2VJbnQoMSk7Ci0gICAgY29uc3QgYyA9IG1ha2VVY2hhcigyKTsKLSAgICBjb25zdCB1
ID0gbWFrZVVpbnQoWzNdKTsKLSAgICBjb25zdCBiID0gbWFrZUJvb2wodHJ1ZSk7Ci0gICAgY29u
c3QgYnMgPSBtYWtlQm9vbChbdHJ1ZSwgdHJ1ZV0pOwotICAgIGNvbnN0IGY0ID0gbWFrZUZsb2F0
NChbNCwgNSwgNiwgN10pOwotICAgIGNvbnN0IGZzID0gbWFrZUZsb2F0KFs4LCA5XSk7Ci0gICAg
d2ViR1BVUHJvbWlzZVRlc3QoKCkgPT4gewotICAgICAgICByZXR1cm4gY2FsbEZsb2F0RnVuY3Rp
b24oc3JjLCAidGVzdCIsIFtpLCBjLCB1LCBiLCBicywgZjQsIGZzXSkudGhlbihyZXN1bHQgPT4g
ewotICAgICAgICAgICAgYXNzZXJ0X2FwcHJveF9lcXVhbHMocmVzdWx0LCA0NSwgZXBzaWxvbiwg
IlRlc3QgcmV0dXJuZWQgZXhwZWN0ZWQgdmFsdWUuIik7Ci0gICAgICAgIH0pOwotICAgIH0sICJV
cGxvYWQgYW5kIGNhbGN1bGF0ZSBhIHJlc3VsdCBmcm9tIHZhcmllZCBhcmd1bWVudCB0eXBlcy4i
KTsKLX07Ci0KLW1zbFRlc3RzLmJ1ZmZlclN0b3JlcyA9ICgpID0+IHsKLSAgICBsZXQgc3JjID0g
YHZvaWQgdGVzdChkZXZpY2UgZmxvYXQ0KiBvdXQpIHsKLSAgICAgICAgKm91dCA9IGZsb2F0NCgw
LCAxLCAyLCAzKTsKLSAgICB9YDsKLSAgICBjb25zdCBmbG9hdDRPdXQgPSBtYWtlRmxvYXQ0KFtb
MCwgMCwgMCwgMF1dKTsKLSAgICBjYWxsVm9pZEZ1bmN0aW9uKHNyYywgInRlc3QiLCBmbG9hdDRP
dXQpOwotCi0gICAgd2ViR1BVUHJvbWlzZVRlc3QoKCkgPT4gewotICAgICAgICByZXR1cm4gZmxv
YXQ0T3V0LmdldEFycmF5QnVmZmVyKCkudGhlbihhcnJheUJ1ZmZlciA9PiB7Ci0gICAgICAgICAg
ICBjb25zdCByZXN1bHQgPSBuZXcgRmxvYXQzMkFycmF5KGFycmF5QnVmZmVyKTsKLSAgICAgICAg
ICAgIGZvciAobGV0IGk7IGkgPCA0OyArK2kpIHsKLSAgICAgICAgICAgICAgICBhc3NlcnRfYXBw
cm94X2VxdWFscyhyZXN1bHRbaV0sIGksICJUZXN0IHN0b3JlZCBleHBlY3RlZCB2YWx1ZXMuIik7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0pOwotICAgIH0sICJTdG9yZSBpbnRvIGEgZmxvYXQ0
Ki4iKTsKLQotICAgIHNyYyA9IGB2b2lkIHRlc3QoZGV2aWNlIHVjaGFyKiBpbiwgZGV2aWNlIHVj
aGFyKiBvdXQpIHsKLSAgICAgICAgZm9yICh1aW50IGkgPSAwOyBpIDwgNTsgKytpKQotICAgICAg
ICAgICAgb3V0W2ldID0gaW5baV07Ci0gICAgfWA7Ci0gICAgY29uc3QgYXJyYXkgPSBbMCwgMSwg
MiwgMywgNF07Ci0gICAgY29uc3QgaW5wdXQgPSBtYWtlVWNoYXIoYXJyYXkpOwotICAgIGNvbnN0
IG91dHB1dCA9IG1ha2VVY2hhcihbMCwgMCwgMCwgMCwgMF0pOwotICAgIGNhbGxWb2lkRnVuY3Rp
b24oc3JjLCAidGVzdCIsIFtpbnB1dCwgb3V0cHV0XSk7Ci0KLSAgICB3ZWJHUFVQcm9taXNlVGVz
dCgoKSA9PiB7Ci0gICAgICAgIHJldHVybiBvdXRwdXQuZ2V0QXJyYXlCdWZmZXIoKS50aGVuKGFy
cmF5QnVmZmVyID0+IHsKLSAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBVaW50OEFycmF5
KGFycmF5QnVmZmVyKTsKLSAgICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoYXJyYXksIHJl
c3VsdCwgIlRlc3Qgc3RvcmVkIGV4cGVjdGVkIHZhbHVlcy4iKTsKLSAgICAgICAgfSk7Ci0gICAg
fSwgIlVwbG9hZCBhIHVjaGFyKiBhbmQgc3RvcmUgaW50byBhIHVjaGFyKi4iKTsKLX07Ci0KLXdp
bmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewotICAgIGhhcm5lc3MuaXNXSExT
TCA9IGZhbHNlOwotICAgIGZvciAoY29uc3QgbmFtZSBpbiBtc2xUZXN0cykgewotICAgICAgICBt
c2xUZXN0c1tuYW1lXSgpOwotICAgIH0KLX0pOwotCi0vKiBIZWxwZXIgZnVuY3Rpb25zICovCi0K
LWNvbnN0IGNoZWNrTnVtZXJpY1NjYWxhcnMgPSAoYm9keSwgYXJnVmFsdWVzLCBleHBlY3RlZCkg
PT4gewotICAgIGxldCBmdW5jdGlvbnMgPSBbXTsKLSAgICBsZXQgc3JjID0gIiI7Ci0gICAgZm9y
IChsZXQgdHlwZSBvZiBudW1lcmljU2NhbGFyVHlwZXMpIHsKLSAgICAgICAgY29uc3QgbmFtZSA9
IGAke3R5cGV9VGVzdGA7Ci0KLSAgICAgICAgbGV0IGlucHV0QXJncyA9IFtdOwotICAgICAgICBs
ZXQgdmFsdWVzID0gW107Ci0gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJnVmFsdWVzLmxl
bmd0aDsgKytpKSB7Ci0gICAgICAgICAgICBjb25zdCBpc1BvaW50ZXIgPSBBcnJheS5pc0FycmF5
KGFyZ1ZhbHVlc1tpXSk7Ci0gICAgICAgICAgICBpbnB1dEFyZ3MucHVzaChgJHtpc1BvaW50ZXIg
PyAiZGV2aWNlICIgOiAiIn0ke3R5cGV9JHtpc1BvaW50ZXIgPyAiKiIgOiAiIn0gaW4ke2l9YCk7
Ci0gICAgICAgICAgICB2YWx1ZXMucHVzaChzY2FsYXJBcmdNYWtlcnNbdHlwZV0oYXJnVmFsdWVz
W2ldKSk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHNyYyArPSBgJHt0eXBlfSAke25h
bWV9KCR7aW5wdXRBcmdzLmpvaW4oIiwgIil9KSB7ICR7Ym9keX0gfQotICAgICAgICBgOwotICAg
ICAgICBmdW5jdGlvbnMucHVzaCh7IHR5cGU6IHR5cGUsIG5hbWU6IG5hbWUsIGFyZ3M6IHZhbHVl
cywgZXhwZWN0ZWQ6IGV4cGVjdGVkIH0pOwotICAgIH0KLQotICAgIGZvciAoY29uc3QgZiBvZiBm
dW5jdGlvbnMpIHsKLSAgICAgICAgY29uc3QgY2FsbEZ1bmMgPSBudW1lcmljU2NhbGFyRnVuY3Nb
Zi50eXBlXTsKLSAgICAgICAgd2ViR1BVUHJvbWlzZVRlc3QoYXN5bmMgKCkgPT4gewotICAgICAg
ICAgICAgcmV0dXJuIGNhbGxGdW5jKHNyYywgZi5uYW1lLCBmLmFyZ3MpLnRoZW4ocmVzdWx0ID0+
IHsKLSAgICAgICAgICAgICAgICBhc3NlcnRfYXBwcm94X2VxdWFscyhyZXN1bHQsIGYuZXhwZWN0
ZWQsIGVwc2lsb24sICJUZXN0IHJldHVybmVkIGV4cGVjdGVkIHZhbHVlLiIpOwotICAgICAgICAg
ICAgfSk7Ci0gICAgICAgIH0sIGBSZXR1cm4gYW4gZXhwZWN0ZWQgJHtmLnR5cGV9IHZhbHVlLmAp
OwotICAgIH0KLX07Ci0KLWNvbnN0IGNoZWNrQm9vbHMgPSAobXNnID0gIlJldHVybiBhbiBleHBl
Y3RlZCBib29sIHZhbHVlLiIsIGJvZHksIGFyZ1ZhbHVlcyA9IFtdLCBleHBlY3RlZCA9IHRydWUp
ID0+IHsKLSAgICBsZXQgc3JjID0gIiI7Ci0gICAgbGV0IGlucHV0QXJncyA9IFtdOwotICAgIGxl
dCB2YWx1ZXMgPSBbXTsKLSAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFyZ1ZhbHVlcy5sZW5ndGg7
ICsraSkgewotICAgICAgICBjb25zdCBpc1BvaW50ZXIgPSBBcnJheS5pc0FycmF5KGFyZ1ZhbHVl
c1tpXSk7Ci0gICAgICAgIGlucHV0QXJncy5wdXNoKGAke2lzUG9pbnRlciA/ICJkZXZpY2UgIiA6
ICIifWJvb2wke2lzUG9pbnRlciA/ICIqIiA6ICIifSBpbiR7aX1gKTsKLSAgICAgICAgdmFsdWVz
LnB1c2gobWFrZUJvb2woYXJnVmFsdWVzW2ldKSk7Ci0gICAgfQotCi0gICAgc3JjICs9IGBib29s
IGJvb2xUZXN0KCR7aW5wdXRBcmdzLmpvaW4oIiwgIil9KSB7ICR7Ym9keX0gfQotICAgIGA7Ci0K
LSAgICB3ZWJHUFVQcm9taXNlVGVzdChhc3luYyAoKSA9PiB7Ci0gICAgICAgIHJldHVybiBjYWxs
Qm9vbEZ1bmN0aW9uKHNyYywgImJvb2xUZXN0IiwgdmFsdWVzKS50aGVuKHJlc3VsdCA9PiB7Ci0g
ICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgZXhwZWN0ZWQsICJUZXN0IHJldHVybmVk
IGV4cGVjdGVkIHZhbHVlLiIpOwotICAgICAgICB9KTsKLSAgICB9LCBtc2cpOwotfTsKLQotY29u
c3QgY2hlY2tGbG9hdDRzID0gKGJvZHksIGFyZ1ZhbHVlcyA9IFtdLCBleHBlY3RlZCA9IFswLCAx
LCAyLCAzXSkgPT4gewotICAgIGxldCBzcmMgPSAiIjsKLSAgICBsZXQgaW5wdXRBcmdzID0gW107
Ci0gICAgbGV0IHZhbHVlcyA9IFtdOwotCi0gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmdWYWx1
ZXMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgLy8gU3VwcG9ydCBhcnJheXMgb2YgZmxvYXQ0LCBp
bmNsdWRpbmcgb25lIHdpdGggYSBzaW5nbGUgZmxvYXQ0LgotICAgICAgICBjb25zdCB0b3RhbExl
bmd0aCA9IGFyZ1ZhbHVlc1tpXS5mbGF0KCkubGVuZ3RoOwotICAgICAgICBjb25zdCBpc1BvaW50
ZXIgPSBhcmdWYWx1ZXNbaV0ubGVuZ3RoID09PSAxIHx8IHRvdGFsTGVuZ3RoID4gNDsKLSAgICAg
ICAgaW5wdXRBcmdzLnB1c2goYCR7aXNQb2ludGVyID8gImRldmljZSAiIDogIiJ9ZmxvYXQ0JHtp
c1BvaW50ZXIgPyAiKiIgOiAiIn0gaW4ke2l9YCk7Ci0gICAgICAgIHZhbHVlcy5wdXNoKG1ha2VG
bG9hdDQoYXJnVmFsdWVzW2ldKSk7Ci0gICAgfQotCi0gICAgc3JjICs9IGBmbG9hdDQgZmxvYXQ0
VGVzdCgke2lucHV0QXJncy5qb2luKCIsICIpfSkgeyAke2JvZHl9IH0KLSAgICBgOwotCi0gICAg
d2ViR1BVUHJvbWlzZVRlc3QoYXN5bmMgKCkgPT4gewotICAgICAgICByZXR1cm4gY2FsbEZsb2F0
NEZ1bmN0aW9uKHNyYywgImZsb2F0NFRlc3QiLCB2YWx1ZXMpLnRoZW4ocmVzdWx0ID0+IHsKLSAg
ICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNDsgKytpKQotICAgICAgICAgICAgICAgIGFz
c2VydF9hcHByb3hfZXF1YWxzKHJlc3VsdFtpXSwgZXhwZWN0ZWRbaV0sIGVwc2lsb24sICJUZXN0
IHJldHVybmVkIGV4cGVjdGVkIHZhbHVlLiIpOwotICAgICAgICB9KTsKLSAgICB9LCAiUmV0dXJu
IGFuIGV4cGVjdGVkIGZsb2F0NCB2YWx1ZS4iKTsKLX0KLTwvc2NyaXB0PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21tYW5kLWVuY29kaW5nLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLWNvbW1hbmQtZW5jb2RpbmcuaHRtbAppbmRleCAx
MzBiZmQ0OTU1YTUxY2ViYWU2ZmJjZTRiMzJlZGQxMDllZTc4OTJkLi40OTQ4YjZlNDMyNTYzZjI4
NTBlMDFjOWU4N2M0OTNhOThkNzIyZDZjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
cmVuZGVyLWNvbW1hbmQtZW5jb2RpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvcmVu
ZGVyLWNvbW1hbmQtZW5jb2RpbmcuaHRtbApAQCAtNywyMyArNywyMyBAQAogPHNjcmlwdCBzcmM9
ImpzL3dlYmdwdS1mdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIGNvbnN0IHNoYWRl
cnMgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1l
dGFsOwotCiBzdHJ1Y3QgVmVydGV4CiB7Ci0gICAgZmxvYXQ0IHBvc2l0aW9uIFtbcG9zaXRpb25d
XTsKKyAgICBmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsKKyAgICBmbG9hdDQgYXR0cmli
dXRlUG9zaXRpb24gOiBhdHRyaWJ1dGUoMCk7CiB9OwogCiB2ZXJ0ZXggVmVydGV4IHZlcnRleF9t
YWluKCkKIHsKLSAgICByZXR1cm4gVmVydGV4IHsgZmxvYXQ0KDAsIDAsIDAsIDEpIH07CisgICAg
VmVydGV4IHJlc3VsdDsKKyAgICByZXN1bHQucG9zaXRpb24gPSBmbG9hdDQoMCwgMCwgMCwgMSk7
CisgICAgcmVzdWx0LmF0dHJpYnV0ZVBvc2l0aW9uID0gcmVzdWx0LnBvc2l0aW9uOworICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKFZlcnRleCB2
ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCitmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihmbG9h
dDQgcG9zaXRpb24gOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAKIHsKLSAgICByZXR1cm4g
dmVydGV4SW4ucG9zaXRpb247CisgICAgcmV0dXJuIHBvc2l0aW9uOwogfQogYAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLXBpcGVsaW5lLWVycm9ycy5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBlbGluZS1lcnJvcnMuaHRtbAppbmRleCBhNDkzZTEx
ODcwYzExZTBmZGUzZjAzMTI0OTNlZDNmOGExYTBiZTcyLi4wYjliYzczZGM2ZjQ3MmJmYWE0OThj
ZGI2NDBmNTM5ODBmMjU1YmU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVy
LXBpcGVsaW5lLWVycm9ycy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXItcGlw
ZWxpbmUtZXJyb3JzLmh0bWwKQEAgLTM5LDcgKzM5LDcgQEAgbGV0IGdvb2RSZW5kZXJQaXBlbGlu
ZURlc2NyaXB0b3IsIGdvb2RNb2R1bGU7CiBsZXQgdGVzdHMgPSB7fTsKIAogdGVzdHNbIkdQVVJl
bmRlclBpcGVsaW5lIGNyZWF0aW9uIHN1Y2NlZWRzIHdpdGggbm8gZXJyb3JzLiJdID0gYXN5bmMg
ZGV2aWNlID0+IHsKLSAgICBnb29kTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
IGNvZGU6IHdobHNsU291cmNlLCBpc1dITFNMOiB0cnVlIH0pOworICAgIGdvb2RNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogd2hsc2xTb3VyY2UgfSk7CiAgICAgCiAg
ICAgZ29vZFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciA9IHsKICAgICAgICAgdmVydGV4U3RhZ2U6
IHsgbW9kdWxlOiBnb29kTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4TWFpbiIgfSwKQEAgLTcz
LDcgKzczLDcgQEAgdGVzdHNbIkdQVVJlbmRlclBpcGVsaW5lIGNyZWF0aW9uIHN1Y2NlZWRzIHdp
dGggbm8gZXJyb3JzLiJdID0gYXN5bmMgZGV2aWNlID0+IHsKIAogdGVzdHNbIkludmFsaWQgR1BV
U2hhZGVyTW9kdWxlIGZvciB2ZXJ0ZXggc3RhZ2Ugc2hvdWxkIGZhaWwuIl0gPSBhc3luYyBkZXZp
Y2UgPT4gewogICAgIGxldCBiYWREZXNjcmlwdG9yID0gT2JqZWN0LmFzc2lnbih7fSwgZ29vZFJl
bmRlclBpcGVsaW5lRGVzY3JpcHRvcik7Ci0gICAgbGV0IGJhZFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiwgaXNXSExTTDogdHJ1ZSB9KTsKKyAg
ICBsZXQgYmFkU2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6
ICJGb28iIH0pOwogICAgIGJhZERlc2NyaXB0b3IudmVydGV4U3RhZ2UgPSB7IG1vZHVsZTogYmFk
U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4TWFpbiIgfTsKIAogICAgIHJldHVybiBj
cmVhdGVQaXBlbGluZUFuZEVycm9yKGRldmljZSwgYmFkRGVzY3JpcHRvcik7CkBAIC04MSw3ICs4
MSw3IEBAIHRlc3RzWyJJbnZhbGlkIEdQVVNoYWRlck1vZHVsZSBmb3IgdmVydGV4IHN0YWdlIHNo
b3VsZCBmYWlsLiJdID0gYXN5bmMgZGV2aWNlID0+CiAKIHRlc3RzWyJJbnZhbGlkIEdQVVNoYWRl
ck1vZHVsZSBmb3IgZnJhZ21lbnQgc3RhZ2Ugc2hvdWxkIGZhaWwuIl0gPSBhc3luYyBkZXZpY2Ug
PT4gewogICAgIGxldCBiYWREZXNjcmlwdG9yID0gT2JqZWN0LmFzc2lnbih7fSwgZ29vZFJlbmRl
clBpcGVsaW5lRGVzY3JpcHRvcik7Ci0gICAgbGV0IGJhZFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiwgaXNXSExTTDogdHJ1ZSAgfSk7CisgICAg
bGV0IGJhZFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiAi
Rm9vIiAgfSk7CiAgICAgYmFkRGVzY3JpcHRvci5mcmFnbWVudFN0YWdlID0geyBtb2R1bGU6IGJh
ZFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleE1haW4iIH07CiAKICAgICByZXR1cm4g
Y3JlYXRlUGlwZWxpbmVBbmRFcnJvcihkZXZpY2UsIGJhZERlc2NyaXB0b3IpOwpAQCAtODksNyAr
ODksNyBAQCB0ZXN0c1siSW52YWxpZCBHUFVTaGFkZXJNb2R1bGUgZm9yIGZyYWdtZW50IHN0YWdl
IHNob3VsZCBmYWlsLiJdID0gYXN5bmMgZGV2aWNlCiAKIHRlc3RzWyJFbXB0eSBlbnRyeSBwb2lu
dCBmb3IgdmVydGV4IHN0YWdlIHNob3VsZCBmYWlsLiJdID0gYXN5bmMgZGV2aWNlID0+IHsKICAg
ICBsZXQgYmFkRGVzY3JpcHRvciA9IE9iamVjdC5hc3NpZ24oe30sIGdvb2RSZW5kZXJQaXBlbGlu
ZURlc2NyaXB0b3IpOwotICAgIGxldCBiYWRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHsgY29kZTogIkZvbyIsIGlzV0hMU0w6IHRydWUgIH0pOworICAgIGxldCBiYWRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogIkZvbyIgIH0p
OwogICAgIGJhZERlc2NyaXB0b3IudmVydGV4U3RhZ2UgPSB7IG1vZHVsZTogYmFkU2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAiIiB9OwogCiAgICAgcmV0dXJuIGNyZWF0ZVBpcGVsaW5lQW5kRXJy
b3IoZGV2aWNlLCBiYWREZXNjcmlwdG9yKTsKQEAgLTE4Nyw0ICsxODcsNCBAQCBjb25zdCBjcmVh
dGVQaXBlbGluZUFuZEVycm9yID0gKGRldmljZSwgZGVzY3JpcHRvcikgPT4gewogfTsKIAogPC9z
Y3JpcHQ+Ci08L2JvZHk+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorPC9ib2R5PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBlbGluZXMuaHRtbCBiL0xheW91
dFRlc3RzL3dlYmdwdS9yZW5kZXItcGlwZWxpbmVzLmh0bWwKaW5kZXggZTY2NjViYjlkYWExZWIz
ZDFmZmE0OWY1ZGVjZTc5NDc4NzcwOGM3NS4uNmJiOGQyNmVjMjJhM2VmOTYwYTE3MjgzYjMyNjk1
NDVhMjZkZjk2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBlbGlu
ZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLXBpcGVsaW5lcy5odG1sCkBA
IC01LDM1ICs1LDI3IEBACiA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBjb25zdCBzaGFkZXJDb2RlID0gYAotI2luY2x1
ZGUgPG1ldGFsX3N0ZGxpYj4KLSAgICAKLXVzaW5nIG5hbWVzcGFjZSBtZXRhbDsKLQotc3RydWN0
IFZlcnRleAotewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0aW9uXV07Ci19OwotCi12ZXJ0
ZXggVmVydGV4IHZlcnRleF9tYWluKHVpbnQgdmlkIFtbdmVydGV4X2lkXV0pCit2ZXJ0ZXggZmxv
YXQ0IHZlcnRleF9tYWluKHVpbnQgdmlkIFtbdmVydGV4X2lkXV0pIDogU1ZfUG9zaXRpb24KIHsK
LSAgICBWZXJ0ZXggdjsKKyAgICBmbG9hdDQgdjsKICAgICBzd2l0Y2ggKHZpZCkgewogICAgIGNh
c2UgMDoKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgMSwgMCwgMSk7CisgICAgICAg
IHYgPSBmbG9hdDQoLTEsIDEsIDAsIDEpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIDE6Ci0g
ICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoLTEsIC0xLCAwLCAxKTsKKyAgICAgICAgdiA9IGZs
b2F0NCgtMSwgLTEsIDAsIDEpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIDI6Ci0gICAgICAg
IHYucG9zaXRpb24gPSBmbG9hdDQoMSwgMSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoMSwg
MSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6Ci0gICAgICAgIHYucG9zaXRp
b24gPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICB2ID0gZmxvYXQ0KDEsIC0xLCAwLCAx
KTsKKyAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIHJldHVybiB2OwogfQogCi1mcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXggdmVydGV4SW4gW1tzdGFnZV9pbl1dKQorZnJhZ21l
bnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNWX1RhcmdldCAwCiB7CiAgICAgcmV0dXJuIGZs
b2F0NCgwLjAsIDEuMCwgMC4wLCAxLjApOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3NoYWRlci1tb2R1bGVzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvc2hhZGVyLW1vZHVs
ZXMuaHRtbAppbmRleCA5OTg1NTlmNWFlMGNiMGI1ZTYxM2FmMWM3ZWM1YjFmZjlhNWMzMmU2Li40
MjYyZTExY2I2NjFmMmU0ZDc3MjQxMDIwZTgyNWRjMmNmNjRmMGIyIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvc2hhZGVyLW1vZHVsZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvc2hhZGVyLW1vZHVsZXMuaHRtbApAQCAtNywyMyArNywyMyBAQAogPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogY29u
c3Qgc2hhZGVycyA9IGAKLSNpbmNsdWRlIDxtZXRhbF9zdGRsaWI+Ci0gICAgCi11c2luZyBuYW1l
c3BhY2UgbWV0YWw7Ci0KIHN0cnVjdCBWZXJ0ZXgKIHsKLSAgICBmbG9hdDQgcG9zaXRpb24gW1tw
b3NpdGlvbl1dOworICAgIGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uOworICAgIGZsb2F0
NCBhdHRyaWJ1dGVQb3NpdGlvbiA6IGF0dHJpYnV0ZSgwKTsKIH07CiAKIHZlcnRleCBWZXJ0ZXgg
dmVydGV4X21haW4oKQogewotICAgIHJldHVybiBWZXJ0ZXggeyBmbG9hdDQoMCwgMCwgMCwgMSkg
fTsKKyAgICBWZXJ0ZXggcmVzdWx0OworICAgIHJlc3VsdC5wb3NpdGlvbiA9IGZsb2F0NCgwLCAw
LCAwLCAxKTsKKyAgICByZXN1bHQuYXR0cmlidXRlUG9zaXRpb24gPSByZXN1bHQucG9zaXRpb247
CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4o
VmVydGV4IHZlcnRleEluIFtbc3RhZ2VfaW5dXSkKK2ZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9t
YWluKGZsb2F0NCBwb3NpdGlvbiA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMAogewotICAg
IHJldHVybiB2ZXJ0ZXhJbi5wb3NpdGlvbjsKKyAgICByZXR1cm4gcG9zaXRpb247CiB9CiBgCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9zaW1wbGUtdHJpYW5nbGUtc3RyaXAuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS9zaW1wbGUtdHJpYW5nbGUtc3RyaXAuaHRtbAppbmRleCBj
OGQxZTNiZmU1ZGQwYjc4MDkxY2FkMjdjNDM4OWI1OWRmMTRlYzA3Li4yNzA0ZDRiZDIxOTY1MGQz
NDEyNDk3ODdlYzZhN2E0YTMxNDU2MDM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
c2ltcGxlLXRyaWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3NpbXBs
ZS10cmlhbmdsZS1zdHJpcC5odG1sCkBAIC0xMSwzNSArMTEsMjcgQEAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQogICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogCiBjb25zdCBzaGFkZXJD
b2RlID0gYAotI2luY2x1ZGUgPG1ldGFsX3N0ZGxpYj4KLSAgICAKLXVzaW5nIG5hbWVzcGFjZSBt
ZXRhbDsKLQotc3RydWN0IFZlcnRleAotewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0aW9u
XV07Ci19OwotCi12ZXJ0ZXggVmVydGV4IHZlcnRleF9tYWluKHVpbnQgdmlkIFtbdmVydGV4X2lk
XV0pCit2ZXJ0ZXggZmxvYXQ0IHZlcnRleF9tYWluKHVpbnQgdmlkIDogU1ZfVmVydGV4SUQpIDog
U1ZfUG9zaXRpb24KIHsKLSAgICBWZXJ0ZXggdjsKKyAgICBmbG9hdDQgdjsKICAgICBzd2l0Y2gg
KHZpZCkgewogICAgIGNhc2UgMDoKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgMSwg
MCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoLTEsIDEsIDAsIDEpOwogICAgICAgICBicmVhazsK
ICAgICBjYXNlIDE6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoLTEsIC0xLCAwLCAxKTsK
KyAgICAgICAgdiA9IGZsb2F0NCgtMSwgLTEsIDAsIDEpOwogICAgICAgICBicmVhazsKICAgICBj
YXNlIDI6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwgMSwgMCwgMSk7CisgICAgICAg
IHYgPSBmbG9hdDQoMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6Ci0g
ICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICB2ID0gZmxv
YXQ0KDEsIC0xLCAwLCAxKTsKKyAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIHJldHVybiB2Owog
fQogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXggdmVydGV4SW4gW1tzdGFn
ZV9pbl1dKQorZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNWX1RhcmdldCAwCiB7
CiAgICAgcmV0dXJuIGZsb2F0NCgwLjAsIDEuMCwgMC4wLCAxLjApOwogfQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3RleHR1cmUtdHJpYW5nbGUtc3RyaXAuaHRtbCBiL0xheW91dFRl
c3RzL3dlYmdwdS90ZXh0dXJlLXRyaWFuZ2xlLXN0cmlwLmh0bWwKaW5kZXggY2FlMDRiNWI0MTBl
ZjdlZDkzYTFkNzU5MjJjNzE2NzdmM2JiNGQ2Mi4uYzY4YWJjMWFkMzM4ZGZhMTNmOWE5MjE2N2Zk
MjQ4ZmM5NzdlMTQ2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3RleHR1cmUtdHJp
YW5nbGUtc3RyaXAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvdGV4dHVyZS10cmlhbmds
ZS1zdHJpcC5odG1sCkBAIC0xOSwzOSArMTksMjggQEAgY29uc3QgdGV4dHVyZUJpbmRpbmdOdW0g
PSAwOwogY29uc3Qgc2FtcGxlckJpbmRpbmdOdW0gPSAxOwogCiBjb25zdCBzaGFkZXJDb2RlID0g
YAotI2luY2x1ZGUgPG1ldGFsX3N0ZGxpYj4KLSAgICAKLXVzaW5nIG5hbWVzcGFjZSBtZXRhbDsK
LQotc3RydWN0IFZlcnRleEluCi17Ci0gICAgZmxvYXQ0IHBvc2l0aW9uIFtbYXR0cmlidXRlKCR7
cG9zaXRpb25BdHRyaWJ1dGVOdW19KV1dOwotICAgIGZsb2F0MiB0ZXhDb29yZHMgW1thdHRyaWJ1
dGUoJHt0ZXhDb29yZHNBdHRyaWJ1dGVOdW19KV1dOwotfTsKLQogc3RydWN0IFZlcnRleE91dAog
ewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0aW9uXV07Ci0gICAgZmxvYXQyIHRleENvb3Jk
czsKKyAgICBmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsKKyAgICBmbG9hdDIgdGV4Q29v
cmRzIDogYXR0cmlidXRlKDApOwogfTsKIAotdmVydGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihW
ZXJ0ZXhJbiB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCi17Cit2ZXJ0ZXggVmVydGV4T3V0IHZlcnRl
eF9tYWluKGZsb2F0NCBwb3NpdGlvbiA6IGF0dHJpYnV0ZSgke3Bvc2l0aW9uQXR0cmlidXRlTnVt
fSksIGZsb2F0MiB0ZXhDb29yZHMgOiBhdHRyaWJ1dGUoJHt0ZXhDb29yZHNBdHRyaWJ1dGVOdW19
KSkgewogICAgIFZlcnRleE91dCB2T3V0OwotICAgIHZPdXQucG9zaXRpb24gPSB2ZXJ0ZXhJbi5w
b3NpdGlvbjsKLSAgICB2T3V0LnRleENvb3JkcyA9IHZlcnRleEluLnRleENvb3JkczsKKyAgICB2
T3V0LnBvc2l0aW9uID0gcG9zaXRpb247CisgICAgdk91dC50ZXhDb29yZHMgPSB0ZXhDb29yZHM7
CiAgICAgcmV0dXJuIHZPdXQ7CiB9CiAKIHN0cnVjdCBUZXh0dXJlU2FtcGxlcgogewotICAgIHRl
eHR1cmUyZDxmbG9hdD4gdCBbW2lkKCR7dGV4dHVyZUJpbmRpbmdOdW19KV1dOwotICAgIHNhbXBs
ZXIgcyBbW2lkKCR7c2FtcGxlckJpbmRpbmdOdW19KV1dOworICAgIFRleHR1cmUyRDxmbG9hdDQ+
IHQgOiByZWdpc3Rlcih0JHt0ZXh0dXJlQmluZGluZ051bX0sIHNwYWNlJHtiaW5kR3JvdXBJbmRl
eH0pOworICAgIHNhbXBsZXIgcyA6IHJlZ2lzdGVyKHMke3NhbXBsZXJCaW5kaW5nTnVtfSwgc3Bh
Y2Uke2JpbmRHcm91cEluZGV4fSk7CiB9OwogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFp
bihWZXJ0ZXhPdXQgdiBbW3N0YWdlX2luXV0sIGNvbnN0IGRldmljZSBUZXh0dXJlU2FtcGxlciYg
YXJncyBbW2J1ZmZlcigke2JpbmRHcm91cEluZGV4fSldXSkKK2ZyYWdtZW50IGZsb2F0NCBmcmFn
bWVudF9tYWluKGZsb2F0MiB0ZXhDb29yZHMgOiBhdHRyaWJ1dGUoMCksIFRleHR1cmVTYW1wbGVy
IHRleHR1cmVTYW1wbGVyKSA6IFNWX1RhcmdldCAwCiB7Ci0gICAgcmV0dXJuIGFyZ3MudC5zYW1w
bGUoYXJncy5zLCB2LnRleENvb3Jkcyk7CisgICAgcmV0dXJuIFNhbXBsZSh0ZXh0dXJlU2FtcGxl
ci50LCB0ZXh0dXJlU2FtcGxlci5zLCB0ZXhDb29yZHMpOwogfQogYAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJncHUvdmVydGV4LWJ1ZmZlci10cmlhbmdsZS1zdHJpcC5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3ZlcnRleC1idWZmZXItdHJpYW5nbGUtc3RyaXAuaHRtbAppbmRleCBi
ZDMzNWU2MjhjNjc5YTE5MGFkNzk2YmY1MDI5ODllZTUyOWJkNjIyLi4zYmJlODc1NzdlNmIyZTRl
MzVmYzFjYTE3MGEyMTVmYmZmNjhmOGNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
dmVydGV4LWJ1ZmZlci10cmlhbmdsZS1zdHJpcC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdw
dS92ZXJ0ZXgtYnVmZmVyLXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAgLTExLDMzICsxMSwyMyBAQCBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAK
IGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNp
bmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4KLXsKLSAgICBmbG9hdDQgcG9z
aXRpb24gW1thdHRyaWJ1dGUoMCldXTsKLSAgICBmbG9hdCBncmVlbiBbW2F0dHJpYnV0ZSgxKV1d
OwotfTsKLQogc3RydWN0IFZlcnRleE91dAogewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0
aW9uXV07Ci0gICAgZmxvYXQ0IGNvbG9yOworICAgIGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0
aW9uOworICAgIGZsb2F0NCBjb2xvciA6IGF0dHJpYnV0ZSgwKTsKIH07CiAKLXZlcnRleCBWZXJ0
ZXhPdXQgdmVydGV4X21haW4oVmVydGV4SW4gdmVydGV4SW4gW1tzdGFnZV9pbl1dKQordmVydGV4
IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihmbG9hdDQgcG9zaXRpb24gOiBhdHRyaWJ1dGUoMCksIGZs
b2F0IGdyZWVuIDogYXR0cmlidXRlKDEpKQogewogICAgIFZlcnRleE91dCB2T3V0OwotICAgIHZP
dXQucG9zaXRpb24gPSB2ZXJ0ZXhJbi5wb3NpdGlvbjsKLSAgICB2T3V0LmNvbG9yID0gZmxvYXQ0
KDAsIHZlcnRleEluLmdyZWVuLCAwLCAxKTsKKyAgICB2T3V0LnBvc2l0aW9uID0gcG9zaXRpb247
CisgICAgdk91dC5jb2xvciA9IGZsb2F0NCgwLCBncmVlbiwgMCwgMSk7CiAgICAgcmV0dXJuIHZP
dXQ7CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKFZlcnRleE91dCB2IFtbc3Rh
Z2VfaW5dXSkKK2ZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKGZsb2F0NCBjb2xvciA6IGF0
dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMAogewotICAgIHJldHVybiB2LmNvbG9yOworICAgIHJl
dHVybiBjb2xvcjsKIH0KIGAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3ZpZXdw
b3J0LXNjaXNzb3ItcmVjdC10cmlhbmdsZS1zdHJpcC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3ZpZXdwb3J0LXNjaXNzb3ItcmVjdC10cmlhbmdsZS1zdHJpcC5odG1sCmluZGV4IGI5YWRlODdh
NGExYWQxNTRhZWZlZmE4MmM0ZTJiYWQyNjI2MzM2NjQuLjBlNzk0MTQ2MDYxZmQ1NzQ1MzFhMTIw
NjA4ODc5YjQ4OWEwZGJiOTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS92aWV3cG9y
dC1zY2lzc29yLXJlY3QtdHJpYW5nbGUtc3RyaXAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvdmlld3BvcnQtc2Npc3Nvci1yZWN0LXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAgLTExLDM1ICsx
MSwyNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgot
ICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4Ci17Ci0gICAgZmxv
YXQ0IHBvc2l0aW9uIFtbcG9zaXRpb25dXTsKLX07Ci0KLXZlcnRleCBWZXJ0ZXggdmVydGV4X21h
aW4odWludCB2aWQgW1t2ZXJ0ZXhfaWRdXSkKK3ZlcnRleCBmbG9hdDQgdmVydGV4X21haW4odWlu
dCB2aWQgOiBTVl9WZXJ0ZXhJRCkgOiBTVl9Qb3NpdGlvbgogewotICAgIFZlcnRleCB2OworICAg
IGZsb2F0NCB2OwogICAgIHN3aXRjaCAodmlkKSB7CiAgICAgY2FzZSAwOgotICAgICAgICB2LnBv
c2l0aW9uID0gZmxvYXQ0KC0xLCAxLCAwLCAxKTsKKyAgICAgICAgdiA9IGZsb2F0NCgtMSwgMSwg
MCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMToKLSAgICAgICAgdi5wb3NpdGlvbiA9
IGZsb2F0NCgtMSwgLTEsIDAsIDEpOworICAgICAgICB2ID0gZmxvYXQ0KC0xLCAtMSwgMCwgMSk7
CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMjoKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0
NCgxLCAxLCAwLCAxKTsKKyAgICAgICAgdiA9IGZsb2F0NCgxLCAxLCAwLCAxKTsKICAgICAgICAg
YnJlYWs7CiAgICAgZGVmYXVsdDoKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgxLCAtMSwg
MCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICBicmVhazsK
ICAgICB9CiAgICAgcmV0dXJuIHY7CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWlu
KFZlcnRleCB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCitmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRf
bWFpbigpIDogU1ZfVGFyZ2V0IDAKIHsKICAgICByZXR1cm4gZmxvYXQ0KDAuMCwgMS4wLCAwLjAs
IDEuMCk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYXJiaXRyYXJ5
LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25zLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvYXJiaXRyYXJ5LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25zLmh0bWwKaW5kZXggYmM1ZDNk
NWE1NmFkZWRjYjk0Njg3ZmIyNjBlZTgxZGE0YjQxOTFmYi4uYzIzOWZhZTUzNmQyOWIxMzlkZjE3
YWJlZjAyNWM1Yjg4YTU5NzM1MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L2FyYml0cmFyeS12ZXJ0ZXgtYXR0cmlidXRlLWxvY2F0aW9ucy5odG1sCisrKyBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9hcmJpdHJhcnktdmVydGV4LWF0dHJpYnV0ZS1sb2NhdGlvbnMuaHRt
bApAQCAtMjcsNyArMjcsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQg
c2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChk
ZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9
KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxl
OiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0
IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItZnJhZ21lbnQuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9idWZmZXItZnJhZ21lbnQuaHRtbAppbmRleCA0ZjRkNWVhMWZhNGM1ZTQ1ZGE3
M2RmNTE3NTcwZTJmNjYzMGMxZjRmLi5jNjJiMzI1Yzc0OTc0ZjdkMTQ5NjA0YTZlODY5ZTM5NjMy
YzkzMWI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVmZmVyLWZyYWdt
ZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci1mcmFnbWVudC5o
dG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9h
dDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbiwgY29uc3RhbnQgZmxvYXRbXSB0CiBjb25zdCBjYW52
YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci1sZW5ndGguaHRtbCBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9idWZmZXItbGVuZ3RoLmh0bWwKaW5kZXggZDBmZjM2MDk1N2Q2Yjc5
YjQ4M2FhZGZiYzg0ZDQ1NjljNjdjYzUzOS4uOTY4NjZlMmZjMmMyNDUyMzJkYjZiYzZiMzUwZjgz
NjVmYWRkMDRiYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci1s
ZW5ndGguaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVmZmVyLWxlbmd0aC5o
dG1sCkBAIC0xNCw3ICsxNCw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSB1
aW50W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5j
IGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJp
bmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJp
bGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9idWZmZXItdmVydGV4Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvYnVmZmVyLXZlcnRleC5odG1sCmluZGV4IGRiZmMxOTBmZTE0MmE2NzEzNjllYmNiMmZl
N2VkNGFhNWRjMjViZjguLjRhNmFiMWU0NTFiNGU4NGFhNzE1NzM1ODdjMzRjNDVjMzNmMjExNDgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItdmVydGV4Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci12ZXJ0ZXguaHRtbApAQCAtMTks
NyArMTksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9u
IDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
InZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1p
dGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9jaGVja2VyLXNob3VsZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0
ZS12YXJpYWJsZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9jaGVja2VyLXNob3Vs
ZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0ZS12YXJpYWJsZXMuaHRtbAppbmRleCBiMzEz
ZmQ2OWY3YjYwNzc3YzM2MzE1YWRmYzE5MmNmNGZkYTkwZGI1Li42MWIyMmM1ZTZkMDE0MTFkNDkw
OWNkZTAyZjY3NTBmYjUwYjVjYWVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2NoZWNrZXItc2hvdWxkLXNldC10
eXBlLW9mLXJlYWQtbW9kaWZ5LXdyaXRlLXZhcmlhYmxlcy5odG1sCkBAIC0xNiw3ICsxNiw3IEBA
IGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lz
dGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZp
Y2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsK
ICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlw
dG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9y
YWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvY29t
cHV0ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2NvbXB1dGUuaHRtbAppbmRleCAz
Y2FhMGYzOGE0NWU0Y2E1ODFkYWNhNDhhZWNkYWMzZjM1MThiNjUwLi4xZjYzMmU2NmNmNjM3YmEw
NmIzZjU0NmRkNzA3ZTAxYjMxNjdhYjU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvY29tcHV0ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9jb21wdXRl
Lmh0bWwKQEAgLTE0LDcgKzE0LDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNl
IGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFz
eW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0
IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlz
aWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9kZXJlZmVyZW5jZS1wb2ludGVyLXNob3VsZC10eXBlLWNoZWNr
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZGVyZWZlcmVuY2UtcG9pbnRlci1zaG91
bGQtdHlwZS1jaGVjay5odG1sCmluZGV4IDQ0ODIzMDFmNmVhZmUwMDc4NGJhMTc5NWRiYTkxODA1
ZDE5ZjFlZjIuLjlhZGFiZDY4ZDU5ODc5YjJlYTM2NjE2NmYyZmY2MGFkZTg4ZGRlY2UgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXJlZmVyZW5jZS1wb2ludGVyLXNob3Vs
ZC10eXBlLWNoZWNrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RlcmVmZXJl
bmNlLXBvaW50ZXItc2hvdWxkLXR5cGUtY2hlY2suaHRtbApAQCAtMzIsNyArMzIsNyBAQCBmcmFn
bWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDog
U1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNh
bnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9Owog
ICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRy
aWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXZp
Y2UtcHJvcGVyLXR5cGUtY2hlY2tlci5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Rl
dmljZS1wcm9wZXItdHlwZS1jaGVja2VyLmh0bWwKaW5kZXggY2VlOGNmMTkxNzQwZWEyY2QwMjEz
MWE4ZGEzNWU0Mjg3NGI5YjBhYy4uYjUzMTIwNTViMDMzMDY4NjQ1YTU5ZGEwNTQxM2E0N2FmYzA2
MTQwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RldmljZS1wcm9wZXIt
dHlwZS1jaGVja2VyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RldmljZS1w
cm9wZXItdHlwZS1jaGVja2VyLmh0bWwKQEAgLTI0LDcgKzI0LDcgQEAgY29tcHV0ZSB2b2lkIGNv
bXB1dGVTaGFkZXIoZGV2aWNlIFBvaW50W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMg
dGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1
dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFk
ZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6
IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWJyZWFr
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC1icmVhay5odG1s
CmluZGV4IGY0ODEyODA1ODNhMmRhM2JmYjA4MWM3YWMwMTU0ZjQ5MzYyMmExMWUuLjRiYmZiZjUx
NjFhYWVjY2FlM2M5YWI1NjVhMDFmMWIwYzliZjU0ZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWJyZWFrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtYnJlYWsuaHRtbApAQCAtMzYsNyArMzYsNyBAQCBm
cmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkp
IDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3Vy
Y2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhT
dGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5
UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0g
InRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9k
by13aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8t
d2hpbGUtbG9vcC1jb250aW51ZS5odG1sCmluZGV4IDdhZWE1YjBmNmQxOWUyMWJjNWQ3YTk3NzJj
YmQyNjhiZmRkOWI1ZmIuLmQwYTYzOGJjNzUzNTE2OTBiNjgyN2Y4Nzc0OWUwMmI2ZDk3NWQ3NWQg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWNvbnRp
bnVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtY29u
dGludWUuaHRtbApAQCAtMzgsNyArMzgsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2Fu
dmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlv
biBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFk
ZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2Ug
PSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9Owog
ICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLmh0bWwgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC5odG1sCmluZGV4IDIzODFiNDI1OTA3YTli
NmNhYzVlZjgxODRmMTdkNjY2Y2Y5MjIxMzkuLjUxYjhjNTFhNzgxOTQzZjgzZDNlMzk1YWI4YjZl
M2IxNjBjOGU4YjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGls
ZS1sb29wLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3Au
aHRtbApAQCAtMzMsNyArMzMsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxv
YXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFy
dChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3Vy
Y2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9kb250LWNyYXNoLXBhcnNpbmctZW51bS5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvbnQtY3Jhc2gtcGFyc2luZy1lbnVtLmh0bWwKaW5kZXgg
N2NkZWYyYTZkOWM0MmQzNjBmZWMzNTBmMTUzZWMwODc0YjBjNzIxMy4uYzY1YzVhNzhkOWVhNWFk
NTU4YmUxOTk2ZjFhZGVmZDZiYWI1NjJhZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL2RvbnQtY3Jhc2gtcGFyc2luZy1lbnVtLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2RvbnQtY3Jhc2gtcGFyc2luZy1lbnVtLmh0bWwKQEAgLTI0LDcgKzI0LDcgQEAg
ZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0
aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVy
dGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFk
ZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9n
eSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvZG90LWV4cHJlc3Npb25zLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG90LWV4
cHJlc3Npb25zLmh0bWwKaW5kZXggY2QxZTg4MmUxMjJhZjE2ZGU3OTEwNGI3MjA3NWMzOGY3OGIy
Yzk2YS4uYzZiNjAxNDU2MTUwYTY3NDRjNzllOTZlMDJiYzcxNjUxYjFmZTUxNSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvdC1leHByZXNzaW9ucy5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9kb3QtZXhwcmVzc2lvbnMuaHRtbApAQCAtMjcsNyArMjcs
NyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1
dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFk
ZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2
ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNo
YWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9s
b2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9kdXBsaWNhdGUtdHlwZXMtc2hvdWxkLW5vdC1wcm9kdWNlLWR1cGxpY2F0ZS1jdG9ycy5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2R1cGxpY2F0ZS10eXBlcy1zaG91bGQtbm90
LXByb2R1Y2UtZHVwbGljYXRlLWN0b3JzLmh0bWwKaW5kZXggNTg0MjcxMmNhZTIzMzU4NzE1OTdk
YWIzMGFhYjNjMzY3MTJjZjZkNC4uZTcyYTQ3M2YwODc4NThjYmUyNTU0OWI0ODY2NGE1N2E2NWM2
OWJjOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2R1cGxpY2F0ZS10eXBl
cy1zaG91bGQtbm90LXByb2R1Y2UtZHVwbGljYXRlLWN0b3JzLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL2R1cGxpY2F0ZS10eXBlcy1zaG91bGQtbm90LXByb2R1Y2UtZHVwbGlj
YXRlLWN0b3JzLmh0bWwKQEAgLTM1LDcgKzM1LDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFk
ZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQK
IGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNX
SExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAog
ICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGlu
ZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0
aW1lLTIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlh
YmxlLWxpZmV0aW1lLTIuaHRtbAppbmRleCAwNWFkMjJmOWNiMzY4ODNmNjM5ZjQ0ZDQwYzFmNGJi
NTQ5OWEwMTI3Li44NmI4MTBhNDFjMWQxNmViMjQ5ZmVmOTYzN2MwNTZkMWJkMDk5MDk4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1s
aWZldGltZS0yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9w
ZXItdmFyaWFibGUtbGlmZXRpbWUtMi5odG1sCkBAIC01Niw3ICs1Niw3IEBAIGZyYWdtZW50IGZs
b2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJn
ZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7
CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21v
ZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29u
c3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZy
YWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUt
c3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9w
ZXItdmFyaWFibGUtbGlmZXRpbWUtMy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vu
c3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMy5odG1sCmluZGV4IGE1NDhjNzIzZGM5ZjA0
ODYyYTdlODJlODFiNzQ1YjUwOTFlMWJkZmQuLmMyNjI3ZmRmZjM3ZDI1NzA1ZTMxN2IwMDdkYWNh
NmQ1MTliODg3NTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUt
cHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLTMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS0zLmh0bWwKQEAgLTU3LDcgKzU3
LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmli
dXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhT
aGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3Bv
bG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS5odG1sIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUuaHRtbAppbmRleCAx
NmExZWVkOThiM2MzOGIxNjU4MGZkNmU4OGY0NmJkM2M3NjY2MzM0Li5jZjgxMTg2NzVkNjA1MTll
ZThhMjY2ZDJjMzg0MDQyNzg1MGMyNGQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLmh0bWwKQEAg
LTU2LDcgKzU2LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRl
IDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNl
KSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAg
ICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmlt
aXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvaHVnZS1hcnJheS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L2h1Z2UtYXJyYXkuaHRtbAppbmRleCAzNDM4ZmY5M2JiNDI0YTEyNGQ5ODNjMzg4NDdmZGI4YmY1
NGFhMWQ2Li5kOTNhYmQ0ZmFhMWEwMmIyNTg1OWM3NTIzMDVmMTM2NTE4YTkwNDc3IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvaHVnZS1hcnJheS5odG1sCisrKyBiL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9odWdlLWFycmF5Lmh0bWwKQEAgLTUxLDcgKzUxLDcgQEAgY29t
cHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUw
KSwgZmxvYXQzIHRocmVhZElEIDoKIH0KIGA7CiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9y
ID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdl
LWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvanMvdGVz
dC1oYXJuZXNzLmpzIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2pzL3Rlc3QtaGFybmVzcy5q
cwppbmRleCA4ZTYxMDY3OTQxZWViYjMzYjlmYTNmZGJmYTg4MjIyMmU0NDdmNDZjLi5iYmFhNTI3
ZDk3NDczMmY4NjI5MDc1ZDRhY2Q2NDhkYWQ3NGI4MWFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvanMvdGVzdC1oYXJuZXNzLmpzCisrKyBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9qcy90ZXN0LWhhcm5lc3MuanMKQEAgLTI0LDEzICsyNCwxMSBAQCBmdW5jdGlvbiBp
c1NjYWxhcih0eXBlKQogICAgIH0KIH0KIAotZnVuY3Rpb24gY29udmVydFR5cGVUb0FycmF5VHlw
ZShpc1dITFNMLCB0eXBlKQorZnVuY3Rpb24gY29udmVydFR5cGVUb0FycmF5VHlwZSh0eXBlKQog
ewogICAgIHN3aXRjaCh0eXBlKSB7CiAgICAgICAgIGNhc2UgVHlwZXMuQk9PTDoKLSAgICAgICAg
ICAgIGlmIChpc1dITFNMKQotICAgICAgICAgICAgICAgIHJldHVybiBJbnQzMkFycmF5OwotICAg
ICAgICAgICAgcmV0dXJuIFVpbnQ4QXJyYXk7CisgICAgICAgICAgICByZXR1cm4gSW50MzJBcnJh
eTsKICAgICAgICAgY2FzZSBUeXBlcy5JTlQ6CiAgICAgICAgICAgICByZXR1cm4gSW50MzJBcnJh
eTsKICAgICAgICAgY2FzZSBUeXBlcy5VQ0hBUjoKQEAgLTExOSwxNCArMTE3LDE0IEBAIGNsYXNz
IERhdGEgewogICAgICAgICB9CiAKICAgICAgICAgdGhpcy5fdHlwZSA9IHR5cGU7Ci0gICAgICAg
IHRoaXMuX2J5dGVMZW5ndGggPSAoY29udmVydFR5cGVUb0FycmF5VHlwZShoYXJuZXNzLmlzV0hM
U0wsIHR5cGUpKS5CWVRFU19QRVJfRUxFTUVOVCAqIHZhbHVlcy5sZW5ndGg7CisgICAgICAgIHRo
aXMuX2J5dGVMZW5ndGggPSAoY29udmVydFR5cGVUb0FycmF5VHlwZSh0eXBlKSkuQllURVNfUEVS
X0VMRU1FTlQgKiB2YWx1ZXMubGVuZ3RoOwogCiAgICAgICAgIGNvbnN0IFtidWZmZXIsIGFycmF5
QnVmZmVyXSA9IGhhcm5lc3MuZGV2aWNlLmNyZWF0ZUJ1ZmZlck1hcHBlZCh7CiAgICAgICAgICAg
ICBzaXplOiB0aGlzLl9ieXRlTGVuZ3RoLAogICAgICAgICAgICAgdXNhZ2U6IEdQVUJ1ZmZlclVz
YWdlLlNUT1JBR0UgfCBHUFVCdWZmZXJVc2FnZS5NQVBfUkVBRAogICAgICAgICB9KTsKIAotICAg
ICAgICBjb25zdCB0eXBlZEFycmF5ID0gbmV3IChjb252ZXJ0VHlwZVRvQXJyYXlUeXBlKGhhcm5l
c3MuaXNXSExTTCwgdHlwZSkpKGFycmF5QnVmZmVyKTsKKyAgICAgICAgY29uc3QgdHlwZWRBcnJh
eSA9IG5ldyAoY29udmVydFR5cGVUb0FycmF5VHlwZSh0eXBlKSkoYXJyYXlCdWZmZXIpOwogICAg
ICAgICB0eXBlZEFycmF5LnNldCh2YWx1ZXMpOwogICAgICAgICBidWZmZXIudW5tYXAoKTsKIApA
QCAtMTYwLDcgKzE1OCw2IEBAIGNsYXNzIERhdGEgewogY2xhc3MgSGFybmVzcyB7CiAgICAgY29u
c3RydWN0b3IgKCkKICAgICB7Ci0gICAgICAgIHRoaXMuaXNXSExTTCA9IHRydWU7CiAgICAgfQog
CiAgICAgYXN5bmMgcmVxdWVzdERldmljZSgpCkBAIC0xNzUsMjEgKzE3Miw2IEBAIGNsYXNzIEhh
cm5lc3MgewogICAgICAgICB9CiAgICAgfQogCi0gICAgLy8gU2V0cyB3aGV0aGVyIEhhcm5lc3Mg
Z2VuZXJhdGVzIFdITFNMIG9yIE1TTCBzaGFkZXJzLgotICAgIHNldCBpc1dITFNMKHZhbHVlKQot
ICAgIHsKLSAgICAgICAgdGhpcy5faXNXSExTTCA9IHZhbHVlOwotICAgICAgICB0aGlzLl9zaGFk
ZXJIZWFkZXIgPSB2YWx1ZSA/ICIiIDogYAotI2luY2x1ZGUgPG1ldGFsX3N0ZGxpYj4KLXVzaW5n
IG5hbWVzcGFjZSBtZXRhbDsKLSAgICAgICAgYDsKLSAgICB9Ci0KLSAgICBnZXQgaXNXSExTTCgp
Ci0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5faXNXSExTTDsKLSAgICB9Ci0KICAgICAvKioK
ICAgICAgKiBSZXR1cm4gdGhlIHJldHVybiB2YWx1ZSBvZiBhIFdITFNMIGZ1bmN0aW9uLgogICAg
ICAqIEBwYXJhbSB7VHlwZXN9IHR5cGUgLSBUaGUgcmV0dXJuIHR5cGUgb2YgdGhlIFdITFNMIGZ1
bmN0aW9uLgpAQCAtMjI4LDMxICsyMTAsMTcgQEAgdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwogICAg
ICAgICB9KTsKIAogICAgICAgICBsZXQgZW50cnlQb2ludENvZGU7Ci0gICAgICAgIGlmICh0aGlz
Ll9pc1dITFNMKSB7Ci0gICAgICAgICAgICBhcmdzRGVjbGFyYXRpb25zLnVuc2hpZnQoYGRldmlj
ZSAke3dobHNsQXJndW1lbnRUeXBlKHR5cGUpfVtdIHJlc3VsdCA6IHJlZ2lzdGVyKHUwKWApOwot
ICAgICAgICAgICAgbGV0IGNhbGxDb2RlID0gYCR7bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpv
aW4oIiwgIil9KWA7Ci0gICAgICAgICAgICBjYWxsQ29kZSA9IGNvbnZlcnRUb1dITFNMT3V0cHV0
VHlwZShjYWxsQ29kZSwgdHlwZSk7Ci0gICAgICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKKyAg
ICAgICAgYXJnc0RlY2xhcmF0aW9ucy51bnNoaWZ0KGBkZXZpY2UgJHt3aGxzbEFyZ3VtZW50VHlw
ZSh0eXBlKX1bXSByZXN1bHQgOiByZWdpc3Rlcih1MClgKTsKKyAgICAgICAgbGV0IGNhbGxDb2Rl
ID0gYCR7bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwgIil9KWA7CisgICAgICAgIGNh
bGxDb2RlID0gY29udmVydFRvV0hMU0xPdXRwdXRUeXBlKGNhbGxDb2RlLCB0eXBlKTsKKyAgICAg
ICAgZW50cnlQb2ludENvZGUgPSBgCiBbbnVtdGhyZWFkcygxLCAxLCAxKV0KIGNvbXB1dGUgdm9p
ZCBfY29tcHV0ZV9tYWluKCR7YXJnc0RlY2xhcmF0aW9ucy5qb2luKCIsICIpfSkKIHsKICAgICBy
ZXN1bHRbMF0gPSAke2NhbGxDb2RlfTsKIH0KIGA7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAg
ICAgICBhcmdzRGVjbGFyYXRpb25zLnVuc2hpZnQoYGRldmljZSAke2NvbnZlcnRUeXBlVG9XSExT
TFR5cGUodHlwZSl9KiByZXN1bHQgW1tpZCgwKV1dO2ApOwotICAgICAgICAgICAgZW50cnlQb2lu
dENvZGUgPSBgCi1zdHJ1Y3QgX2NvbXB1dGVfYXJncyB7Ci0gICAgJHthcmdzRGVjbGFyYXRpb25z
LmpvaW4oIlxuIil9Ci19OwotCi1rZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWluKGRldmljZSBfY29t
cHV0ZV9hcmdzJiBhcmdzIFtbYnVmZmVyKDApXV0pIAotewotICAgICphcmdzLnJlc3VsdCA9ICR7
bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwgIil9KTsKLX0KLWA7Ci0gICAgICAgIH0K
LSAgICAgICAgY29uc3QgY29kZSA9IHRoaXMuX3NoYWRlckhlYWRlciArIGZ1bmN0aW9ucyArIGVu
dHJ5UG9pbnRDb2RlOworICAgICAgICBjb25zdCBjb2RlID0gZnVuY3Rpb25zICsgZW50cnlQb2lu
dENvZGU7CiAgICAgICAgIGF3YWl0IHRoaXMuX2NhbGxGdW5jdGlvbihjb2RlLCBhcmdzTGF5b3V0
cywgYXJnc1Jlc291cmNlQmluZGluZ3MpOwogICAgIAogICAgICAgICB0cnkgewpAQCAtMjYwLDcg
KzIyOCw3IEBAIGtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oZGV2aWNlIF9jb21wdXRlX2FyZ3Mm
IGFyZ3MgW1tidWZmZXIoMCldXSkKICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgICB0aHJv
dyBuZXcgRXJyb3IoIkhhcm5lc3MgZXJyb3I6IFVuYWJsZSB0byByZWFkIHJlc3VsdHMhIik7CiAg
ICAgICAgIH0KLSAgICAgICAgY29uc3QgYXJyYXkgPSBuZXcgKGNvbnZlcnRUeXBlVG9BcnJheVR5
cGUodGhpcy5faXNXSExTTCwgdHlwZSkpKHJlc3VsdCk7CisgICAgICAgIGNvbnN0IGFycmF5ID0g
bmV3IChjb252ZXJ0VHlwZVRvQXJyYXlUeXBlKHR5cGUpKShyZXN1bHQpOwogICAgICAgICB0aGlz
Ll9yZXN1bHRCdWZmZXIudW5tYXAoKTsKIAogICAgICAgICByZXR1cm4gYXJyYXk7CkBAIC0yNzks
MjcgKzI0NywxMyBAQCBrZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWluKGRldmljZSBfY29tcHV0ZV9h
cmdzJiBhcmdzIFtbYnVmZmVyKDApXV0pCiAKICAgICAgICAgY29uc3QgW2FyZ3NMYXlvdXRzLCBh
cmdzUmVzb3VyY2VCaW5kaW5ncywgYXJnc0RlY2xhcmF0aW9ucywgZnVuY3Rpb25DYWxsQXJnc10g
PSB0aGlzLl9zZXRVcEFyZ3VtZW50cyhhcmdzKTsKIAotICAgICAgICBsZXQgZW50cnlQb2ludENv
ZGU7Ci0gICAgICAgIGlmICh0aGlzLl9pc1dITFNMKSB7Ci0gICAgICAgICAgICBlbnRyeVBvaW50
Q29kZSA9IGAKKyAgICAgICAgbGV0IGVudHJ5UG9pbnRDb2RlID0gYAogW251bXRocmVhZHMoMSwg
MSwgMSldCiBjb21wdXRlIHZvaWQgX2NvbXB1dGVfbWFpbigke2FyZ3NEZWNsYXJhdGlvbnMuam9p
bigiLCAiKX0pCiB7CiAgICAgJHtuYW1lfSgke2Z1bmN0aW9uQ2FsbEFyZ3Muam9pbigiLCAiKX0p
OwogfWA7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAK
LXN0cnVjdCBfY29tcHV0ZV9hcmdzIHsKLSAgICAke2FyZ3NEZWNsYXJhdGlvbnMuam9pbigiXG4i
KX0KLX07Ci0KLWtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oZGV2aWNlIF9jb21wdXRlX2FyZ3Mm
IGFyZ3MgW1tidWZmZXIoMCldXSkKLXsKLSAgICAke25hbWV9KCR7ZnVuY3Rpb25DYWxsQXJncy5q
b2luKCIsICIpfSk7Ci19Ci1gOwotICAgICAgICB9Ci0gICAgICAgIGNvbnN0IGNvZGUgPSB0aGlz
Ll9zaGFkZXJIZWFkZXIgKyBmdW5jdGlvbnMgKyBlbnRyeVBvaW50Q29kZTsKKyAgICAgICAgY29u
c3QgY29kZSA9IGZ1bmN0aW9ucyArIGVudHJ5UG9pbnRDb2RlOwogICAgICAgICB0aGlzLl9jYWxs
RnVuY3Rpb24oY29kZSwgYXJnc0xheW91dHMsIGFyZ3NSZXNvdXJjZUJpbmRpbmdzKTsKICAgICB9
CiAKQEAgLTMxMiwyMSArMjY2LDE1IEBAIGtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oZGV2aWNl
IF9jb21wdXRlX2FyZ3MmIGFyZ3MgW1tidWZmZXIoMCldXSkKICAgICAgICAgaWYgKHRoaXMuX2Rl
dmljZSA9PT0gdW5kZWZpbmVkKQogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAKLSAgICAg
ICAgbGV0IGVudHJ5UG9pbnRDb2RlOwotICAgICAgICBpZiAodGhpcy5pc1dITFNMKSB7Ci0gICAg
ICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKKyAgICAgICAgbGV0IGVudHJ5UG9pbnRDb2RlID0g
YAogW251bXRocmVhZHMoMSwgMSwgMSldCiBjb21wdXRlIHZvaWQgX2NvbXB1dGVfbWFpbigpIHsg
fWA7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKLWtl
cm5lbCB2b2lkIF9jb21wdXRlX21haW4oKSB7IH1gOwotICAgICAgICB9CiAKLSAgICAgICAgY29u
c3QgY29kZSA9IHRoaXMuX3NoYWRlckhlYWRlciArIHNvdXJjZSArIGVudHJ5UG9pbnRDb2RlOwor
ICAgICAgICBjb25zdCBjb2RlID0gc291cmNlICsgZW50cnlQb2ludENvZGU7CiAKICAgICAgICAg
dGhpcy5fZGV2aWNlLnB1c2hFcnJvclNjb3BlKCJ2YWxpZGF0aW9uIik7CiAgICAgICAgIAotICAg
ICAgICBjb25zdCBzaGFkZXJzID0gdGhpcy5fZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNv
ZGU6IGNvZGUsIGlzV0hMU0w6IHRoaXMuX2lzV0hMU0wgfSk7CisgICAgICAgIGNvbnN0IHNoYWRl
cnMgPSB0aGlzLl9kZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogY29kZSB9KTsKICAg
ICAKICAgICAgICAgdGhpcy5fZGV2aWNlLmNyZWF0ZUNvbXB1dGVQaXBlbGluZSh7CiAgICAgICAg
ICAgICBjb21wdXRlU3RhZ2U6IHsKQEAgLTM3MiwxMyArMzIwLDggQEAga2VybmVsIHZvaWQgX2Nv
bXB1dGVfbWFpbigpIHsgfWA7CiAKICAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gYXJncy5s
ZW5ndGg7ICsraSkgewogICAgICAgICAgICAgY29uc3QgYXJnID0gYXJnc1tpIC0gMV07Ci0gICAg
ICAgICAgICBpZiAodGhpcy5faXNXSExTTCkgewotICAgICAgICAgICAgICAgIGFyZ3NEZWNsYXJh
dGlvbnMucHVzaChgZGV2aWNlICR7d2hsc2xBcmd1bWVudFR5cGUoYXJnLnR5cGUpfVtdIGFyZyR7
aX0gOiByZWdpc3Rlcih1JHtpfSlgKTsKLSAgICAgICAgICAgICAgICBmdW5jdGlvbkNhbGxBcmdz
LnB1c2goY29udmVydFRvV0hMU0xJbnB1dFR5cGUoYGFyZyR7aX1gICsgKGFyZy5pc0J1ZmZlciA/
ICIiIDogIlswXSIpLCBhcmcudHlwZSkpOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg
ICAgICAgICBhcmdzRGVjbGFyYXRpb25zLnB1c2goYGRldmljZSAke2NvbnZlcnRUeXBlVG9XSExT
TFR5cGUoYXJnLnR5cGUpfSogYXJnJHtpfSBbW2lkKCR7aX0pXV07YCk7Ci0gICAgICAgICAgICAg
ICAgZnVuY3Rpb25DYWxsQXJncy5wdXNoKChhcmcuaXNCdWZmZXIgPyAiIiA6ICIqIikgKyBgYXJn
cy5hcmcke2l9YCk7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBhcmdzRGVjbGFyYXRpb25z
LnB1c2goYGRldmljZSAke3dobHNsQXJndW1lbnRUeXBlKGFyZy50eXBlKX1bXSBhcmcke2l9IDog
cmVnaXN0ZXIodSR7aX0pYCk7CisgICAgICAgICAgICBmdW5jdGlvbkNhbGxBcmdzLnB1c2goY29u
dmVydFRvV0hMU0xJbnB1dFR5cGUoYGFyZyR7aX1gICsgKGFyZy5pc0J1ZmZlciA/ICIiIDogIlsw
XSIpLCBhcmcudHlwZSkpOwogICAgICAgICAgICAgYXJnc0xheW91dHMucHVzaCh7CiAgICAgICAg
ICAgICAgICAgYmluZGluZzogaSwKICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBHUFVTaGFk
ZXJTdGFnZUJpdC5DT01QVVRFLApAQCAtNDExLDcgKzM1NCw3IEBAIGtlcm5lbCB2b2lkIF9jb21w
dXRlX21haW4oKSB7IH1gOwogCiAgICAgICAgIHRoaXMuX2RldmljZS5wdXNoRXJyb3JTY29wZSgi
dmFsaWRhdGlvbiIpOwogCi0gICAgICAgIGNvbnN0IHNoYWRlcnMgPSB0aGlzLl9kZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHsgY29kZTogY29kZSwgaXNXSExTTDogdGhpcy5faXNXSExTTCB9KTsK
KyAgICAgICAgY29uc3Qgc2hhZGVycyA9IHRoaXMuX2RldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
eyBjb2RlOiBjb2RlIH0pOwogICAgIAogICAgICAgICBjb25zdCBwaXBlbGluZSA9IHRoaXMuX2Rl
dmljZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoewogICAgICAgICAgICAgbGF5b3V0OiBwaXBlbGlu
ZUxheW91dCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1icmVh
ay5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3BzLWJyZWFrLmh0bWwKaW5kZXgg
NmM0MTE2N2VmMGE5NzdkOTRkN2JjYjA2ZDk3MzRjOTA2M2RlMjZlMS4uZjRkZmQ0ZDU4ZWJhMDE5
ZjM0ZDNkNmVjZDE5YzQ5NjA2MWIxZjZiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL2xvb3BzLWJyZWFrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xv
b3BzLWJyZWFrLmh0bWwKQEAgLTM3LDcgKzM3LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Cisg
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
c2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0
YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIi
fTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMtY29udGludWUuaHRtbCBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1jb250aW51ZS5odG1sCmluZGV4IDM5NDlmZTNh
NDliOWJjMTUzMzhmMTc3MTdlN2I2MWJlNTFlZjcwMGMuLjkyMTJhOTdmZGMxNDlhZWU5Zjk5MTY5
ZTk5NjQzZWM5MjgyNGY3NTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9s
b29wcy1jb250aW51ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1j
b250aW51ZS5odG1sCkBAIC0zNyw3ICszNyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNo
YWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBj
YW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0
aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAg
IGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNo
YWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07
CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3BzLmh0bWwgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvbG9vcHMuaHRtbAppbmRleCA0MDVkMWU2ZGQ1N2FkOTUxMDBmNTBhYjcwNWI0
OWU1ZTliY2IxMDc1Li43MTVkMThmODJjOWU0M2ZmZjEyMjkwOTI5ZTM0YTU0NDFmZTZmMmQ3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMuaHRtbApAQCAtMzMsNyArMzMsNyBAQCBmcmFnbWVu
dCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1Zf
VGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZh
cyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAg
IGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFu
Z2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYWtlLWFy
cmF5LXJlZmVyZW5jZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21ha2UtYXJyYXkt
cmVmZXJlbmNlLmh0bWwKaW5kZXggMThhZDA2YTc5YjA2NjEwODM5MmU4YjBlOGY0ZDgwYmQwYWM5
ZWEzZi4uNDRjNDAxODkxZmVkZGI3ZWI0NTJlNTZhMGFlMzY3Y2IyOGNmZGFiMSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21ha2UtYXJyYXktcmVmZXJlbmNlLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21ha2UtYXJyYXktcmVmZXJlbmNlLmh0bWwKQEAg
LTEyMCw3ICsxMjAsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgaW50W10g
YnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQgOgogfQogYDsKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRH
cm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0
eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9tYXRyaXgtMi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21h
dHJpeC0yLmh0bWwKaW5kZXggN2I5OWNhZGYxYmIxMjY0YWNlNjM5ODhhZTRmZmMyYWM1YmNhNGFh
NS4uMjAxYjUyMzllMjZjODZiM2FjYjUxODU1YzBlMjhiZWQzYzFiY2NlYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC0yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL21hdHJpeC0yLmh0bWwKQEAgLTc2LDcgKzc2LDcgQEAgY29tcHV0ZSB2b2lk
IGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9h
dDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNv
bXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVT
aGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGlu
Z3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1d
fTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXgtbWVtb3J5LWxh
eW91dC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC1tZW1vcnktbGF5b3V0
Lmh0bWwKaW5kZXggNWY2NzRkMTE4OTZhZmY5MTM3YTljNWQwNzdkMTA5YTM3Y2YzNmNhNS4uNWEz
NmQ1ZGY1NWNlZjg2NTk3Nzk1NDQxODQyOTAyZDI4OWM5MGUyZCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC1tZW1vcnktbGF5b3V0Lmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC1tZW1vcnktbGF5b3V0Lmh0bWwKQEAgLTQyLDcgKzQy
LDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0NHg0W10gYnVmZmVy
IDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWEKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0
KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERl
c2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTog
InN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9tYXRyaXguaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXguaHRtbAppbmRl
eCBjMzgxYmM5MWFlMjhmYzYxY2FlYzhkOTI0YzRkMmM5YThlM2QwNzY1Li5mZTM2MjBlMTc5YTE2
MmQzMDQ0MDYwNjI1ZmYzNGU1NjBlNzM5NjQ2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvbWF0cml4Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJp
eC5odG1sCkBAIC04OCw3ICs4OCw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmlj
ZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBh
c3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRy
dWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxl
OiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25z
dCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZp
c2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWRvdC1leHByZXNzaW9uLXJ2YWx1ZS5odG1sIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL25lc3RlZC1kb3QtZXhwcmVzc2lvbi1ydmFsdWUuaHRt
bAppbmRleCBiMDU3ZjFmYjEyYjU2MmJhMDk5NzQwNGU0Mjg4OGE0ZWMwNGIxMmQ4Li45MDc2N2Iz
NzMzNDNkNmU5OTQzZmI3MjkxN2FlNGQyNzlmNDMwZjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvbmVzdGVkLWRvdC1leHByZXNzaW9uLXJ2YWx1ZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0ZWQtZG90LWV4cHJlc3Npb24tcnZhbHVlLmh0bWwK
QEAgLTQxLDcgKzQxLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNo
YWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2
aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7
CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTog
c2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBw
cmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWxvb3AuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9uZXN0ZWQtbG9vcC5odG1sCmluZGV4IGVkODA3MGZlYzMxOTYxZWIxMzNkN2FiZDE1ODU2
YzBmYzQwZTIwMzAuLjcxZDIzMjlhNTZiYjY0M2Q1NDYyYmIzMDIzMWQxMGFhMmI1MTVmZTEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0ZWQtbG9vcC5odG1sCisrKyBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0ZWQtbG9vcC5odG1sCkBAIC02OSw3ICs2OSw3
IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0
ZSgwKSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZl
cnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hh
ZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwg
ZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xv
Z3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL251bGwtZGVyZWZlcmVuY2UuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9udWxs
LWRlcmVmZXJlbmNlLmh0bWwKaW5kZXggZDE3OTQ1MGJlNmIxNmI1NjEwMDU1MGE2MzQ5N2RhODY0
ZDNmZTg5MS4uNTc5MGMxMGI4YTY3YzdlNDliZjhjMTlhNDc5N2FhYTBlODJiNzVmZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL251bGwtZGVyZWZlcmVuY2UuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbnVsbC1kZXJlZmVyZW5jZS5odG1sCkBAIC01MCw3
ICs1MCw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBmbG9hdFtdIGJ1ZmZl
ciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBz
dGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlv
dXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5
cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvb29iLWFjY2Vzcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL29vYi1hY2Nl
c3MuaHRtbAppbmRleCBkMzdiMzk0Mzg1MzlmZDdkMzk1ZTdmMTZkZjBiMWM4MjAwNGQ0OWFjLi4x
MWNhNmNjZDBhZWM5YmUzMDQxYjVjNzBmZjI4NWE0YmMzYmMxYWQ4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvb29iLWFjY2Vzcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9vb2ItYWNjZXNzLmh0bWwKQEAgLTE3LDcgKzE3LDcgQEAgY29tcHV0ZSB2b2lk
IGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9h
dDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNv
bXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVT
aGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGlu
Z3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1d
fTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2FuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3By
b3BlcnR5cmVzb2x2ZXIvYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKaW5kZXggZWExODVhOWYx
YWEzYWNhYzZlNGNkMWVmYmU1ZmI1NTI4NDk2M2JhNS4uNGY4NjZmYzM5NDhjODI0ZGE5ZWJjODgw
MThiOWUzM2FkZTBjNzk2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3By
b3BlcnR5cmVzb2x2ZXIvYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0
bWwKQEAgLTQyLDcgKzQyLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBT
Vl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2Fu
dmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdl
ID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAg
ICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJp
YW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3Bl
cnR5cmVzb2x2ZXIvYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUtMy1sZXZlbHMuaHRtbAppbmRl
eCBkMzQ5MDFkMDIyNDYwMTFhOWZmYWQyNzI4ZjE5OGNmZmVmOGFjZmM3Li5hYTlhMTNiZDI3OTc4
YWNmMTVjMzNhODdlZDNkNDNhYzIzMjM4YzcxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUtMy1sZXZlbHMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUt
My1sZXZlbHMuaHRtbApAQCAtNDUsNyArNDUsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRT
aGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhT
aGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3Bv
bG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWx2YWx1ZS5odG1sCmluZGV4IDExN2Ex
NTA4YjBkOWEwMWVjMjkyNGRjMzRkNDE4Yzg3ZmM5YzgzYTcuLjk0OWIxZGQ3NTI5YzVjZmU1YjY5
MjljM2QyMzkzYWI1NGUwZTg1MzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWx2YWx1ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWx2YWx1ZS5odG1sCkBAIC0zNyw3ICsz
Nyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNo
YWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2Fu
ZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRl
ci5odG1sCmluZGV4IDY5ZjczMThjZDlkOGU5MTAzZTNiNDQ1YzBkMGQyMDNiOTJiY2MyMGIuLmE0
NDg0NjFiMDgzNTY5MDkxZWU3YWFiZDc2YTRlNDY2YjA0YmUwNmUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXIuaHRtbApAQCAtMzMs
NyArMzMsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAw
IHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAog
YXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxl
OiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBm
cmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21l
bnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJp
cCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZl
ci9nZXR0ZXIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2dldHRlci5odG1sCmluZGV4IGJmMjI2MTFlMDM3ZmZkNzA1MWFmOTY3YjY2YTgwZjEwYWYyY2I3
YjcuLmRkZWFmMjc0Y2NlODQwMTM5ZmFkNjMzZmYyNjU3NzRkNGU1NTkzMGMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2dldHRlci5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2dldHRlci5odG1s
CkBAIC0yOSw3ICsyOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1Zf
VGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZh
cyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlz
V0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAg
IGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFu
Z2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0
eXJlc29sdmVyL2luZGV4ZXItYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWFic3RyYWN0LWx2
YWx1ZS5odG1sCmluZGV4IGFmZDc0MzQ5YWEyYTUyOTJmYjU0OWNlNTUzNWVmNzQyNGNmYzcxOWEu
LjE4MmU0NjVjZjRmOGVlZjU0MzcyMjUwMGZiNWJiMjZiMzY1OWZmMTAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItYWJz
dHJhY3QtbHZhbHVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5
cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbApAQCAtNDIsNyArNDIs
NyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNv
bnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMg
ZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVu
dFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFk
ZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRl
eGVyLWFuZGVyLWx2YWx1ZS0zLWxldmVscy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFsdWUtMy1sZXZlbHMuaHRtbAppbmRl
eCBlYjFlNTExYmM4YmZlZjMzZDZiZWMzYzYzZDZlYTNiMzVjMjcyMTc4Li43MDc2NzJlZGFlMWJl
YjA0OWNkYTM3MTIwZDcwNDQ0NWFmOWI3YmU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWx2YWx1ZS0zLWxldmVscy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4
ZXItYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwKQEAgLTQ1LDcgKzQ1LDcgQEAgZnJhZ21lbnQg
ZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0
KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRy
eVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1
bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29u
c3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFs
dWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4
ZXItYW5kZXItbHZhbHVlLmh0bWwKaW5kZXggN2RlZDAzYTQ0NzM0YjFmMWM4NDUxMWI3ZDYwOGU2
Y2ZiOGZiMGUwMC4uM2U4NWE0YzM0MzFiM2I4YzAyY2U5MzMyZjkwMjdlMzc1ZDdlYWFhMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhl
ci1hbmRlci1sdmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVy
dHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWx2YWx1ZS5odG1sCkBAIC0zNyw3ICszNyw3IEBAIGZy
YWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2Fu
dmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlv
biBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFk
ZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2Ug
PSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9Owog
ICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5k
ZXIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4
ZXItYW5kZXIuaHRtbAppbmRleCAxNzc2MWY5Y2E3ZTIyMDAzOGE3NzkzNDY4ZGJjM2U2ZmZhNmI3
YzZjLi5jYmRlNzVmZGM3OGRiNDJkMjFkMmY0NDMwNzNkNWZjZmNlYWZmY2MzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVy
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5k
ZXhlci1hbmRlci5odG1sCkBAIC0zMyw3ICszMyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVu
dFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBz
aGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25z
dCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRl
eFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1
bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRv
cG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItZ2V0dGVyLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWdldHRlci5odG1sCmluZGV4
IDE5NjkxNmE4ZWRkYzZiZDc2ZGI0ZWIyY2UyOGZhNjdmMTE0MGViZGUuLjhhNWQ5YTJmYmYyMDFi
M2IxNzg0NzM3NDg1YzFjNzVhNTYzZmI1MzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItZ2V0dGVyLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1nZXR0ZXIuaHRtbApA
QCAtMjgsNyArMjgsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1Rh
cmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMi
KTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dI
TFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBj
b25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
ZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmds
ZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHly
ZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbCBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWFi
c3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCmluZGV4IGE2ZDliNGVjNWViNWMxYzQxZmQ4NWQx
ZThkOTBlYjcyMDQ0YjQ0MzAuLjg1M2FhMmVkZDM5YzJhZjAxZTgwMDUwY2M2NzRlYmM3NDQ5ODI4
NGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2luZGV4ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCisrKyBiL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWFic3Ry
YWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCkBAIC02MCw3ICs2MCw3IEBAIGZyYWdtZW50IGZsb2F0
NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZp
Y2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsK
ICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBz
aGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHBy
aW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWFic3RyYWN0
LWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIv
aW5kZXhlci1zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKaW5kZXggZTQ2ZTA2ZGE1ZjBiNTE0
ZjU5NmQ0NzU4OTE3MzFhZjJlYWY5YWU1NC4uZGE2MWIxNDZkN2NhOGJiNTg5YzFiNmVlN2JjZGRm
YTZlOTZkODVhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5
cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItYWJzdHJh
Y3QtbHZhbHVlLmh0bWwKQEAgLTQ3LDcgKzQ3LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAg
IGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4
U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItbHZhbHVlLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1sdmFs
dWUuaHRtbAppbmRleCA4Mjc5ODFhNjYyMzE4ZTk5YWU4ZDU2ZmZhNDNlNTE0NTIwYmZiMTg1Li5i
ZWM5ZDkyZjc2ZGIxYzE5Y2Q3Y2EzZDJiNGY0ZWYzNTg5NGU0NTExIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1sdmFs
dWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9p
bmRleGVyLXNldHRlci1sdmFsdWUuaHRtbApAQCAtNDIsNyArNDIsNyBAQCBmcmFnbWVudCBmbG9h
dDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2
aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7
CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTog
c2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBw
cmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci5odG1sIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXIu
aHRtbAppbmRleCA2MmRkZjVlYTcxM2NkMjQ5NDFmZmI0YjFlODA4ZjQ5MzNhZjFjM2NjLi5iNjE2
MjNhYjFmNDViMWIxMjE5ZTI1NTU2ZmQ2NWQ5YWNiNjlhZjIwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0
dGVyLmh0bWwKQEAgLTQ1LDcgKzQ1LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVy
KCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRl
eFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVy
In07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kg
PSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0
LWx2YWx1ZS0zLWxldmVscy5odG1sCmluZGV4IDU5YzQ4NTA5MDAwZjZhMjZiMmYwOGE5M2M1Yzhk
MTFlZmYyOGRiNjcuLjQxOGI4NTk1YzNjOTY0ZDlmNzVhMTkxNjRkODQ0YTY1NWE1ZGI5ZTcgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRl
ci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLTMtbGV2ZWxzLmh0
bWwKQEAgLTYwLDcgKzYwLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBT
Vl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2Fu
dmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdl
ID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAg
ICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJp
YW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3Bl
cnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sCmlu
ZGV4IDY4ZDU4N2U3NjBlZTMzNDM1YzY3YWE2NDZhMGJjN2E0ZTBhODkyNTQuLjk2YWQ4YzhkODAy
NDIyNGE5ZWUyNDU1OGU3OGE0OGRmODA0MTVmMGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0ZXItYWJz
dHJhY3QtbHZhbHVlLmh0bWwKQEAgLTQ3LDcgKzQ3LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdt
ZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewot
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNv
bnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVy
dGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZl
VG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWx2YWx1ZS5odG1sCmluZGV4
IDdhYmE1Y2ZkZWUyNWY1MDk5Y2RiYjg1MGVhYjJkMWJjM2I2NGVlNjUuLmQ1MGY4Yjg0YTU2NDZi
OTRjN2VlMmI5MjFkOGYwMjgxYWM5MWE3NTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1sdmFsdWUuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0ZXItbHZhbHVlLmh0bWwKQEAg
LTQyLDcgKzQyLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJn
ZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7
CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21v
ZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29u
c3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZy
YWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUt
c3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5
LXdyaXRlLWhpZ2gtem9tYmllcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQt
bW9kaWZ5LXdyaXRlLWhpZ2gtem9tYmllcy5odG1sCmluZGV4IDA0MDdmNzA1NjliZjdiN2ZkOTVl
ZDA5ZjY1NGZlYmU3NzM3YmY0YzcuLmJhNGRkMDgwY2U4YjEzOGY3ZDY2MzVhM2NiZjhkNTY2MGFi
YjZmNmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZWFkLW1vZGlmeS13
cml0ZS1oaWdoLXpvbWJpZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcmVh
ZC1tb2RpZnktd3JpdGUtaGlnaC16b21iaWVzLmh0bWwKQEAgLTM1LDcgKzM1LDcgQEAgY29tcHV0
ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTAp
LCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewot
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNv
bnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNv
bXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7
YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVm
ZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZWFkLW1vZGlm
eS13cml0ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRl
Lmh0bWwKaW5kZXggY2VmN2YwMWY1NjFjYzdiODY1YTc1M2QxMTEzYjc3MDg3OTI0YmNjMS4uOGQw
NTZhM2FmYmZlM2Y5ZjA5NzU5Nzg2ZjBmMjYyN2IzNzMxMzhhMSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRlLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRlLmh0bWwKQEAgLTM5LDcgKzM5LDcgQEAg
YXN5bmMgZnVuY3Rpb24gc3RhcnQoKSB7CiAgICAgY29uc3QgYWRhcHRlciA9IGF3YWl0IG5hdmln
YXRvci5ncHUucmVxdWVzdEFkYXB0ZXIoKTsKICAgICBjb25zdCBkZXZpY2UgPSBhd2FpdCBhZGFw
dGVyLnJlcXVlc3REZXZpY2UoKTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRH
cm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0
eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9yZXR1cm4tbG9jYWwtdmFyaWFibGUuaHRtbCBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9yZXR1cm4tbG9jYWwtdmFyaWFibGUuaHRtbAppbmRleCA2ZjY5NDcwNDRkODBi
ZWYyMTk0OWNjMmFiYzhhYmYzYmIyM2NkMzc3Li43NWQxYzljYTViYTJhNjY5NTg3NzYyN2Y5OTlk
ODBkMWM5YmEwNjhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcmV0dXJu
LWxvY2FsLXZhcmlhYmxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JldHVy
bi1sb2NhbC12YXJpYWJsZS5odG1sCkBAIC0zNCw3ICszNCw3IEBAIGZyYWdtZW50IGZsb2F0NCBm
cmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMCB7
CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFz
eW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTog
c2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MTAuaHRtbAppbmRleCA3Yjk0OTU2OTZjZWUwMDEwODVlZmI2NjcwZTkxZjcwNzA5MmY2YjhiLi5i
YWJhMjY0MDE0OWFhYjIwM2FlODIyMWEyZWE4Y2U0Y2M4ZDZmMTYxIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTAuaHRtbApAQCAtMjIs
OCArMjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9u
IDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25z
dCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
dmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdt
ZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25z
dCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTEuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xMS5odG1sCmluZGV4IGQxZGEx
NTlkNGZlYmVhYTMwMWFlM2JkNGQxMDc5Nzg5NGU3NmY0ODIuLjY0MjRiMWI3NTRiOTk2NTBiZDZk
YTIzOWVkMmM5Mzk5MjIxZTlhMzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xMS5odG1s
CisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xMS5odG1sCkBAIC0yNSw4ICsyNSw4IEBAIGZyYWdtZW50
IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBT
Vl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2Fu
dmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRl
eFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3Vy
Y2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBj
b25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9k
dWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAg
ICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5
ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xMi5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTEyLmh0bWwKaW5kZXggNTNhMmY0ODA0NjE1ZjYxZTBjNzBiMmQ5
MzUyMjJhYWY4MDEwNjM0Ni4uYmRkNmI4YmVkMmRiOTdiOGIwYjhkMmU5Y2FlM2ZlMTNjZjVmYTNm
YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTEyLmh0bWwKQEAgLTI0LDggKzI0LDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hh
ZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3Rh
Z2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MTMuaHRtbAppbmRleCA3NGIyZDkxNmM3M2FmNWEyNjY1NjI0ZTUyNTczYjgxZmVhOGVhOTNkLi5l
MjljZmQxMmIwNTRkYjUwMTRmYTJjZDUxNWQxOGYxOWMyNDQ3ZDZjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTMuaHRtbApAQCAtMjIs
OCArMjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9u
IDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25z
dCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
dmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdt
ZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25z
dCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNC5odG1sCmluZGV4IGRiNWUx
YWJhMTU3ZGUyNzFhMjU0NDEwNTJkZmJhYzhmNDRlZWNmMTcuLjg2ODQ4M2IyZDA4ZDU1NzQ3NjRj
OTRkOTMxNjE5N2UyMDE0YjMwMWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNC5odG1s
CisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNC5odG1sCkBAIC0yNiw4ICsyNiw4IEBAIGZyYWdtZW50
IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBT
Vl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2Fu
dmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRl
eFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3Vy
Y2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBj
b25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9k
dWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAg
ICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5
ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNS5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWwKaW5kZXggOTU3Yzk2NGFkNTZkNDE4YzVhODNmYjdi
OTBiMjhjMWZkYjM2ZjZmNC4uMDQyMmQ5YzU1NTkzZjc2ZmY3NWI3ZDdmODI5NDU5NTIyZjk4ZjEx
MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTE1Lmh0bWwKQEAgLTI2LDggKzI2LDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hh
ZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3Rh
Z2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE2Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MTYuaHRtbAppbmRleCAyOWE0ZjRhMzlmMDljZjdmNzFkNmNiYmNjMzk3ZjM0ODJlZmE2YmIxLi5m
YzdjNDllYjIxNjdmN2YzZGZkYzljZjc1OWZiOGIxNjlhYTQ3Y2JjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTYuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTYuaHRtbApAQCAtMjYs
OCArMjYsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9u
IDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25z
dCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
dmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdt
ZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25z
dCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTcuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNy5odG1sCmluZGV4IDNjOWJm
NDc0M2I0Yjg0MTJhOTU1YjBkOWZjNDg4M2ZiM2JmNzI3YzcuLmY2YzI1YmE3ZmYwMzE3ZDIzZTU4
MTMxYjkyYjg5YTU1M2MwNGU5ZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNy5odG1s
CisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNy5odG1sCkBAIC0yMyw4ICsyMyw4IEBAIGZyYWdtZW50
IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBT
Vl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2Fu
dmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRl
eFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3Vy
Y2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBj
b25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9k
dWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAg
ICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5
ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xOC5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTE4Lmh0bWwKaW5kZXggODEzN2U2NWIzNjcxMzkxZjI3MDlkM2Ew
MWU1NmMwNmQ5NDNhODc3Yi4uNTAzODhjMmY5Y2Y1NjVhNmEwZjA1NGI4MTkyM2NhYWNmNDdkM2Ni
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE4Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTE4Lmh0bWwKQEAgLTI4LDggKzI4LDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hh
ZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0p
OworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3Rh
Z2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE5Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MTkuaHRtbAppbmRleCBkMjMzMmE1MGQ1N2QzOGIwYWM1ZjA1NTNmYTY4OTUzYjUxMDkxNTUzLi4w
YWRiZGVjYzE4YmE1MzQ1ZjY0OTI2ODg4MTgzNjVhYTM3ODEzMDNmIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMTkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTkuaHRtbApAQCAtMjgs
OCArMjgsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9u
IDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25z
dCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
dmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdt
ZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25z
dCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIuaHRtbAppbmRleCBlNWQyNmIz
NzhlNmZmMDM1MDUyYWMxM2U0NzFlNTYxZDVjODFkMmM1Li5kM2Q0ZDU4OGU4Mzg3Zjk4MjgyMTVm
NzdjYzUzMzMwMjYzMzdjNTBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMi5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy0yLmh0bWwKQEAgLTIzLDggKzIzLDggQEAgZnJhZ21lbnQgZmxv
YXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1Rh
cmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMi
KTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0
IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
ZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6
IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNv
bnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAi
dHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIwLmh0bWwgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMtMjAuaHRtbAppbmRleCBkOWM4YWI2ZjgzNGQ1MDdmNWI2ZTdkNzU1ODI2
MDM4NzJiNDc1ZjQwLi42ZGJhNzhiMTdhNWEwNDI5NjZkNWUzNTI4YjIyOWZhNzA3NzcwNmE1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MjAuaHRtbApAQCAtMjQsOCArMjQsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIo
ZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5
bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDog
dHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRT
aGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZy
YWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUt
c3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIxLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMtMjEuaHRtbAppbmRleCAxMDMyZmU4YWZhNDBiZTMyMDI0MzM5NzhmYmZjYzBiMjRlZGM5
OTBmLi4yOTViODRiMGQ1ODMxNGZlNzA4ZTQyNmZlZTU0MWRjMmI2NGI5MDgyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMjEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjEuaHRtbApA
QCAtMjAsOCArMjAsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBv
c2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rp
b24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3Vy
Y2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2Ug
PSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hh
ZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIyLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjIu
aHRtbAppbmRleCBhZjRmYzljZDJlODNmNzMzM2Q0YzAzZDBhMDJjM2Y1YTlkN2NlNjIyLi40OWEy
ZWU5OWJlOWJiY2VhNTU5ZGQ1YzI0ZjRjMWNmMTc2OGQ4NWJjIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjIuaHRtbApAQCAtMjQsOCAr
MjQsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDog
U1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQo
ZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0g
ICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0
IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZl
cnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxl
OiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTIzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjMuaHRtbAppbmRl
eCAzZGRjMWYwN2I5MGE4NDU2N2NlNmFlNjAyMmJkYTg2NmNhNzBiZDg4Li4wMWIyYTBkYmNhMmQw
NGUxZDk2MzY4NGY4Y2MyNGQ0NzYwM2YzYTFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MjMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjMuaHRtbApAQCAtMjQsOCArMjQsOCBAQCBm
cmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRp
b24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7
Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3Qg
ZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBm
cmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRl
clNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2
ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZl
cnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVu
dFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3Qg
cHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzLTI0Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQuaHRtbAppbmRleCAxNGEyZDA3
ZTc4ZjUzMDllMGU2ZGI1Y2E5NjBlMWQzZmYxMmJhNDQwLi4yMzMwZjc2MmVkNTc2YjNhNWRmOWY3
ZmYzMzk4NGMxOGZlYTU0OTMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQuaHRtbApAQCAtMjMsOCArMjMsOCBAQCBmcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1Zf
VGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZh
cyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFk
ZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNl
LCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29u
c3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVs
ZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAg
Y29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRy
eVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9
ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjUuaHRtbCBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy0yNS5odG1sCmluZGV4IDkzNDIzNGRlNzZiOTc4NjU5MTY3MzVkYzNm
NDc5NmEzYjNjNmJjYzUuLmJhZjczY2IxOGQ0NDNkMGI3MWE2YmE0YzI0NDc4Njg2ZTUyMjliZTEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy0yNS5odG1sCkBAIC0yMiw4ICsyMiw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRl
cjIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAog
YXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNl
LCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdt
ZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21l
bnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRl
eFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZy
YWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
ImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5n
bGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTI2Lmh0bWwgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjYuaHRtbAppbmRleCA0ZjgwYTc1Y2M2Mjc1OWMzYjRiODg4OTk3MWU3NmJhYTIw
ODc5YTg3Li5jYjUxNmFmNjhjMWRkZmY1NGI5ZGQ2MTEyNmZjZjU5NTk3YTNiY2RiIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMtMjYuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjYuaHRt
bApAQCAtMjQsOCArMjQsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0
IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFy
dChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsK
LSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29u
c3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
dmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwog
ICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRy
eVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1
bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsK
ICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMtMjcuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNy5odG1sCmlu
ZGV4IDM5MWMxNTRhZjQzNjUwZjVkNWM1ZDU5Yzc1ODIyMDI3OTJjZmI3M2QuLjUxZGI2OWRjODJm
MWMyYmIwNGQwNzhlMjEzNmQwM2UxNTc1YzlmZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy0yNy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNy5odG1sCkBAIC0yMiw4ICsyMiw4IEBA
IGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3Np
dGlvbiwgYm9vbCBpc0ZvbnRGYWNlIDoKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmlj
ZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0
ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhT
aGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJh
Z21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy0zLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMy5odG1sCmluZGV4IGZlNGYy
NDQ2MzI4Y2ViYjYzNDM0ZDg1MWQ0NGE0M2M5OWVhZWUyOTMuLjE1ZDMzMjAyY2VlZDdiZGY1NWEy
NmU2ZmY0OWNkMTUwZWQ2YjM4ZjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0zLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTMuaHRtbApAQCAtMjEsOCArMjEsOCBAQCBmcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1Zf
VGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
dmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0p
OworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFn
ZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRl
ciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZl
VG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
LTQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy00Lmh0bWwKaW5kZXggNTRlYzhiYjFjNzEwNWJiZTVh
MGFkODQ4NTlhMWY2MjUwZmIyNTcyNS4uN2QzNzJlYjMxYzIzOTY2YWM5YmYzM2FiYTAxMjg3Mjk3
NjllYmMzOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtNC5odG1sCkBAIC0yMCw4ICsyMCw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVu
dFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBg
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3Qg
ZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBm
cmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTog
dmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29u
c3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0
cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNS5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzLTUuaHRtbAppbmRleCBmZGMxOGZlODc0NWUxMjVkOGJlNjZlNWU0ZGY4YjA2
ZjM1N2Q4NWVlLi44OTQ1NWM3ZDRhYjlmZWRhYzlhZDBkY2JlOWQ0M2JmYjA5OWVlMjgwIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy01Lmh0
bWwKQEAgLTIzLDggKzIzLDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0
NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGA7CiAKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVy
U291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0
YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVu
dFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlw
IjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy02Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
Ni5odG1sCmluZGV4IGUwNWU0Njg0YzgwNmY0OGE0YjZiMjA4ZGNlMTI1MGVjZmU2NjE5MDMuLmRh
YmE2ODdhYmYwMDk0NmVhYmM2MGRhMGE5ZDZjNzU2NWYwZTdjNjkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy02Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTYuaHRtbApAQCAtMjIsOCAr
MjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDog
U1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQo
ZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0g
ICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0
IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZl
cnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxl
OiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTcuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy03Lmh0bWwKaW5kZXgg
NmNkMWI0Zjk2NzJiOGIxZmM5NWYzOTA5MjcwNmIwNWI5OWE2NTdhMS4uMmVhZjA0OTk5MDMwYWQ0
M2Q1M2QxMmQwY2E5M2QxNzM3YTE2MWUxMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTcu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNy5odG1sCkBAIC0yNiw4ICsyNiw4IEBAIGZyYWdt
ZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikg
OiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Y2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZl
cnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRl
eFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAg
ICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7
bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsK
ICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9s
b2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy04Lmh0
bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMtOC5odG1sCmluZGV4IDAxMmE0ZmQwYzI2ZGZmYWUzNjc0NzVj
Mzg1NzVmYmQ1YjFiOTc5MWIuLjVlNzZkOTBhZGM3ZTc1MDgxOTAwNTMyNTUyOTY0NTIwNGU1ZDJm
NDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy04Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzLTguaHRtbApAQCAtMjEsOCArMjEsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAog
YXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNl
LCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdt
ZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21l
bnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRl
eFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZy
YWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
ImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5n
bGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTkuaHRtbCBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy05Lmh0bWwKaW5kZXggZGE2YzA5NTI5NDFkOTAwZjc1Yzk2NGEwOTNlYjA5N2MwZGYw
NDBkMS4uYWE2YTc4NTc0NmYyMjUzNTdlODI3YzllMDg0ZjYwNjM4YzZhZjgxMyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtOS5odG1sCkBA
IC0xOSw4ICsxOSw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9z
aXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBgOwogCiBhc3luYyBmdW5jdGlv
biBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRy
dWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Cisg
ICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9
IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFk
ZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy5odG1sCmlu
ZGV4IGQ0MjBhODIyZWNlODNmZjA3NDg3YThmZDQ4ZjJiYzk3NThiZWFiYWYuLmJmMGRkZjFmYTY5
N2FkZTE5ZTdiMWM4MjdhYWQ4NDYxZDJjZDg5OTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy5odG1sCkBAIC0yMCw4ICsyMCw4IEBAIGZyYWdt
ZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikg
OiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Y2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZl
cnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRl
eFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAg
ICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7
bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsK
ICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUs
IGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9s
b2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9zaW1wbGUtYXJyYXlzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2ltcGxl
LWFycmF5cy5odG1sCmluZGV4IDgxMTE0OWVkMjI1ZjA2MGY4NGE4OTUwYTU2OTBjZGQzMDUxZTFl
OWUuLjViMzNkYjI5NzNkMDMzZWZlYzkwZjgwZDA0NjBkYzM3MGRjODI3ZWIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zaW1wbGUtYXJyYXlzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3NpbXBsZS1hcnJheXMuaHRtbApAQCAtNTksNyArNTksNyBAQCBj
b21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgaW50W10gYnVmZmVyIDogcmVnaXN0ZXIo
dTApLCBmbG9hdDMgdGhyZWFkSUQgOgogfQogYDsKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmlj
ZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwog
ICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0
b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3Jh
Z2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zdG9y
ZS10by1wcm9wZXJ0eS11cGRhdGVzLXByb3Blcmx5Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvc3RvcmUtdG8tcHJvcGVydHktdXBkYXRlcy1wcm9wZXJseS5odG1sCmluZGV4IDBjNzlh
NjkxM2MzOGQzYzQyZDc0YzBhMzE5NDhmMGNiMWU4NmIwYzYuLmJlZTk0NzVkZWFjYTA3YTg5N2Zi
NzM3Yjg5NzU2ZWI2ODRkMzBiZWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zdG9yZS10by1wcm9wZXJ0eS11cGRhdGVzLXByb3Blcmx5Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3N0b3JlLXRvLXByb3BlcnR5LXVwZGF0ZXMtcHJvcGVybHkuaHRtbApA
QCAtNDksNyArNDksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hh
ZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZp
Y2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsK
ICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBz
aGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHBy
aW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1nZXRkaW1lbnNpb25zLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvdGV4dHVyZXMtZ2V0ZGltZW5zaW9ucy5odG1sCmluZGV4IGZlMGY1Y2Q2
OWM0MDdjODM0ZTIxZDNkNGUwODVhNmMxNjI3ZTJmZGEuLjk1YWNhMzQ4MDAyZWQ2M2M0YWUxNTIz
OTAxNzBjNjUyNzIxZWE4NjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90
ZXh0dXJlcy1nZXRkaW1lbnNpb25zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3RleHR1cmVzLWdldGRpbWVuc2lvbnMuaHRtbApAQCAtMjAsNyArMjAsNyBAQCBjb21wdXRlIHZv
aWQgY29tcHV0ZVNoYWRlcihUZXh0dXJlMkQ8ZmxvYXQ0PiB0aGVUZXh0dXJlIDogcmVnaXN0ZXIo
dDApLCBkZXZpY2UgdQogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
Y29tcHV0ZVN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiY29tcHV0
ZVNoYWRlciJ9OwogCiAgICAgY29uc3QgYmluZEdyb3VwTGF5b3V0RGVzY3JpcHRvciA9IHtiaW5k
aW5nczogW3tiaW5kaW5nOiAwLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAic2FtcGxlZC10ZXh0dXJl
In0sIHtiaW5kaW5nOiAxLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAic3RvcmFnZS1idWZmZXIifV19
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLWxvYWQuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1sb2FkLmh0bWwKaW5kZXggZTI5
NTdiOWU1YjNlNTRiNWM5ZGVjNDA1MTkyYzUxZmQ3NDI0MTI2Ny4uZWE0ZDY4MTkwMzMxMjU3MzBh
OGQ1OTI4ZDdjMDgyY2Q2YTkyODY3MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3RleHR1cmVzLWxvYWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdGV4
dHVyZXMtbG9hZC5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVu
dFNoYWRlcihUZXh0dXJlMkQ8ZmxvYXQ0PiB0aGVUZXh0dXJlIDogcmVnaXN0ZXIodDApKSA6IFNW
CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFz
eW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTog
c2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLXNhbXBsZS5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLXNhbXBsZS5odG1sCmluZGV4
IDg3YjQwMzU2YjQyOGUyZmVlMTA1ZTI2NTk2NWFlNWE5NWJjNWM2YzAuLjg2MDNjODQxZThhMGNi
ODk1YjE2ODRhMDM3MWExODgzZTVhYWVkNDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC90ZXh0dXJlcy1zYW1wbGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvdGV4dHVyZXMtc2FtcGxlLmh0bWwKQEAgLTE5LDcgKzE5LDcgQEAgZnJhZ21lbnQgZmxvYXQ0
IGZyYWdtZW50U2hhZGVyKFRleHR1cmUyRDxmbG9hdDQ+IHRoZVRleHR1cmUgOiByZWdpc3Rlcih0
MCksIHNhbXAKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMi
KTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dI
TFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBj
b25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
ZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmds
ZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdHdvLWRpbWVu
c2lvbmFsLWFycmF5Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdHdvLWRpbWVuc2lv
bmFsLWFycmF5Lmh0bWwKaW5kZXggMzU1Mjg2ZDBkMjM3Nzg0OTM3M2ZhMTYxYjI5MDJlMjRiMjM2
NmEzNS4uMzE5ZjhhNGYwNDg4ZDIwNzA0YjgxZDQyMjFmZjIyNTQzZmI0NTMwNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3R3by1kaW1lbnNpb25hbC1hcnJheS5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90d28tZGltZW5zaW9uYWwtYXJyYXkuaHRtbApA
QCAtNjEsNyArNjEsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgaW50W10g
YnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQgOgogfQogYDsKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRH
cm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0
eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC91c2UtdW5kZWZpbmVkLXZhcmlhYmxlLTIuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC91c2UtdW5kZWZpbmVkLXZhcmlhYmxlLTIuaHRtbAppbmRleCBlMDZmNzI0
MjRkNjk1MmMyZjE2Yjg2YmFhNzA3NDUyOGJlYjQ2YmUzLi5jZDMwNGFlNTRhNGRhYjczOTkzZjNm
YjA5YjA3YTNiMTEwZGFmM2FiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
dXNlLXVuZGVmaW5lZC12YXJpYWJsZS0yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL3VzZS11bmRlZmluZWQtdmFyaWFibGUtMi5odG1sCkBAIC0xNyw3ICsxNyw3IEBAIGFzeW5j
IGZ1bmN0aW9uIHN0YXJ0KCkgewogICAgIGNvbnN0IGFkYXB0ZXIgPSBhd2FpdCBuYXZpZ2F0b3Iu
Z3B1LnJlcXVlc3RBZGFwdGVyKCk7CiAgICAgY29uc3QgZGV2aWNlID0gYXdhaXQgYWRhcHRlci5y
ZXF1ZXN0RGV2aWNlKCk7CiAKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFk
ZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1
bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBM
YXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcs
IHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3VzZS11bmRlZmluZWQtdmFyaWFibGUuaHRtbAppbmRleCBkYTBlMmZkMWNhMTk1MTEy
ZWRlNWQ2YzlhNTJhNTIwZDE3ZjYxN2M5Li45YzUwMDczN2IyZmNlNjA2MWM4YjU4ZDg5NzI4ODYy
YzE1MDY5MTRiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdXNlLXVuZGVm
aW5lZC12YXJpYWJsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC91c2UtdW5k
ZWZpbmVkLXZhcmlhYmxlLmh0bWwKQEAgLTIwLDcgKzIwLDcgQEAgYXN5bmMgZnVuY3Rpb24gc3Rh
cnQoKSB7CiAgICAgY29uc3QgYWRhcHRlciA9IGF3YWl0IG5hdmlnYXRvci5ncHUucmVxdWVzdEFk
YXB0ZXIoKTsKICAgICBjb25zdCBkZXZpY2UgPSBhd2FpdCBhZGFwdGVyLnJlcXVlc3REZXZpY2Uo
KTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwog
ICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0
b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3Jh
Z2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGls
ZS1sb29wLWJyZWFrLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvd2hpbGUtbG9vcC1i
cmVhay5odG1sCmluZGV4IDVhNTQ3OTc0YjQ2Y2JkZGUzMGVmYWRiMWEwMTFkOWQxNzc2ODEyNTku
LmI2YTkzMGY4ODY1NGE5ODIxNWYyZTNlMzRmZWE5Y2NhOGQ1M2YwOTEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGlsZS1sb29wLWJyZWFrLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3doaWxlLWxvb3AtYnJlYWsuaHRtbApAQCAtMzksNyArMzksNyBA
QCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUo
MCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0
ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRl
ciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5
ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC93aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvd2hp
bGUtbG9vcC1jb250aW51ZS5odG1sCmluZGV4IDMwOGVmZTFiMGZmZjAzYmFhNTg1YzdiMTk2MDE3
ZDQ1NTAyY2E2YTguLjQyMjNiZjFjM2EyMTNiYjJmOTMxNGQ0MjVjMzdiZGYwNjJjNDUxZTQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGlsZS1sb29wLWNvbnRpbnVlLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3doaWxlLWxvb3AtY29udGludWUuaHRt
bApAQCAtMzksNyArMzksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQg
c2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChk
ZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9
KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxl
OiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0
IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC93aGxzbC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3dobHNsLmh0bWwKaW5kZXggYmQ4NzA0ODEyNmVmOGE3OGU2NDgzMTc4ZjU1NWY3MGQyNjFhY2Iz
Ni4uOWMyNGMxZjI3N2Q5ZGM2NjQxMDk3MjQyODJlODE4OTVjOWE3NjQxYiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3dobHNsLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3dobHNsLmh0bWwKQEAgLTE5LDcgKzE5LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZy
YWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAw
IHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAog
YXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxl
OiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBm
cmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21l
bnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJp
cCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvemVyby1pbml0aWFsaXpl
LXZhbHVlcy0yLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvemVyby1pbml0aWFsaXpl
LXZhbHVlcy0yLmh0bWwKaW5kZXggMThjOGM1MmFmY2JjOGY1NzNkYzc4ZDBlYTJiZmEwNWVkZDM5
YTgxMC4uZmJmNDVmMDI5YmFkZGZhNzBiOGNhOTI4MDFmZDQxM2VkOTM2MmIzZiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMtMi5odG1s
CisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLTIu
aHRtbApAQCAtNTUsNyArNTUsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxv
YXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFy
dChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3Vy
Y2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvemVyby1pbml0aWFsaXplLXZhbHVlcy5odG1sCmluZGV4IDI0
MTY3MWFiOWRhMTg2ZGEzNmI0OTM2MzY2MDNmYzRjNGYzODkyMjIuLjdmZjcwZDZhZDRhZGY4MjJm
ZWM0OTViMzlkYjUzZjhjZGU2NzJkNmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMuaHRtbApAQCAtMzgsNyArMzgsNyBAQCBmcmFn
bWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDog
U1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNh
bnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9Owog
ICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9p
bnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRy
aWFuZ2xlLXN0cmlwIjsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377310</attachid>
            <date>2019-08-26 19:29:06 -0700</date>
            <delta_ts>2019-08-26 20:19:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201162-20190826192905.patch</filename>
            <type>text/plain</type>
            <size>138486</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmIxNjkzYjBkNTJjM2Zj
ZjUyNTFmN2QyMzI5MDY2OGMxZTRjMDk1Mi4uMzMyM2RjNzE5YTRlY2RhYmI0MjE2NjRlOWNiNDIx
MzViZDQ0NmIyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE5LTA4LTI2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBS
ZXdyaXRlIGFsbCB0ZXN0cyB0byB1c2UgV0hMU0wgYW5kIGRlbGV0ZSB0aGUgaXNXSExTTCBmbGFn
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDExNjIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZSB3YW50
IHRvIGtlZXAgdGhlIE1TTCBjb2RlcGF0aCBmb3IgZGVidWdnaW5nLCBzbyB0aGUgY29kZXBhdGgg
aXNuJ3QgZGVsZXRlZCBlbnRpcmVseSwgYnV0IGl0IGlzIG5vIGxvbmdlciB3ZWIgZXhwb3NlZC4K
KworICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVURldmljZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpXZWJHUFVEZXZpY2U6OmNyZWF0ZVNoYWRlck1vZHVsZSBjb25zdCk6CisgICAgICAg
ICogTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5oOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViZ3B1L1dlYkdQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IuaWRsOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVEZXZpY2UuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9ncHUvR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVTaGFkZXJNb2R1bGVNZXRhbC5tbToKKyAg
ICAgICAgKFdlYkNvcmU6OkdQVVNoYWRlck1vZHVsZTo6dHJ5Q3JlYXRlKToKKwogMjAxOS0wOC0y
NCAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW1RGQ10g
QWRkIHNlY3Rpb24gcmVuZGVyZXJzIHRvIHRoZSBsYXlvdXQgdHJlZSAoVEhFQUQvVEJPRFkvVEZP
T1QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZp
Y2UuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVRGV2aWNlLmNwcApp
bmRleCA4NWZkY2EzYjJiOTRiY2RmOTExMTA2YWMwNmU2ZGQxZjAzYzViNTk5Li41NWY3ZmZiODI2
NGIwNDNjYjEyNmM4ZWIzMWI1NGE1NDgyZDc5NTVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVEZXZpY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViZ3B1L1dlYkdQVURldmljZS5jcHAKQEAgLTE1Myw3ICsxNTMsNyBAQCBSZWY8V2Vi
R1BVQmluZEdyb3VwPiBXZWJHUFVEZXZpY2U6OmNyZWF0ZUJpbmRHcm91cChjb25zdCBXZWJHUFVC
aW5kR3JvdXBEZXNjcmlwdAogUmVmPFdlYkdQVVNoYWRlck1vZHVsZT4gV2ViR1BVRGV2aWNlOjpj
cmVhdGVTaGFkZXJNb2R1bGUoY29uc3QgV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvciYgZGVz
Y3JpcHRvcikgY29uc3QKIHsKICAgICAvLyBGSVhNRTogV2hhdCBjYW4gYmUgdmFsaWRhdGVkIGhl
cmU/Ci0gICAgYXV0byBtb2R1bGUgPSBtX2RldmljZS0+dHJ5Q3JlYXRlU2hhZGVyTW9kdWxlKEdQ
VVNoYWRlck1vZHVsZURlc2NyaXB0b3IgeyBkZXNjcmlwdG9yLmNvZGUsIGRlc2NyaXB0b3IuaXNX
SExTTCB9KTsKKyAgICBhdXRvIG1vZHVsZSA9IG1fZGV2aWNlLT50cnlDcmVhdGVTaGFkZXJNb2R1
bGUoR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvciB7IGRlc2NyaXB0b3IuY29kZSB9KTsKICAgICBy
ZXR1cm4gV2ViR1BVU2hhZGVyTW9kdWxlOjpjcmVhdGUoV1RGTW92ZShtb2R1bGUpKTsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hhZGVyTW9k
dWxlRGVzY3JpcHRvci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hh
ZGVyTW9kdWxlRGVzY3JpcHRvci5oCmluZGV4IGI4ZDk4MTdjZDBhOTRmYmJhZmNkNTM4OGY0NTk3
MGFmNjUxNTU0MTIuLmFmMzJhOTg5ZWQ1YzUwNmRmM2E3ZGNiMDkzNTVjZTUyNjg0YzMwOGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dlYkdQVVNoYWRlck1vZHVs
ZURlc2NyaXB0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVT
aGFkZXJNb2R1bGVEZXNjcmlwdG9yLmgKQEAgLTMzLDcgKzMzLDYgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBzdHJ1Y3QgV2ViR1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvciB7CiAgICAgU3RyaW5n
IGNvZGU7Ci0gICAgYm9vbCBpc1dITFNMOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV2ViR1BVU2hhZGVyTW9k
dWxlRGVzY3JpcHRvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVT
aGFkZXJNb2R1bGVEZXNjcmlwdG9yLmlkbAppbmRleCA5YTJmNTVjOGYyZTM1N2NmN2RkNDFiYWQw
M2QzYTU2Y2ZkMjJjOTk4Li5iOGQ5ZDkzYzcyYWJjOGYxYjdjNTdkMGNmM2RhYjhlMDE3MzI5YWE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XZWJHUFVTaGFkZXJN
b2R1bGVEZXNjcmlwdG9yLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9X
ZWJHUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmlkbApAQCAtMjksNSArMjksNCBAQAogICAgIEVu
YWJsZWRBdFJ1bnRpbWU9V2ViR1BVCiBdIGRpY3Rpb25hcnkgV2ViR1BVU2hhZGVyTW9kdWxlRGVz
Y3JpcHRvciB7CiAgICAgcmVxdWlyZWQgLypBcnJheUJ1ZmZlciovIERPTVN0cmluZyBjb2RlOyAv
LyBGSVhNRTogRE9NU3RyaW5nIGZvciBNVEwgcHJvdG90eXBpbmcgb25seS4KLSAgICBib29sZWFu
IGlzV0hMU0wgPSBmYWxzZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ncHUvR1BVRGV2aWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ncHUvR1BVRGV2aWNlLmgKaW5kZXggNDg3MTNmMmM5ZWI5YjljMmI3MjUzM2IxYTM4M2Uz
MTY0YmVjZjM4Mi4uNThiMTIwMDMxZGYwMWQ3MGY3YjhmN2E1Y2Y2ZDNmZjJlM2Q3MTIwMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVURldmljZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVEZXZpY2UuaApA
QCAtOTUsNiArOTUsOCBAQCBwdWJsaWM6CiAgICAgR1BVU3dhcENoYWluKiBzd2FwQ2hhaW4oKSBj
b25zdCB7IHJldHVybiBtX3N3YXBDaGFpbi5nZXQoKTsgfQogICAgIHZvaWQgc2V0U3dhcENoYWlu
KFJlZlB0cjxHUFVTd2FwQ2hhaW4+JiYpOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIHVz
ZVdITFNMID0gdHJ1ZTsKKwogcHJpdmF0ZToKICAgICBleHBsaWNpdCBHUFVEZXZpY2UoUGxhdGZv
cm1EZXZpY2VTbWFydFB0ciYmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9HUFVTaGFkZXJNb2R1bGVEZXNjcmlwdG9yLmgKaW5k
ZXggNWMzZWNmNmE3YzAxMTFmMjIyM2NiOWJlMmY0NDQ4Mzg2OTI1NWZmZi4uNmNmZTBhZDVhODdi
MzJjNDhhZTM0YmQ3NmQyZjFjNTk4MWJlN2Q1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0dQVVNoYWRlck1vZHVsZURlc2NyaXB0b3IuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvR1BVU2hhZGVyTW9kdWxlRGVzY3Jp
cHRvci5oCkBAIC0zMyw3ICszMyw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RydWN0IEdQ
VVNoYWRlck1vZHVsZURlc2NyaXB0b3IgewogICAgIFN0cmluZyBjb2RlOwotICAgIGJvb2wgaXNX
SExTTDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVTaGFkZXJNb2R1bGVNZXRhbC5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVTaGFkZXJN
b2R1bGVNZXRhbC5tbQppbmRleCBiODZmMDUxNTc1N2MyNWExNWE3NDRkYTgzNTMyMDZjNmZjNzU4
YTFiLi40YWRhNzFmMmQ4YWUxZDdmOWZmYmQxNzdmMWRkZDMzNzk4M2FjZjRiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVU2hhZGVyTW9k
dWxlTWV0YWwubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2Nv
Y29hL0dQVVNoYWRlck1vZHVsZU1ldGFsLm1tCkBAIC00NCw3ICs0NCw3IEBAIFJlZlB0cjxHUFVT
aGFkZXJNb2R1bGU+IEdQVVNoYWRlck1vZHVsZTo6dHJ5Q3JlYXRlKGNvbnN0IEdQVURldmljZSYg
ZGV2aWNlLCBjb25zCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KICAgICAKLSAgICBp
ZiAoZGVzY3JpcHRvci5pc1dITFNMKQorICAgIGlmIChHUFVEZXZpY2U6OnVzZVdITFNMKQogICAg
ICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEdQVVNoYWRlck1vZHVsZShXSExTTDo6Y3JlYXRlU2hh
ZGVyTW9kdWxlKGRlc2NyaXB0b3IuY29kZSkpKTsKIAogICAgIFBsYXRmb3JtU2hhZGVyTW9kdWxl
U21hcnRQdHIgbW9kdWxlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDA1NjQ2YjkwNzg5ODRkOTM0MzM1YTNjZjlmYzQ5Nzhi
ODBhM2Q5OTYuLjA5ODBhYzFiZmVlZmE0ZWM4OTBiMmY5ZTRlZmI3NWY3YzRlNjg1OTggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxMjkgQEAKKzIwMTktMDgtMjYgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZp
ZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbV0hMU0xdIFJld3JpdGUgYWxsIHRlc3RzIHRvIHVz
ZSBXSExTTCBhbmQgZGVsZXRlIHRoZSBpc1dITFNMIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTE2MgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViZ3B1L2JpbmQtZ3JvdXBzLmh0bWw6Cisg
ICAgICAgICogd2ViZ3B1L2JsZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAg
ICogd2ViZ3B1L2JsZW5kLXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2J1
ZmZlci1jb21tYW5kLWJ1ZmZlci1yYWNlcy5odG1sOgorICAgICAgICAqIHdlYmdwdS9jb2xvci13
cml0ZS1tYXNrLXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2NvbXB1dGUt
cGlwZWxpbmUtZXJyb3JzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L2RlcHRoLWVuYWJsZWQtdHJp
YW5nbGUtc3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvZHJhdy1pbmRleGVkLXRyaWFuZ2xl
cy5odG1sOgorICAgICAgICAqIHdlYmdwdS9tc2wtaGFybmVzcy10ZXN0LWV4cGVjdGVkLnR4dDog
UmVtb3ZlZC4KKyAgICAgICAgKiB3ZWJncHUvbXNsLWhhcm5lc3MtdGVzdC5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIHdlYmdwdS9yZW5kZXItY29tbWFuZC1lbmNvZGluZy5odG1sOgorICAgICAg
ICAqIHdlYmdwdS9yZW5kZXItcGlwZWxpbmUtZXJyb3JzLmh0bWw6CisgICAgICAgICogd2ViZ3B1
L3JlbmRlci1waXBlbGluZXMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvc2hhZGVyLW1vZHVsZXMu
aHRtbDoKKyAgICAgICAgKiB3ZWJncHUvc2ltcGxlLXRyaWFuZ2xlLXN0cmlwLmh0bWw6CisgICAg
ICAgICogd2ViZ3B1L3RleHR1cmUtdHJpYW5nbGUtc3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvdmVydGV4LWJ1ZmZlci10cmlhbmdsZS1zdHJpcC5odG1sOgorICAgICAgICAqIHdlYmdwdS92
aWV3cG9ydC1zY2lzc29yLXJlY3QtdHJpYW5nbGUtc3RyaXAuaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvYXJiaXRyYXJ5LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25zLmh0bWw6CisgICAg
ICAgICogd2ViZ3B1L3dobHNsL2J1ZmZlci1mcmFnbWVudC5odG1sOgorICAgICAgICAqIHdlYmdw
dS93aGxzbC9idWZmZXItbGVuZ3RoLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2J1ZmZl
ci12ZXJ0ZXguaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvY2hlY2tlci1zaG91bGQtc2V0
LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLmh0bWw6CisgICAgICAgICogd2Vi
Z3B1L3dobHNsL2NvbXB1dGUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZGVyZWZlcmVu
Y2UtcG9pbnRlci1zaG91bGQtdHlwZS1jaGVjay5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9kZXZpY2UtcHJvcGVyLXR5cGUtY2hlY2tlci5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9kby13aGlsZS1sb29wLWJyZWFrLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2RvLXdo
aWxlLWxvb3AtY29udGludWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZG8td2hpbGUt
bG9vcC5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9kb250LWNyYXNoLXBhcnNpbmctZW51
bS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9kb3QtZXhwcmVzc2lvbnMuaHRtbDoKKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wvZHVwbGljYXRlLXR5cGVzLXNob3VsZC1ub3QtcHJvZHVjZS1k
dXBsaWNhdGUtY3RvcnMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Bl
ci12YXJpYWJsZS1saWZldGltZS0yLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL2Vuc3Vy
ZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxz
bC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLmh0bWw6CisgICAgICAgICogd2ViZ3B1
L3dobHNsL2h1Z2UtYXJyYXkuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvanMvdGVzdC1o
YXJuZXNzLmpzOgorICAgICAgICAoY29udmVydFR5cGVUb0FycmF5VHlwZSk6CisgICAgICAgIChE
YXRhKToKKyAgICAgICAgKEhhcm5lc3MpOgorICAgICAgICAoSGFybmVzcy5wcm90b3R5cGUuYXN5
bmMuY2FsbFR5cGVkRnVuY3Rpb24pOgorICAgICAgICAoSGFybmVzcy5wcm90b3R5cGUuY2FsbFZv
aWRGdW5jdGlvbik6CisgICAgICAgIChIYXJuZXNzLnByb3RvdHlwZS5hc3luYy5jaGVja0NvbXBp
bGVGYWlsKToKKyAgICAgICAgKEhhcm5lc3MucHJvdG90eXBlLl9zZXRVcEFyZ3VtZW50cyk6Cisg
ICAgICAgIChIYXJuZXNzLnByb3RvdHlwZS5hc3luYy5fY2FsbEZ1bmN0aW9uKToKKyAgICAgICAg
KEhhcm5lc3MucHJvdG90eXBlLnNldCBpc1dITFNMKTogRGVsZXRlZC4KKyAgICAgICAgKEhhcm5l
c3MucHJvdG90eXBlLmdldCBpc1dITFNMKTogRGVsZXRlZC4KKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvbG9vcHMtYnJlYWsuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbG9vcHMtY29udGlu
dWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbG9vcHMuaHRtbDoKKyAgICAgICAgKiB3
ZWJncHUvd2hsc2wvbWFrZS1hcnJheS1yZWZlcmVuY2UuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUv
d2hsc2wvbWF0cml4LTIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbWF0cml4LW1lbW9y
eS1sYXlvdXQuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvbWF0cml4Lmh0bWw6CisgICAg
ICAgICogd2ViZ3B1L3dobHNsL25lc3RlZC1kb3QtZXhwcmVzc2lvbi1ydmFsdWUuaHRtbDoKKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wvbmVzdGVkLWxvb3AuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUv
d2hsc2wvbnVsbC1kZXJlZmVyZW5jZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9vb2It
YWNjZXNzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5k
ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5
cmVzb2x2ZXIvYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3do
bHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItbHZhbHVlLmh0bWw6CisgICAgICAgICogd2ViZ3B1
L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvcHJvcGVydHlyZXNvbHZlci9nZXR0ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wv
cHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sOgorICAg
ICAgICAqIHdlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItbHZhbHVl
LTMtbGV2ZWxzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIv
aW5kZXhlci1hbmRlci1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVy
dHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3By
b3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1nZXR0ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZl
bHMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVy
LXNldHRlci1hYnN0cmFjdC1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1sdmFsdWUuaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci5odG1sOgorICAgICAgICAq
IHdlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1s
ZXZlbHMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0
ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Byb3BlcnR5
cmVzb2x2ZXIvc2V0dGVyLWx2YWx1ZS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9yZWFk
LW1vZGlmeS13cml0ZS1oaWdoLXpvbWJpZXMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wv
cmVhZC1tb2RpZnktd3JpdGUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvcmV0dXJuLWxv
Y2FsLXZhcmlhYmxlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEwLmh0bWw6CisgICAgICAgICogd2Vi
Z3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
LTExLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEyLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEzLmh0bWw6
CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzLTE0Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWw6CisgICAgICAg
ICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTE2Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE3Lmh0bWw6CisgICAgICAgICogd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE4
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTE5Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIuaHRtbDoKKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMjAuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjEuaHRtbDoKKyAgICAgICAgKiB3
ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMtMjIuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjMuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hs
c2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQuaHRt
bDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMjUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjYuaHRtbDoKKyAgICAg
ICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjcuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMy5odG1sOgorICAgICAgICAqIHdlYmdw
dS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy00
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTUuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNi5odG1sOgorICAg
ICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy03Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRl
ci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTguaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
OS5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC9zaW1w
bGUtYXJyYXlzLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3N0b3JlLXRvLXByb3BlcnR5
LXVwZGF0ZXMtcHJvcGVybHkuaHRtbDoKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wvdGV4dHVyZXMt
Z2V0ZGltZW5zaW9ucy5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC90ZXh0dXJlcy1sb2Fk
Lmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3RleHR1cmVzLXNhbXBsZS5odG1sOgorICAg
ICAgICAqIHdlYmdwdS93aGxzbC90d28tZGltZW5zaW9uYWwtYXJyYXkuaHRtbDoKKyAgICAgICAg
KiB3ZWJncHUvd2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJsZS0yLmh0bWw6CisgICAgICAgICog
d2ViZ3B1L3dobHNsL3VzZS11bmRlZmluZWQtdmFyaWFibGUuaHRtbDoKKyAgICAgICAgKiB3ZWJn
cHUvd2hsc2wvd2hpbGUtbG9vcC1icmVhay5odG1sOgorICAgICAgICAqIHdlYmdwdS93aGxzbC93
aGlsZS1sb29wLWNvbnRpbnVlLmh0bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3dobHNsLmh0
bWw6CisgICAgICAgICogd2ViZ3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMtMi5odG1s
OgorICAgICAgICAqIHdlYmdwdS93aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLmh0bWw6CisK
IDIwMTktMDgtMjMgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IGNyZWF0ZSBhZGRpdGlvbmFsIGNvbW1hbmQgbGluZSBhcGkgZnVuY3Rp
b25zIGZvciBvdGhlciBjb25zb2xlIG1ldGhvZHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmdwdS9iaW5kLWdyb3Vwcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JpbmQtZ3JvdXBzLmh0
bWwKaW5kZXggMDgzZGJmYjQzOGFlYTRkNGJjNGFjNGMzMTZmNGE1N2M0YWY4YmZhMy4uMTllM2Iy
NTczNjU5NmViMmI1NTM1ZDAwYzk1MWJlODFjNWRkN2Q5MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvd2ViZ3B1L2JpbmQtZ3JvdXBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JpbmQt
Z3JvdXBzLmh0bWwKQEAgLTM1LDcgKzM1LDcgQEAgdGVzdHNbIkNyZWF0ZSBhbmQgdXNlIGEgYmFz
aWMgR1BVQmluZEdyb3VwLiJdID0gYXN5bmMgZGV2aWNlID0+IHsKIAogICAgIGNvbnN0IHBpcGVs
aW5lTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHsgYmluZEdyb3VwTGF5b3V0
czogW2JpbmRHcm91cExheW91dF0gfSk7CiAKLSAgICBjb25zdCBiYXNpY1NoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBiYXNpY0J1ZmZlclNoYWRlciwgaXNX
SExTTDogdHJ1ZSB9KTsKKyAgICBjb25zdCBiYXNpY1NoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBiYXNpY0J1ZmZlclNoYWRlciB9KTsKICAgICBiYXNpY1Bp
cGVsaW5lID0gZGV2aWNlLmNyZWF0ZUNvbXB1dGVQaXBlbGluZSh7CiAgICAgICAgIGxheW91dDog
cGlwZWxpbmVMYXlvdXQsCiAgICAgICAgIGNvbXB1dGVTdGFnZTogewpAQCAtMTM5LDcgKzEzOSw3
IEBAIHRlc3RzWyJDcmVhdGUgYW5kIGFjY2VzcyBhIHVuaWZvcm0tYnVmZmVyIGluIGEgR1BVQmlu
ZEdyb3VwLiJdID0gYXN5bmMgZGV2aWNlID0+CiAKICAgICBjb25zdCBwaXBlbGluZUxheW91dCA9
IGRldmljZS5jcmVhdGVQaXBlbGluZUxheW91dCh7IGJpbmRHcm91cExheW91dHM6IFtiaW5kR3Jv
dXBMYXlvdXRdIH0pOwogCi0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7IGNvZGU6IHVuaWZvcm1CdWZmZXJTaGFkZXIsIGlzV0hMU0w6IHRydWUgfSk7
CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNv
ZGU6IHVuaWZvcm1CdWZmZXJTaGFkZXIgfSk7CiAKICAgICBjb25zdCBwaXBlbGluZSA9IGRldmlj
ZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoewogICAgICAgICBsYXlvdXQ6IHBpcGVsaW5lTGF5b3V0
LApAQCAtMjE2LDcgKzIxNiw3IEBAIHRlc3RzWyJDcmVhdGUgYW5kIGFjY2VzcyBhIHNhbXBsZWQg
dGV4dHVyZSBpbiBhIEdQVUJpbmRHcm91cC4iXSA9IGFzeW5jIGRldmljZSA9CiAgICAgICAgIH1d
CiAgICAgfSk7CiAKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHsgY29kZTogc2FtcGxlZFRleHR1cmVTaGFkZXIsIGlzV0hMU0w6IHRydWUgfSk7Cisg
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6
IHNhbXBsZWRUZXh0dXJlU2hhZGVyIH0pOwogICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2
aWNlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHsgYmluZEdyb3VwTGF5b3V0czogW2JpbmRHcm91cExh
eW91dF0gfSk7CiAKICAgICBjb25zdCBwaXBlbGluZSA9IGRldmljZS5jcmVhdGVDb21wdXRlUGlw
ZWxpbmUoewpAQCAtMzQxLDcgKzM0MSw3IEBAIHRlc3RzWyJDcmVhdGUgYW5kIHVzZSBtdWx0aXBs
ZSBHUFVCaW5kR3JvdXBzIGluIGEgc2luZ2xlIGRpc3BhdGNoLiJdID0gYXN5bmMgZGV2CiAgICAg
ICAgIH1dCiAgICAgfSk7CiAKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHsgY29kZTogY29tYm9TaGFkZXIsIGlzV0hMU0w6IHRydWUgfSk7CisgICAg
Y29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IGNv
bWJvU2hhZGVyIH0pOwogICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZVBp
cGVsaW5lTGF5b3V0KHsgYmluZEdyb3VwTGF5b3V0czogW2JnbDAsIGJnbDEsIGJnbDIsIGJnbDNd
IH0pOwogCiAgICAgY29uc3QgcGlwZWxpbmUgPSBkZXZpY2UuY3JlYXRlQ29tcHV0ZVBpcGVsaW5l
KHsKQEAgLTQxOCw3ICs0MTgsNyBAQCB0ZXN0c1siQmluZCBhIHNpbmdsZSBHUFVCdWZmZXIgd2l0
aCBkaWZmZXJlbnQgb2Zmc2V0cyBpbiBkaWZmZXJlbnQgR1BVQmluZEdyb3VwcwogCiAgICAgY29u
c3QgcGlwZWxpbmVMYXlvdXQgPSBkZXZpY2UuY3JlYXRlUGlwZWxpbmVMYXlvdXQoeyBiaW5kR3Jv
dXBMYXlvdXRzOiBbYmluZEdyb3VwTGF5b3V0XSB9KTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiB1bmlmb3JtQnVmZmVyU2hhZGVy
LCBpc1dITFNMOiB0cnVlIH0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoeyBjb2RlOiB1bmlmb3JtQnVmZmVyU2hhZGVyIH0pOwogCiAgICAgY29u
c3QgcGlwZWxpbmUgPSBkZXZpY2UuY3JlYXRlQ29tcHV0ZVBpcGVsaW5lKHsKICAgICAgICAgbGF5
b3V0OiBwaXBlbGluZUxheW91dCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9ibGVu
ZC1jb2xvci10cmlhbmdsZS1zdHJpcC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLWNv
bG9yLXRyaWFuZ2xlLXN0cmlwLmh0bWwKaW5kZXggZTBhY2ZkMmZlMGQ5ODMzOWFmMDZjMDNjMGJh
OTgzZTY5OGRiYjg0OS4uNjVhODQ0YzBkODgxNTQ0NjM3ZjgxYmE1OGYwY2E0NWRjNjA0NzYxNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlw
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLWNvbG9yLXRyaWFuZ2xlLXN0cmlw
Lmh0bWwKQEAgLTExLDM2ICsxMSwyNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVk
ZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3Qg
VmVydGV4Ci17Ci0gICAgZmxvYXQ0IHBvc2l0aW9uIFtbcG9zaXRpb25dXTsKLX07Ci0KLXZlcnRl
eCBWZXJ0ZXggdmVydGV4X21haW4odWludCB2aWQgW1t2ZXJ0ZXhfaWRdXSkKLXsKLSAgICBWZXJ0
ZXggdjsKK3ZlcnRleCBmbG9hdDQgdmVydGV4X21haW4odWludCB2aWQgOiBTVl9WZXJ0ZXhJRCkg
OiBTVl9Qb3NpdGlvbiB7CisgICAgZmxvYXQ0IHJlc3VsdDsKICAgICBzd2l0Y2ggKHZpZCkgewog
ICAgIGNhc2UgMDoKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgMSwgMCwgMSk7Cisg
ICAgICAgIHJlc3VsdCA9IGZsb2F0NCgtMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgMToKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgLTEsIDAsIDEpOworICAg
ICAgICByZXN1bHQgPSBmbG9hdDQoLTEsIC0xLCAwLCAxKTsKICAgICAgICAgYnJlYWs7CiAgICAg
Y2FzZSAyOgotICAgICAgICB2LnBvc2l0aW9uID0gZmxvYXQ0KDEsIDEsIDAsIDEpOworICAgICAg
ICByZXN1bHQgPSBmbG9hdDQoMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1
bHQ6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICBy
ZXN1bHQgPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICBicmVhazsKICAgICB9Ci0gICAg
cmV0dXJuIHY7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotZnJhZ21lbnQgZmxvYXQ0IGZyYWdt
ZW50X21haW4oKQoteworZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNWX1Rhcmdl
dCAwIHsKICAgICByZXR1cm4gZmxvYXQ0KDAsIDEsIDEsIDEpOwogfQogYDsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS9ibGVuZC10cmlhbmdsZS1zdHJpcC5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L2JsZW5kLXRyaWFuZ2xlLXN0cmlwLmh0bWwKaW5kZXggYzY2NWY1N2YwZmJhNThk
Yjc4NmQ1ZjA0ODRiOWVmNjcxODc5OTRjYy4uMjA2YTBhNzU2ZDhjYzBiY2UxNTNhMTlmZjUxMmU1
Y2UzYzcxM2MyZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLXRyaWFuZ2xl
LXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2JsZW5kLXRyaWFuZ2xlLXN0cmlw
Lmh0bWwKQEAgLTEzLDMyICsxMywyMiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiBjb25zdCBw
b3NpdGlvbkF0dHJpYnV0ZU51bSA9IDA7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVk
ZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3Qg
VmVydGV4SW4KLXsKLSAgICBmbG9hdDQgcG9zaXRpb24gW1thdHRyaWJ1dGUoJHtwb3NpdGlvbkF0
dHJpYnV0ZU51bX0pXV07Ci19OwotCiBzdHJ1Y3QgVmVydGV4T3V0CiB7Ci0gICAgZmxvYXQ0IHBv
c2l0aW9uIFtbcG9zaXRpb25dXTsKLSAgICBmbG9hdDQgY29sb3I7CisgICAgZmxvYXQ0IHBvc2l0
aW9uIDogU1ZfUG9zaXRpb247CisgICAgZmxvYXQ0IGNvbG9yIDogYXR0cmlidXRlKDApOwogfTsK
IAotdmVydGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihWZXJ0ZXhJbiB2ZXJ0ZXhJbiBbW3N0YWdl
X2luXV0pCi17Cit2ZXJ0ZXggVmVydGV4T3V0IHZlcnRleF9tYWluKGZsb2F0NCBwb3NpdGlvbiA6
IGF0dHJpYnV0ZSgke3Bvc2l0aW9uQXR0cmlidXRlTnVtfSkpIHsKICAgICBWZXJ0ZXhPdXQgdk91
dDsKLSAgICB2T3V0LnBvc2l0aW9uID0gdmVydGV4SW4ucG9zaXRpb247CisgICAgdk91dC5wb3Np
dGlvbiA9IHBvc2l0aW9uOwogICAgIHZPdXQuY29sb3IgPSBmbG9hdDQoMCwgMC41LCAwLCAwLjUp
OwogICAgIHJldHVybiB2T3V0OwogfQogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihW
ZXJ0ZXhPdXQgdiBbW3N0YWdlX2luXV0pCitmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihm
bG9hdDQgY29sb3IgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAKIHsKLSAgICByZXR1cm4g
di5jb2xvcjsKKyAgICByZXR1cm4gY29sb3I7CiB9CiBgOwogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJncHUvYnVmZmVyLWNvbW1hbmQtYnVmZmVyLXJhY2VzLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvYnVmZmVyLWNvbW1hbmQtYnVmZmVyLXJhY2VzLmh0bWwKaW5kZXggMDFiMWU1ODRi
NzY4N2VkMDU4NTY5YTg5OGMxYjY5MjljZTA3ZjMxNC4uYTBiNWMzOGU2NGNkYTMxZGVhM2YyY2Vj
NGM3ODBlYjUxMDAxNGI5ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2J1ZmZlci1j
b21tYW5kLWJ1ZmZlci1yYWNlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9idWZmZXIt
Y29tbWFuZC1idWZmZXItcmFjZXMuaHRtbApAQCAtMTEsMzQgKzExLDIyIEBAIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKIAogY29uc3Qgc2hh
ZGVyQ29kZSA9IGAKLSNpbmNsdWRlIDxtZXRhbF9zdGRsaWI+Ci0gICAgCi11c2luZyBuYW1lc3Bh
Y2UgbWV0YWw7Ci0KLXN0cnVjdCBWZXJ0ZXhJbgotewotICAgIGZsb2F0MiB4eSBbW2F0dHJpYnV0
ZSgwKV1dOwotICAgIGZsb2F0MyByZ2IgW1thdHRyaWJ1dGUoMSldXTsKLX07Ci0KIHN0cnVjdCBW
ZXJ0ZXhPdXQKIHsKLSAgICBmbG9hdDQgcG9zaXRpb24gW1twb3NpdGlvbl1dOwotICAgIGZsb2F0
NCBjb2xvcjsKKyAgICBmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsKKyAgICBmbG9hdDQg
Y29sb3IgOiBhdHRyaWJ1dGUoMCk7CiB9OwogCi12ZXJ0ZXggVmVydGV4T3V0IHZlcnRleF9tYWlu
KFZlcnRleEluIHZlcnRleEluIFtbc3RhZ2VfaW5dXSkKLXsKK3ZlcnRleCBWZXJ0ZXhPdXQgdmVy
dGV4X21haW4oZmxvYXQyIHh5IDogYXR0cmlidXRlKDApLCBmbG9hdDMgcmdiIDogYXR0cmlidXRl
KDEpKSB7CiAgICAgVmVydGV4T3V0IHZPdXQ7Ci0gICAgdk91dC5wb3NpdGlvbiA9IGZsb2F0NCh2
ZXJ0ZXhJbi54eSwgMCwgMSk7Ci0gICAgdk91dC5jb2xvciA9IGZsb2F0NCh2ZXJ0ZXhJbi5yZ2Is
IDEpOwotCisgICAgdk91dC5wb3NpdGlvbiA9IGZsb2F0NCh4eSwgMCwgMSk7CisgICAgdk91dC5j
b2xvciA9IGZsb2F0NChyZ2IsIDEpOwogICAgIHJldHVybiB2T3V0OwogfQogCi1mcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXhPdXQgdiBbW3N0YWdlX2luXV0pCitmcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRfbWFpbihmbG9hdDQgY29sb3IgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFy
Z2V0IDAKIHsKLSAgICByZXR1cm4gdi5jb2xvcjsKKyAgICByZXR1cm4gY29sb3I7CiB9CiBgCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9jb2xvci13cml0ZS1tYXNrLXRyaWFuZ2xl
LXN0cmlwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvY29sb3Itd3JpdGUtbWFzay10cmlhbmds
ZS1zdHJpcC5odG1sCmluZGV4IDJmM2YxMmMzYmM2YjQ0ZjFiNzBiOGIwNjc1YWEwMDdjNGRkOGY4
MDQuLjI4N2VmZGU0YTJlMTc4ZGUzMzVjZDAxN2M3MzNmMmM0YWVjOTAyM2UgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS9jb2xvci13cml0ZS1tYXNrLXRyaWFuZ2xlLXN0cmlwLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2NvbG9yLXdyaXRlLW1hc2stdHJpYW5nbGUtc3RyaXAu
aHRtbApAQCAtMTEsMzUgKzExLDI3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICB0ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKIAogY29uc3Qgc2hhZGVyQ29kZSA9IGAKLSNpbmNsdWRl
IDxtZXRhbF9zdGRsaWI+Ci0gICAgCi11c2luZyBuYW1lc3BhY2UgbWV0YWw7Ci0KLXN0cnVjdCBW
ZXJ0ZXgKLXsKLSAgICBmbG9hdDQgcG9zaXRpb24gW1twb3NpdGlvbl1dOwotfTsKLQotdmVydGV4
IFZlcnRleCB2ZXJ0ZXhfbWFpbih1aW50IHZpZCBbW3ZlcnRleF9pZF1dKQordmVydGV4IGZsb2F0
NCB2ZXJ0ZXhfbWFpbih1aW50IHZpZCA6IFNWX1ZlcnRleElEKSA6IFNWX1Bvc2l0aW9uCiB7Ci0g
ICAgVmVydGV4IHY7CisgICAgZmxvYXQ0IHY7CiAgICAgc3dpdGNoICh2aWQpIHsKICAgICBjYXNl
IDA6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoLTEsIDEsIDAsIDEpOworICAgICAgICB2
ID0gZmxvYXQ0KC0xLCAxLCAwLCAxKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAxOgotICAg
ICAgICB2LnBvc2l0aW9uID0gZmxvYXQ0KC0xLCAtMSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9h
dDQoLTEsIC0xLCAwLCAxKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAyOgotICAgICAgICB2
LnBvc2l0aW9uID0gZmxvYXQ0KDEsIDEsIDAsIDEpOworICAgICAgICB2ID0gZmxvYXQ0KDEsIDEs
IDAsIDEpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgotICAgICAgICB2LnBvc2l0aW9u
ID0gZmxvYXQ0KDEsIC0xLCAwLCAxKTsKKyAgICAgICAgdiA9IGZsb2F0NCgxLCAtMSwgMCwgMSk7
CisgICAgICAgIGJyZWFrOwogICAgIH0KICAgICByZXR1cm4gdjsKIH0KIAotZnJhZ21lbnQgZmxv
YXQ0IGZyYWdtZW50X21haW4oKQorZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNW
X1RhcmdldCAwCiB7CiAgICAgcmV0dXJuIGZsb2F0NCgxLCAxLCAxLCAxKTsKIH0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3dlYmdwdS9jb21wdXRlLXBpcGVsaW5lLWVycm9ycy5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L2NvbXB1dGUtcGlwZWxpbmUtZXJyb3JzLmh0bWwKaW5kZXggZjhiYmZl
MGRjZWZmZjkzNDhiMWYyYmEyYmNkNGIwYjAyZmQ2NTgyMi4uZTk3NTQ0ZDkzY2U5ZDkyZmMyM2M3
NzAwYjI5MjVmZTdkNzhhNTI1ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L2NvbXB1
dGUtcGlwZWxpbmUtZXJyb3JzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2NvbXB1dGUt
cGlwZWxpbmUtZXJyb3JzLmh0bWwKQEAgLTE0LDcgKzE0LDcgQEAgdGVzdHNbIkNvbXB1dGUgY29t
cGlsYXRpb24gZmFpbGVkIGR1ZSB0byBpbmNvcnJlY3QgZW50cnkgcG9pbnQgc3RyaW5nLiJdID0g
YXN5bmMKIFtudW10aHJlYWRzKDEsIDEsIDEpXQogY29tcHV0ZSB2b2lkIF9jb21wdXRlX21haW4o
KSB7IH0KIGA7Ci0gICAgZ29vZE1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBj
b2RlOiBnb29kV0hMU0wsIGlzV0hMU0w6IHRydWUgfSk7CisgICAgZ29vZE1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBnb29kV0hMU0wgfSk7CiAKICAgICBkZXZpY2Uu
cHVzaEVycm9yU2NvcGUoInZhbGlkYXRpb24iKTsKIApAQCAtODIsNCArODIsNCBAQCBrZXJuZWwg
dm9pZCBfY29tcHV0ZV9tYWluKCkgeyB9CiAKIHJ1blRlc3RzV2l0aERldmljZSh0ZXN0cyk7CiA8
L3NjcmlwdD4KLTwvYm9keT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L2JvZHk+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvZGVwdGgtZW5hYmxlZC10cmlhbmdsZS1zdHJp
cC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2RlcHRoLWVuYWJsZWQtdHJpYW5nbGUtc3RyaXAu
aHRtbAppbmRleCBmYjU1OWE4MzkyYjJmNzQxODliZjc2ZWFmMWZhNDI5NWMwNzhiZGE1Li4xMzQ0
MjRiZTg2NTJlN2E2ZmM2Nzg3ZDIzNDFhMzdiYzA0ZGRmOTllIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvZGVwdGgtZW5hYmxlZC10cmlhbmdsZS1zdHJpcC5odG1sCisrKyBiL0xheW91
dFRlc3RzL3dlYmdwdS9kZXB0aC1lbmFibGVkLXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAgLTExLDI1
ICsxMSwxNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGli
PgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4KLXsKLSAg
ICBmbG9hdDQgcG9zaXRpb24gW1thdHRyaWJ1dGUoMCldXTsKLX07Ci0KIHN0cnVjdCBWZXJ0ZXhP
dXQKIHsKLSAgICBmbG9hdDQgcG9zaXRpb24gW1twb3NpdGlvbl1dOwotICAgIGZsb2F0NCBjb2xv
cjsKKyAgICBmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsKKyAgICBmbG9hdDQgY29sb3Ig
OiBhdHRyaWJ1dGUoMCk7CiB9OwogCi12ZXJ0ZXggVmVydGV4T3V0IHZlcnRleF9tYWluKFZlcnRl
eEluIHZlcnRleEluIFtbc3RhZ2VfaW5dXSwgdWludCBpaWQgW1tpbnN0YW5jZV9pZF1dKQordmVy
dGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihmbG9hdDQgcG9zaXRpb24gOiBhdHRyaWJ1dGUoMCks
IHVpbnQgaWlkIDogU1ZfSW5zdGFuY2VJRCkKIHsKICAgICBWZXJ0ZXhPdXQgdk91dDsKLSAgICB2
T3V0LnBvc2l0aW9uID0gdmVydGV4SW4ucG9zaXRpb247CisgICAgdk91dC5wb3NpdGlvbiA9IHBv
c2l0aW9uOwogCiAgICAgaWYgKGlpZCA9PSAwKSB7CiAgICAgICAgIHZPdXQucG9zaXRpb24ueiA9
IDAuNTsKQEAgLTQxLDkgKzMyLDkgQEAgdmVydGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihWZXJ0
ZXhJbiB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0sIHVpbnQgaWlkIFtbaW5zdGFuY2UKICAgICByZXR1
cm4gdk91dDsKIH0KIAotZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oVmVydGV4T3V0IHYg
W1tzdGFnZV9pbl1dKQorZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oZmxvYXQ0IGNvbG9y
IDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwCiB7Ci0gICAgcmV0dXJuIHYuY29sb3I7Cisg
ICAgcmV0dXJuIGNvbG9yOwogfQogYAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
ZHJhdy1pbmRleGVkLXRyaWFuZ2xlcy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L2RyYXctaW5k
ZXhlZC10cmlhbmdsZXMuaHRtbAppbmRleCAxMWEyYjQ2ZWVmMTExMmY0NzhiNzQ4MDNiYjA1YmEz
NTk3YWM0MzMyLi5kMjIxYjNiZDA1YWYzOWRiMjhmNzU1ZjA4NTBkNTYxZDFiZjdhY2E0IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvZHJhdy1pbmRleGVkLXRyaWFuZ2xlcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS9kcmF3LWluZGV4ZWQtdHJpYW5nbGVzLmh0bWwKQEAgLTEx
LDMzICsxMSwyMyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3Rk
bGliPgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4KLXsK
LSAgICBmbG9hdDQgcG9zaXRpb24gW1thdHRyaWJ1dGUoMCldXTsKLSAgICBmbG9hdCBncmVlbiBb
W2F0dHJpYnV0ZSgxKV1dOwotfTsKLQogc3RydWN0IFZlcnRleE91dAogewotICAgIGZsb2F0NCBw
b3NpdGlvbiBbW3Bvc2l0aW9uXV07Ci0gICAgZmxvYXQ0IGNvbG9yOworICAgIGZsb2F0NCBwb3Np
dGlvbiA6IFNWX1Bvc2l0aW9uOworICAgIGZsb2F0NCBjb2xvciA6IGF0dHJpYnV0ZSgwKTsKIH07
CiAKLXZlcnRleCBWZXJ0ZXhPdXQgdmVydGV4X21haW4oVmVydGV4SW4gdmVydGV4SW4gW1tzdGFn
ZV9pbl1dKQordmVydGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihmbG9hdDQgcG9zaXRpb24gOiBh
dHRyaWJ1dGUoMCksIGZsb2F0IGdyZWVuIDogYXR0cmlidXRlKDEpKQogewogICAgIFZlcnRleE91
dCB2T3V0OwotICAgIHZPdXQucG9zaXRpb24gPSB2ZXJ0ZXhJbi5wb3NpdGlvbjsKLSAgICB2T3V0
LmNvbG9yID0gZmxvYXQ0KDAsIHZlcnRleEluLmdyZWVuLCAwLCAxKTsKKyAgICB2T3V0LnBvc2l0
aW9uID0gcG9zaXRpb247CisgICAgdk91dC5jb2xvciA9IGZsb2F0NCgwLCBncmVlbiwgMCwgMSk7
CiAgICAgcmV0dXJuIHZPdXQ7CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKFZl
cnRleE91dCB2IFtbc3RhZ2VfaW5dXSkKK2ZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKGZs
b2F0NCBjb2xvciA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMAogewotICAgIHJldHVybiB2
LmNvbG9yOworICAgIHJldHVybiBjb2xvcjsKIH0KIGAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvd2ViZ3B1L21zbC1oYXJuZXNzLXRlc3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L21zbC1oYXJuZXNzLXRlc3QtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBlODcwOTU2MzJjNjFlYWUzMWZiODFkZDQ3ZDA1MDdkMmIzZDhiZGMwLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3dlYmdw
dS9tc2wtaGFybmVzcy10ZXN0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICsw
LDAgQEAKLQotUEFTUyBSZXR1cm4gYSBsaXRlcmFsIG9mIHR5cGUgYm9vbC4gCi1QQVNTIFJldHVy
biBhbiBleHBlY3RlZCBmbG9hdDQgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgaW50
IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIHVjaGFyIHZhbHVlLiAKLVBBU1MgUmV0
dXJuIGFuIGV4cGVjdGVkIHVpbnQgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgZmxv
YXQgdmFsdWUuIAotUEFTUyBVcGxvYWQgYW5kIHJldHVybiBhIGJvb2wgdmFsdWUuIAotUEFTUyBS
ZXR1cm4gYW4gZXhwZWN0ZWQgZmxvYXQ0IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVk
IGludCB2YWx1ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCB1Y2hhciB2YWx1ZS4gCi1QQVNT
IFJldHVybiBhbiBleHBlY3RlZCB1aW50IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVk
IGZsb2F0IHZhbHVlLiAKLVBBU1MgVXBsb2FkIG1hbnkgYm9vbCB2YWx1ZXMgYW5kIHJldHVybiBh
IGNhbGN1bGF0ZWQgcmVzdWx0LiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIGZsb2F0NCB2YWx1
ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBpbnQgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4g
ZXhwZWN0ZWQgdWNoYXIgdmFsdWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgdWludCB2YWx1
ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBmbG9hdCB2YWx1ZS4gCi1QQVNTIEFjY2VzcyBh
bmQgcmV0dXJuIGEgc2luZ2xlIGJvb2wgdGhyb3VnaCBhIGJvb2wqLiAKLVBBU1MgUmV0dXJuIGFu
IGV4cGVjdGVkIGZsb2F0NCB2YWx1ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBpbnQgdmFs
dWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgdWNoYXIgdmFsdWUuIAotUEFTUyBSZXR1cm4g
YW4gZXhwZWN0ZWQgdWludCB2YWx1ZS4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBmbG9hdCB2
YWx1ZS4gCi1QQVNTIEFjY2VzcyBtdWx0aXBsZSBib29scyB0aHJvdWdoIHZhcmlvdXMgYnVmZmVy
cyBhbmQgcmV0dXJuIGEgYm9vbC4gCi1QQVNTIFJldHVybiBhbiBleHBlY3RlZCBmbG9hdDQgdmFs
dWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgaW50IHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFu
IGV4cGVjdGVkIHVjaGFyIHZhbHVlLiAKLVBBU1MgUmV0dXJuIGFuIGV4cGVjdGVkIHVpbnQgdmFs
dWUuIAotUEFTUyBSZXR1cm4gYW4gZXhwZWN0ZWQgZmxvYXQgdmFsdWUuIAotUEFTUyBVcGxvYWQg
YW5kIGNhbGN1bGF0ZSBhIHJlc3VsdCBmcm9tIHZhcmllZCBhcmd1bWVudCB0eXBlcy4gCi1QQVNT
IFN0b3JlIGludG8gYSBmbG9hdDQqLiAKLVBBU1MgVXBsb2FkIGEgdWNoYXIqIGFuZCBzdG9yZSBp
bnRvIGEgdWNoYXIqLiAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJu
ZXNzLXRlc3QuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS9tc2wtaGFybmVzcy10ZXN0Lmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVhMzAwNzEyM2U5NWVlYjAyMzM5OWUzZWEw
NDExMDEwMzgwZGI0YzAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L21zbC1oYXJuZXNzLXRlc3QuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDIwOSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPG1ldGEgY2hh
cnNldD11dGYtOD4KLTx0aXRsZT5UZXN0IHRoZSBXSExTTCB0ZXN0IGhhcm5lc3MuPC90aXRsZT4K
LTxzY3JpcHQgc3JjPSJ3aGxzbC9qcy90ZXN0LWhhcm5lc3MuanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+
Ci1jb25zdCBlcHNpbG9uID0gMC4wMDAxOwotCi1jb25zdCBudW1lcmljU2NhbGFyVHlwZXMgPSBb
ImludCIsICJ1Y2hhciIsICJ1aW50IiwgImZsb2F0Il07Ci0KLWNvbnN0IG51bWVyaWNTY2FsYXJG
dW5jcyA9IHsKLSAgICAiaW50IjogY2FsbEludEZ1bmN0aW9uLAotICAgICJ1Y2hhciI6IGNhbGxV
Y2hhckZ1bmN0aW9uLAotICAgICJ1aW50IjogY2FsbFVpbnRGdW5jdGlvbiwKLSAgICAiZmxvYXQi
OiBjYWxsRmxvYXRGdW5jdGlvbgotfTsKLQotY29uc3Qgc2NhbGFyQXJnTWFrZXJzID0gewotICAg
ICJpbnQiOiBtYWtlSW50LAotICAgICJ1Y2hhciI6IG1ha2VVY2hhciwKLSAgICAidWludCI6IG1h
a2VVaW50LAotICAgICJmbG9hdCI6IG1ha2VGbG9hdAotfTsKLQotbGV0IG1zbFRlc3RzID0ge307
Ci0KLW1zbFRlc3RzLmxpdGVyYWxzID0gKCkgPT4gewotICAgIGNoZWNrQm9vbHMoIlJldHVybiBh
IGxpdGVyYWwgb2YgdHlwZSBib29sLiIsICJyZXR1cm4gdHJ1ZTsiKTsKLSAgICBjaGVja0Zsb2F0
NHMoInJldHVybiBmbG9hdDQoMCwgMSwgMiwgMyk7Iik7Ci0gICAgY2hlY2tOdW1lcmljU2NhbGFy
cygicmV0dXJuIDQyOyIsIFtdLCA0Mik7Ci19OwotCi1tc2xUZXN0cy5zaW5nbGVBcmd1bWVudCA9
ICgpID0+IHsKLSAgICBjaGVja0Jvb2xzKCJVcGxvYWQgYW5kIHJldHVybiBhIGJvb2wgdmFsdWUu
IiwgInJldHVybiBpbjA7IiwgW3RydWVdKTsKLSAgICBjaGVja0Zsb2F0NHMoInJldHVybiBpbjAu
d3p5eDsiLCBbWzMsIDIsIDEsIDBdXSk7Ci0gICAgY2hlY2tOdW1lcmljU2NhbGFycygicmV0dXJu
IGluMDsiLCBbNDJdLCA0Mik7Ci19OwotCi1tc2xUZXN0cy5tYW55QXJndW1lbnRzID0gKCkgPT4g
ewotICAgIGNoZWNrQm9vbHMoIlVwbG9hZCBtYW55IGJvb2wgdmFsdWVzIGFuZCByZXR1cm4gYSBj
YWxjdWxhdGVkIHJlc3VsdC4iLAotICAgICAgICAicmV0dXJuIGluMCAmIGluMSAmIGluMiAmIGlu
MyAmIGluNCAmIGluNSAmIGluNiAmIGluNzsiLCAgCi0gICAgICAgIFt0cnVlLCB0cnVlLCB0cnVl
LCB0cnVlLCB0cnVlLCB0cnVlLCB0cnVlLCB0cnVlXSk7Ci0KLSAgICBjb25zdCBib2R5ID0gYHJl
dHVybiBpbjAgKyBpbjEgKyBpbjIgKyBpbjMgKyBpbjQgKyBpbjUgKyBpbjYgKyBpbjc7YDsKLSAg
ICBsZXQgYXJncyA9IFtdOwotICAgIGZvciAobGV0IGkgPSAwOyBpIDwgODsgKytpKQotICAgICAg
ICBhcmdzLnB1c2goWzAsIDEsIDIsIDNdKTsKLSAgICBjaGVja0Zsb2F0NHMoYm9keSwgYXJncywg
WzAsIDgsIDE2LCAyNF0pOwotICAgIGNoZWNrTnVtZXJpY1NjYWxhcnMoYm9keSwgWzAsIDEsIDIs
IDMsIDQsIDUsIDYsIDddLCAyOCk7Ci19OwotCi1tc2xUZXN0cy5idWZmZXJzV2l0aE9uZVZhbHVl
ID0gKCkgPT4gewotICAgIGNvbnN0IGJvZHkgPSBgcmV0dXJuIGluMFswXTtgCi0gICAgY2hlY2tC
b29scygiQWNjZXNzIGFuZCByZXR1cm4gYSBzaW5nbGUgYm9vbCB0aHJvdWdoIGEgYm9vbCouIiwg
Ym9keSwgW1t0cnVlXV0pOwotICAgIGNoZWNrRmxvYXQ0cyhib2R5LCBbW1swLCAxLCAyLCAzXV1d
KTsKLSAgICBjaGVja051bWVyaWNTY2FsYXJzKGJvZHksIFtbNDJdXSwgNDIpOwotfTsKLQotbXNs
VGVzdHMubXVsdGlwbGVCdWZmZXJBcmd1bWVudHMgPSAoKSA9PiB7Ci0gICAgY2hlY2tCb29scygi
QWNjZXNzIG11bHRpcGxlIGJvb2xzIHRocm91Z2ggdmFyaW91cyBidWZmZXJzIGFuZCByZXR1cm4g
YSBib29sLiIsIAotICAgICAgICAicmV0dXJuIGluMFswXSAmIGluMFsxXSAmIGluMFsyXSAmIGlu
MSAmIGluMlswXTsiLCAKLSAgICAgICAgW1t0cnVlLCB0cnVlLCB0cnVlXSwgdHJ1ZSwgW3RydWVd
XSk7Ci0gICAgCi0gICAgY29uc3QgYm9keSA9IGByZXR1cm4gaW4wWzBdICsgaW4wWzFdICsgaW4w
WzJdICsgaW4xICsgaW4yWzBdO2A7Ci0gICAgY29uc3QgdmVjdG9yID0gWzAsIDEsIDIsIDNdOwot
ICAgIGNoZWNrRmxvYXQ0cyhib2R5LCBbW3ZlY3RvciwgdmVjdG9yLCB2ZWN0b3JdLCB2ZWN0b3Is
IFt2ZWN0b3JdXSwgWzAsIDUsIDEwLCAxNV0pOwotICAgIGNoZWNrTnVtZXJpY1NjYWxhcnMoYm9k
eSwgW1swLCAxLCAyXSwgMywgWzRdXSwgMTApOwotfTsKLQotbXNsVGVzdHMubXVsdGlwbGVBcmd1
bWVudFR5cGVzID0gKCkgPT4gewotICAgIGNvbnN0IHNyYyA9IGBmbG9hdCB0ZXN0KGludCBpLCB1
Y2hhciBjLCBkZXZpY2UgdWludCogdSwgYm9vbCBiLCBkZXZpY2UgYm9vbCogYnMsIGZsb2F0NCBm
NCwgZGV2aWNlIGZsb2F0KiBmcykKLSAgICB7Ci0gICAgICAgIGlmIChiICYmIGJzWzBdICYmIGJz
WzFdKQotICAgICAgICAgICAgcmV0dXJuIGkgKyBjICsgdVswXSArIGY0LnggKyBmNC55ICsgZjQu
eiArIGY0LncgKyBmc1swXSArIGZzWzFdOwotICAgICAgICAKLSAgICAgICAgcmV0dXJuIDA7Ci0g
ICAgfWA7Ci0gICAgY29uc3QgaSA9IG1ha2VJbnQoMSk7Ci0gICAgY29uc3QgYyA9IG1ha2VVY2hh
cigyKTsKLSAgICBjb25zdCB1ID0gbWFrZVVpbnQoWzNdKTsKLSAgICBjb25zdCBiID0gbWFrZUJv
b2wodHJ1ZSk7Ci0gICAgY29uc3QgYnMgPSBtYWtlQm9vbChbdHJ1ZSwgdHJ1ZV0pOwotICAgIGNv
bnN0IGY0ID0gbWFrZUZsb2F0NChbNCwgNSwgNiwgN10pOwotICAgIGNvbnN0IGZzID0gbWFrZUZs
b2F0KFs4LCA5XSk7Ci0gICAgd2ViR1BVUHJvbWlzZVRlc3QoKCkgPT4gewotICAgICAgICByZXR1
cm4gY2FsbEZsb2F0RnVuY3Rpb24oc3JjLCAidGVzdCIsIFtpLCBjLCB1LCBiLCBicywgZjQsIGZz
XSkudGhlbihyZXN1bHQgPT4gewotICAgICAgICAgICAgYXNzZXJ0X2FwcHJveF9lcXVhbHMocmVz
dWx0LCA0NSwgZXBzaWxvbiwgIlRlc3QgcmV0dXJuZWQgZXhwZWN0ZWQgdmFsdWUuIik7Ci0gICAg
ICAgIH0pOwotICAgIH0sICJVcGxvYWQgYW5kIGNhbGN1bGF0ZSBhIHJlc3VsdCBmcm9tIHZhcmll
ZCBhcmd1bWVudCB0eXBlcy4iKTsKLX07Ci0KLW1zbFRlc3RzLmJ1ZmZlclN0b3JlcyA9ICgpID0+
IHsKLSAgICBsZXQgc3JjID0gYHZvaWQgdGVzdChkZXZpY2UgZmxvYXQ0KiBvdXQpIHsKLSAgICAg
ICAgKm91dCA9IGZsb2F0NCgwLCAxLCAyLCAzKTsKLSAgICB9YDsKLSAgICBjb25zdCBmbG9hdDRP
dXQgPSBtYWtlRmxvYXQ0KFtbMCwgMCwgMCwgMF1dKTsKLSAgICBjYWxsVm9pZEZ1bmN0aW9uKHNy
YywgInRlc3QiLCBmbG9hdDRPdXQpOwotCi0gICAgd2ViR1BVUHJvbWlzZVRlc3QoKCkgPT4gewot
ICAgICAgICByZXR1cm4gZmxvYXQ0T3V0LmdldEFycmF5QnVmZmVyKCkudGhlbihhcnJheUJ1ZmZl
ciA9PiB7Ci0gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgRmxvYXQzMkFycmF5KGFycmF5
QnVmZmVyKTsKLSAgICAgICAgICAgIGZvciAobGV0IGk7IGkgPCA0OyArK2kpIHsKLSAgICAgICAg
ICAgICAgICBhc3NlcnRfYXBwcm94X2VxdWFscyhyZXN1bHRbaV0sIGksICJUZXN0IHN0b3JlZCBl
eHBlY3RlZCB2YWx1ZXMuIik7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0pOwotICAgIH0sICJT
dG9yZSBpbnRvIGEgZmxvYXQ0Ki4iKTsKLQotICAgIHNyYyA9IGB2b2lkIHRlc3QoZGV2aWNlIHVj
aGFyKiBpbiwgZGV2aWNlIHVjaGFyKiBvdXQpIHsKLSAgICAgICAgZm9yICh1aW50IGkgPSAwOyBp
IDwgNTsgKytpKQotICAgICAgICAgICAgb3V0W2ldID0gaW5baV07Ci0gICAgfWA7Ci0gICAgY29u
c3QgYXJyYXkgPSBbMCwgMSwgMiwgMywgNF07Ci0gICAgY29uc3QgaW5wdXQgPSBtYWtlVWNoYXIo
YXJyYXkpOwotICAgIGNvbnN0IG91dHB1dCA9IG1ha2VVY2hhcihbMCwgMCwgMCwgMCwgMF0pOwot
ICAgIGNhbGxWb2lkRnVuY3Rpb24oc3JjLCAidGVzdCIsIFtpbnB1dCwgb3V0cHV0XSk7Ci0KLSAg
ICB3ZWJHUFVQcm9taXNlVGVzdCgoKSA9PiB7Ci0gICAgICAgIHJldHVybiBvdXRwdXQuZ2V0QXJy
YXlCdWZmZXIoKS50aGVuKGFycmF5QnVmZmVyID0+IHsKLSAgICAgICAgICAgIGNvbnN0IHJlc3Vs
dCA9IG5ldyBVaW50OEFycmF5KGFycmF5QnVmZmVyKTsKLSAgICAgICAgICAgIGFzc2VydF9hcnJh
eV9lcXVhbHMoYXJyYXksIHJlc3VsdCwgIlRlc3Qgc3RvcmVkIGV4cGVjdGVkIHZhbHVlcy4iKTsK
LSAgICAgICAgfSk7Ci0gICAgfSwgIlVwbG9hZCBhIHVjaGFyKiBhbmQgc3RvcmUgaW50byBhIHVj
aGFyKi4iKTsKLX07Ci0KLXdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4gewot
ICAgIGhhcm5lc3MuaXNXSExTTCA9IGZhbHNlOwotICAgIGZvciAoY29uc3QgbmFtZSBpbiBtc2xU
ZXN0cykgewotICAgICAgICBtc2xUZXN0c1tuYW1lXSgpOwotICAgIH0KLX0pOwotCi0vKiBIZWxw
ZXIgZnVuY3Rpb25zICovCi0KLWNvbnN0IGNoZWNrTnVtZXJpY1NjYWxhcnMgPSAoYm9keSwgYXJn
VmFsdWVzLCBleHBlY3RlZCkgPT4gewotICAgIGxldCBmdW5jdGlvbnMgPSBbXTsKLSAgICBsZXQg
c3JjID0gIiI7Ci0gICAgZm9yIChsZXQgdHlwZSBvZiBudW1lcmljU2NhbGFyVHlwZXMpIHsKLSAg
ICAgICAgY29uc3QgbmFtZSA9IGAke3R5cGV9VGVzdGA7Ci0KLSAgICAgICAgbGV0IGlucHV0QXJn
cyA9IFtdOwotICAgICAgICBsZXQgdmFsdWVzID0gW107Ci0gICAgICAgIGZvciAobGV0IGkgPSAw
OyBpIDwgYXJnVmFsdWVzLmxlbmd0aDsgKytpKSB7Ci0gICAgICAgICAgICBjb25zdCBpc1BvaW50
ZXIgPSBBcnJheS5pc0FycmF5KGFyZ1ZhbHVlc1tpXSk7Ci0gICAgICAgICAgICBpbnB1dEFyZ3Mu
cHVzaChgJHtpc1BvaW50ZXIgPyAiZGV2aWNlICIgOiAiIn0ke3R5cGV9JHtpc1BvaW50ZXIgPyAi
KiIgOiAiIn0gaW4ke2l9YCk7Ci0gICAgICAgICAgICB2YWx1ZXMucHVzaChzY2FsYXJBcmdNYWtl
cnNbdHlwZV0oYXJnVmFsdWVzW2ldKSk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHNy
YyArPSBgJHt0eXBlfSAke25hbWV9KCR7aW5wdXRBcmdzLmpvaW4oIiwgIil9KSB7ICR7Ym9keX0g
fQotICAgICAgICBgOwotICAgICAgICBmdW5jdGlvbnMucHVzaCh7IHR5cGU6IHR5cGUsIG5hbWU6
IG5hbWUsIGFyZ3M6IHZhbHVlcywgZXhwZWN0ZWQ6IGV4cGVjdGVkIH0pOwotICAgIH0KLQotICAg
IGZvciAoY29uc3QgZiBvZiBmdW5jdGlvbnMpIHsKLSAgICAgICAgY29uc3QgY2FsbEZ1bmMgPSBu
dW1lcmljU2NhbGFyRnVuY3NbZi50eXBlXTsKLSAgICAgICAgd2ViR1BVUHJvbWlzZVRlc3QoYXN5
bmMgKCkgPT4gewotICAgICAgICAgICAgcmV0dXJuIGNhbGxGdW5jKHNyYywgZi5uYW1lLCBmLmFy
Z3MpLnRoZW4ocmVzdWx0ID0+IHsKLSAgICAgICAgICAgICAgICBhc3NlcnRfYXBwcm94X2VxdWFs
cyhyZXN1bHQsIGYuZXhwZWN0ZWQsIGVwc2lsb24sICJUZXN0IHJldHVybmVkIGV4cGVjdGVkIHZh
bHVlLiIpOwotICAgICAgICAgICAgfSk7Ci0gICAgICAgIH0sIGBSZXR1cm4gYW4gZXhwZWN0ZWQg
JHtmLnR5cGV9IHZhbHVlLmApOwotICAgIH0KLX07Ci0KLWNvbnN0IGNoZWNrQm9vbHMgPSAobXNn
ID0gIlJldHVybiBhbiBleHBlY3RlZCBib29sIHZhbHVlLiIsIGJvZHksIGFyZ1ZhbHVlcyA9IFtd
LCBleHBlY3RlZCA9IHRydWUpID0+IHsKLSAgICBsZXQgc3JjID0gIiI7Ci0gICAgbGV0IGlucHV0
QXJncyA9IFtdOwotICAgIGxldCB2YWx1ZXMgPSBbXTsKLSAgICBmb3IgKGxldCBpID0gMDsgaSA8
IGFyZ1ZhbHVlcy5sZW5ndGg7ICsraSkgewotICAgICAgICBjb25zdCBpc1BvaW50ZXIgPSBBcnJh
eS5pc0FycmF5KGFyZ1ZhbHVlc1tpXSk7Ci0gICAgICAgIGlucHV0QXJncy5wdXNoKGAke2lzUG9p
bnRlciA/ICJkZXZpY2UgIiA6ICIifWJvb2wke2lzUG9pbnRlciA/ICIqIiA6ICIifSBpbiR7aX1g
KTsKLSAgICAgICAgdmFsdWVzLnB1c2gobWFrZUJvb2woYXJnVmFsdWVzW2ldKSk7Ci0gICAgfQot
Ci0gICAgc3JjICs9IGBib29sIGJvb2xUZXN0KCR7aW5wdXRBcmdzLmpvaW4oIiwgIil9KSB7ICR7
Ym9keX0gfQotICAgIGA7Ci0KLSAgICB3ZWJHUFVQcm9taXNlVGVzdChhc3luYyAoKSA9PiB7Ci0g
ICAgICAgIHJldHVybiBjYWxsQm9vbEZ1bmN0aW9uKHNyYywgImJvb2xUZXN0IiwgdmFsdWVzKS50
aGVuKHJlc3VsdCA9PiB7Ci0gICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgZXhwZWN0
ZWQsICJUZXN0IHJldHVybmVkIGV4cGVjdGVkIHZhbHVlLiIpOwotICAgICAgICB9KTsKLSAgICB9
LCBtc2cpOwotfTsKLQotY29uc3QgY2hlY2tGbG9hdDRzID0gKGJvZHksIGFyZ1ZhbHVlcyA9IFtd
LCBleHBlY3RlZCA9IFswLCAxLCAyLCAzXSkgPT4gewotICAgIGxldCBzcmMgPSAiIjsKLSAgICBs
ZXQgaW5wdXRBcmdzID0gW107Ci0gICAgbGV0IHZhbHVlcyA9IFtdOwotCi0gICAgZm9yIChsZXQg
aSA9IDA7IGkgPCBhcmdWYWx1ZXMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgLy8gU3VwcG9ydCBh
cnJheXMgb2YgZmxvYXQ0LCBpbmNsdWRpbmcgb25lIHdpdGggYSBzaW5nbGUgZmxvYXQ0LgotICAg
ICAgICBjb25zdCB0b3RhbExlbmd0aCA9IGFyZ1ZhbHVlc1tpXS5mbGF0KCkubGVuZ3RoOwotICAg
ICAgICBjb25zdCBpc1BvaW50ZXIgPSBhcmdWYWx1ZXNbaV0ubGVuZ3RoID09PSAxIHx8IHRvdGFs
TGVuZ3RoID4gNDsKLSAgICAgICAgaW5wdXRBcmdzLnB1c2goYCR7aXNQb2ludGVyID8gImRldmlj
ZSAiIDogIiJ9ZmxvYXQ0JHtpc1BvaW50ZXIgPyAiKiIgOiAiIn0gaW4ke2l9YCk7Ci0gICAgICAg
IHZhbHVlcy5wdXNoKG1ha2VGbG9hdDQoYXJnVmFsdWVzW2ldKSk7Ci0gICAgfQotCi0gICAgc3Jj
ICs9IGBmbG9hdDQgZmxvYXQ0VGVzdCgke2lucHV0QXJncy5qb2luKCIsICIpfSkgeyAke2JvZHl9
IH0KLSAgICBgOwotCi0gICAgd2ViR1BVUHJvbWlzZVRlc3QoYXN5bmMgKCkgPT4gewotICAgICAg
ICByZXR1cm4gY2FsbEZsb2F0NEZ1bmN0aW9uKHNyYywgImZsb2F0NFRlc3QiLCB2YWx1ZXMpLnRo
ZW4ocmVzdWx0ID0+IHsKLSAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNDsgKytpKQot
ICAgICAgICAgICAgICAgIGFzc2VydF9hcHByb3hfZXF1YWxzKHJlc3VsdFtpXSwgZXhwZWN0ZWRb
aV0sIGVwc2lsb24sICJUZXN0IHJldHVybmVkIGV4cGVjdGVkIHZhbHVlLiIpOwotICAgICAgICB9
KTsKLSAgICB9LCAiUmV0dXJuIGFuIGV4cGVjdGVkIGZsb2F0NCB2YWx1ZS4iKTsKLX0KLTwvc2Ny
aXB0PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1jb21t
YW5kLWVuY29kaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLWNvbW1hbmQtZW5j
b2RpbmcuaHRtbAppbmRleCAxMzBiZmQ0OTU1YTUxY2ViYWU2ZmJjZTRiMzJlZGQxMDllZTc4OTJk
Li40OTQ4YjZlNDMyNTYzZjI4NTBlMDFjOWU4N2M0OTNhOThkNzIyZDZjIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLWNvbW1hbmQtZW5jb2RpbmcuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJncHUvcmVuZGVyLWNvbW1hbmQtZW5jb2RpbmcuaHRtbApAQCAtNywyMyArNywy
MyBAQAogPHNjcmlwdCBzcmM9ImpzL3dlYmdwdS1mdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdD4KIGNvbnN0IHNoYWRlcnMgPSBgCi0jaW5jbHVkZSA8bWV0YWxfc3RkbGliPgotICAgIAot
dXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCiBzdHJ1Y3QgVmVydGV4CiB7Ci0gICAgZmxvYXQ0IHBv
c2l0aW9uIFtbcG9zaXRpb25dXTsKKyAgICBmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsK
KyAgICBmbG9hdDQgYXR0cmlidXRlUG9zaXRpb24gOiBhdHRyaWJ1dGUoMCk7CiB9OwogCiB2ZXJ0
ZXggVmVydGV4IHZlcnRleF9tYWluKCkKIHsKLSAgICByZXR1cm4gVmVydGV4IHsgZmxvYXQ0KDAs
IDAsIDAsIDEpIH07CisgICAgVmVydGV4IHJlc3VsdDsKKyAgICByZXN1bHQucG9zaXRpb24gPSBm
bG9hdDQoMCwgMCwgMCwgMSk7CisgICAgcmVzdWx0LmF0dHJpYnV0ZVBvc2l0aW9uID0gcmVzdWx0
LnBvc2l0aW9uOworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFn
bWVudF9tYWluKFZlcnRleCB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCitmcmFnbWVudCBmbG9hdDQg
ZnJhZ21lbnRfbWFpbihmbG9hdDQgcG9zaXRpb24gOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0
IDAKIHsKLSAgICByZXR1cm4gdmVydGV4SW4ucG9zaXRpb247CisgICAgcmV0dXJuIHBvc2l0aW9u
OwogfQogYAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVyLXBpcGVsaW5l
LWVycm9ycy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBlbGluZS1lcnJvcnMu
aHRtbAppbmRleCBhNDkzZTExODcwYzExZTBmZGUzZjAzMTI0OTNlZDNmOGExYTBiZTcyLi4wYjli
YzczZGM2ZjQ3MmJmYWE0OThjZGI2NDBmNTM5ODBmMjU1YmU4IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvcmVuZGVyLXBpcGVsaW5lLWVycm9ycy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L3dlYmdwdS9yZW5kZXItcGlwZWxpbmUtZXJyb3JzLmh0bWwKQEAgLTM5LDcgKzM5LDcgQEAgbGV0
IGdvb2RSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IsIGdvb2RNb2R1bGU7CiBsZXQgdGVzdHMgPSB7
fTsKIAogdGVzdHNbIkdQVVJlbmRlclBpcGVsaW5lIGNyZWF0aW9uIHN1Y2NlZWRzIHdpdGggbm8g
ZXJyb3JzLiJdID0gYXN5bmMgZGV2aWNlID0+IHsKLSAgICBnb29kTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7IGNvZGU6IHdobHNsU291cmNlLCBpc1dITFNMOiB0cnVlIH0pOwor
ICAgIGdvb2RNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogd2hsc2xT
b3VyY2UgfSk7CiAgICAgCiAgICAgZ29vZFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvciA9IHsKICAg
ICAgICAgdmVydGV4U3RhZ2U6IHsgbW9kdWxlOiBnb29kTW9kdWxlLCBlbnRyeVBvaW50OiAidmVy
dGV4TWFpbiIgfSwKQEAgLTczLDcgKzczLDcgQEAgdGVzdHNbIkdQVVJlbmRlclBpcGVsaW5lIGNy
ZWF0aW9uIHN1Y2NlZWRzIHdpdGggbm8gZXJyb3JzLiJdID0gYXN5bmMgZGV2aWNlID0+IHsKIAog
dGVzdHNbIkludmFsaWQgR1BVU2hhZGVyTW9kdWxlIGZvciB2ZXJ0ZXggc3RhZ2Ugc2hvdWxkIGZh
aWwuIl0gPSBhc3luYyBkZXZpY2UgPT4gewogICAgIGxldCBiYWREZXNjcmlwdG9yID0gT2JqZWN0
LmFzc2lnbih7fSwgZ29vZFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvcik7Ci0gICAgbGV0IGJhZFNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiwgaXNX
SExTTDogdHJ1ZSB9KTsKKyAgICBsZXQgYmFkU2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7IGNvZGU6ICJGb28iIH0pOwogICAgIGJhZERlc2NyaXB0b3IudmVydGV4U3Rh
Z2UgPSB7IG1vZHVsZTogYmFkU2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4TWFpbiIg
fTsKIAogICAgIHJldHVybiBjcmVhdGVQaXBlbGluZUFuZEVycm9yKGRldmljZSwgYmFkRGVzY3Jp
cHRvcik7CkBAIC04MSw3ICs4MSw3IEBAIHRlc3RzWyJJbnZhbGlkIEdQVVNoYWRlck1vZHVsZSBm
b3IgdmVydGV4IHN0YWdlIHNob3VsZCBmYWlsLiJdID0gYXN5bmMgZGV2aWNlID0+CiAKIHRlc3Rz
WyJJbnZhbGlkIEdQVVNoYWRlck1vZHVsZSBmb3IgZnJhZ21lbnQgc3RhZ2Ugc2hvdWxkIGZhaWwu
Il0gPSBhc3luYyBkZXZpY2UgPT4gewogICAgIGxldCBiYWREZXNjcmlwdG9yID0gT2JqZWN0LmFz
c2lnbih7fSwgZ29vZFJlbmRlclBpcGVsaW5lRGVzY3JpcHRvcik7Ci0gICAgbGV0IGJhZFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiwgaXNXSExT
TDogdHJ1ZSAgfSk7CisgICAgbGV0IGJhZFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoeyBjb2RlOiAiRm9vIiAgfSk7CiAgICAgYmFkRGVzY3JpcHRvci5mcmFnbWVudFN0
YWdlID0geyBtb2R1bGU6IGJhZFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleE1haW4i
IH07CiAKICAgICByZXR1cm4gY3JlYXRlUGlwZWxpbmVBbmRFcnJvcihkZXZpY2UsIGJhZERlc2Ny
aXB0b3IpOwpAQCAtODksNyArODksNyBAQCB0ZXN0c1siSW52YWxpZCBHUFVTaGFkZXJNb2R1bGUg
Zm9yIGZyYWdtZW50IHN0YWdlIHNob3VsZCBmYWlsLiJdID0gYXN5bmMgZGV2aWNlCiAKIHRlc3Rz
WyJFbXB0eSBlbnRyeSBwb2ludCBmb3IgdmVydGV4IHN0YWdlIHNob3VsZCBmYWlsLiJdID0gYXN5
bmMgZGV2aWNlID0+IHsKICAgICBsZXQgYmFkRGVzY3JpcHRvciA9IE9iamVjdC5hc3NpZ24oe30s
IGdvb2RSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IpOwotICAgIGxldCBiYWRTaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogIkZvbyIsIGlzV0hMU0w6IHRydWUg
IH0pOworICAgIGxldCBiYWRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHsgY29kZTogIkZvbyIgIH0pOwogICAgIGJhZERlc2NyaXB0b3IudmVydGV4U3RhZ2UgPSB7IG1v
ZHVsZTogYmFkU2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiIiB9OwogCiAgICAgcmV0dXJuIGNy
ZWF0ZVBpcGVsaW5lQW5kRXJyb3IoZGV2aWNlLCBiYWREZXNjcmlwdG9yKTsKQEAgLTE4Nyw0ICsx
ODcsNCBAQCBjb25zdCBjcmVhdGVQaXBlbGluZUFuZEVycm9yID0gKGRldmljZSwgZGVzY3JpcHRv
cikgPT4gewogfTsKIAogPC9zY3JpcHQ+Ci08L2JvZHk+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3JlbmRlci1waXBl
bGluZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS9yZW5kZXItcGlwZWxpbmVzLmh0bWwKaW5k
ZXggZTY2NjViYjlkYWExZWIzZDFmZmE0OWY1ZGVjZTc5NDc4NzcwOGM3NS4uNmJiOGQyNmVjMjJh
M2VmOTYwYTE3MjgzYjMyNjk1NDVhMjZkZjk2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3JlbmRlci1waXBlbGluZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvcmVuZGVy
LXBpcGVsaW5lcy5odG1sCkBAIC01LDM1ICs1LDI3IEBACiA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBjb25zdCBzaGFk
ZXJDb2RlID0gYAotI2luY2x1ZGUgPG1ldGFsX3N0ZGxpYj4KLSAgICAKLXVzaW5nIG5hbWVzcGFj
ZSBtZXRhbDsKLQotc3RydWN0IFZlcnRleAotewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0
aW9uXV07Ci19OwotCi12ZXJ0ZXggVmVydGV4IHZlcnRleF9tYWluKHVpbnQgdmlkIFtbdmVydGV4
X2lkXV0pCit2ZXJ0ZXggZmxvYXQ0IHZlcnRleF9tYWluKHVpbnQgdmlkIFtbdmVydGV4X2lkXV0p
IDogU1ZfUG9zaXRpb24KIHsKLSAgICBWZXJ0ZXggdjsKKyAgICBmbG9hdDQgdjsKICAgICBzd2l0
Y2ggKHZpZCkgewogICAgIGNhc2UgMDoKLSAgICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwg
MSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoLTEsIDEsIDAsIDEpOwogICAgICAgICBicmVh
azsKICAgICBjYXNlIDE6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoLTEsIC0xLCAwLCAx
KTsKKyAgICAgICAgdiA9IGZsb2F0NCgtMSwgLTEsIDAsIDEpOwogICAgICAgICBicmVhazsKICAg
ICBjYXNlIDI6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwgMSwgMCwgMSk7CisgICAg
ICAgIHYgPSBmbG9hdDQoMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6
Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwgLTEsIDAsIDEpOworICAgICAgICB2ID0g
ZmxvYXQ0KDEsIC0xLCAwLCAxKTsKKyAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIHJldHVybiB2
OwogfQogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXggdmVydGV4SW4gW1tz
dGFnZV9pbl1dKQorZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4oKSA6IFNWX1RhcmdldCAw
CiB7CiAgICAgcmV0dXJuIGZsb2F0NCgwLjAsIDEuMCwgMC4wLCAxLjApOwogfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3NoYWRlci1tb2R1bGVzLmh0bWwgYi9MYXlvdXRUZXN0cy93
ZWJncHUvc2hhZGVyLW1vZHVsZXMuaHRtbAppbmRleCA5OTg1NTlmNWFlMGNiMGI1ZTYxM2FmMWM3
ZWM1YjFmZjlhNWMzMmU2Li40MjYyZTExY2I2NjFmMmU0ZDc3MjQxMDIwZTgyNWRjMmNmNjRmMGIy
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvc2hhZGVyLW1vZHVsZXMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvc2hhZGVyLW1vZHVsZXMuaHRtbApAQCAtNywyMyArNywyMyBA
QAogPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0PgogY29uc3Qgc2hhZGVycyA9IGAKLSNpbmNsdWRlIDxtZXRhbF9zdGRsaWI+
Ci0gICAgCi11c2luZyBuYW1lc3BhY2UgbWV0YWw7Ci0KIHN0cnVjdCBWZXJ0ZXgKIHsKLSAgICBm
bG9hdDQgcG9zaXRpb24gW1twb3NpdGlvbl1dOworICAgIGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bv
c2l0aW9uOworICAgIGZsb2F0NCBhdHRyaWJ1dGVQb3NpdGlvbiA6IGF0dHJpYnV0ZSgwKTsKIH07
CiAKIHZlcnRleCBWZXJ0ZXggdmVydGV4X21haW4oKQogewotICAgIHJldHVybiBWZXJ0ZXggeyBm
bG9hdDQoMCwgMCwgMCwgMSkgfTsKKyAgICBWZXJ0ZXggcmVzdWx0OworICAgIHJlc3VsdC5wb3Np
dGlvbiA9IGZsb2F0NCgwLCAwLCAwLCAxKTsKKyAgICByZXN1bHQuYXR0cmlidXRlUG9zaXRpb24g
PSByZXN1bHQucG9zaXRpb247CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotZnJhZ21lbnQgZmxv
YXQ0IGZyYWdtZW50X21haW4oVmVydGV4IHZlcnRleEluIFtbc3RhZ2VfaW5dXSkKK2ZyYWdtZW50
IGZsb2F0NCBmcmFnbWVudF9tYWluKGZsb2F0NCBwb3NpdGlvbiA6IGF0dHJpYnV0ZSgwKSkgOiBT
Vl9UYXJnZXQgMAogewotICAgIHJldHVybiB2ZXJ0ZXhJbi5wb3NpdGlvbjsKKyAgICByZXR1cm4g
cG9zaXRpb247CiB9CiBgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS9zaW1wbGUt
dHJpYW5nbGUtc3RyaXAuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS9zaW1wbGUtdHJpYW5nbGUt
c3RyaXAuaHRtbAppbmRleCBjOGQxZTNiZmU1ZGQwYjc4MDkxY2FkMjdjNDM4OWI1OWRmMTRlYzA3
Li4yNzA0ZDRiZDIxOTY1MGQzNDEyNDk3ODdlYzZhN2E0YTMxNDU2MDM2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy93ZWJncHUvc2ltcGxlLXRyaWFuZ2xlLXN0cmlwLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3NpbXBsZS10cmlhbmdsZS1zdHJpcC5odG1sCkBAIC0xMSwzNSArMTEsMjcg
QEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQogICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OwogCiBjb25zdCBzaGFkZXJDb2RlID0gYAotI2luY2x1ZGUgPG1ldGFsX3N0ZGxpYj4KLSAgICAK
LXVzaW5nIG5hbWVzcGFjZSBtZXRhbDsKLQotc3RydWN0IFZlcnRleAotewotICAgIGZsb2F0NCBw
b3NpdGlvbiBbW3Bvc2l0aW9uXV07Ci19OwotCi12ZXJ0ZXggVmVydGV4IHZlcnRleF9tYWluKHVp
bnQgdmlkIFtbdmVydGV4X2lkXV0pCit2ZXJ0ZXggZmxvYXQ0IHZlcnRleF9tYWluKHVpbnQgdmlk
IDogU1ZfVmVydGV4SUQpIDogU1ZfUG9zaXRpb24KIHsKLSAgICBWZXJ0ZXggdjsKKyAgICBmbG9h
dDQgdjsKICAgICBzd2l0Y2ggKHZpZCkgewogICAgIGNhc2UgMDoKLSAgICAgICAgdi5wb3NpdGlv
biA9IGZsb2F0NCgtMSwgMSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoLTEsIDEsIDAsIDEp
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIDE6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9h
dDQoLTEsIC0xLCAwLCAxKTsKKyAgICAgICAgdiA9IGZsb2F0NCgtMSwgLTEsIDAsIDEpOwogICAg
ICAgICBicmVhazsKICAgICBjYXNlIDI6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwg
MSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFr
OwogICAgIGRlZmF1bHQ6Ci0gICAgICAgIHYucG9zaXRpb24gPSBmbG9hdDQoMSwgLTEsIDAsIDEp
OworICAgICAgICB2ID0gZmxvYXQ0KDEsIC0xLCAwLCAxKTsKKyAgICAgICAgYnJlYWs7CiAgICAg
fQogICAgIHJldHVybiB2OwogfQogCi1mcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0
ZXggdmVydGV4SW4gW1tzdGFnZV9pbl1dKQorZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50X21haW4o
KSA6IFNWX1RhcmdldCAwCiB7CiAgICAgcmV0dXJuIGZsb2F0NCgwLjAsIDEuMCwgMC4wLCAxLjAp
OwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3RleHR1cmUtdHJpYW5nbGUtc3Ry
aXAuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS90ZXh0dXJlLXRyaWFuZ2xlLXN0cmlwLmh0bWwK
aW5kZXggY2FlMDRiNWI0MTBlZjdlZDkzYTFkNzU5MjJjNzE2NzdmM2JiNGQ2Mi4uYzY4YWJjMWFk
MzM4ZGZhMTNmOWE5MjE2N2ZkMjQ4ZmM5NzdlMTQ2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
d2ViZ3B1L3RleHR1cmUtdHJpYW5nbGUtc3RyaXAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvdGV4dHVyZS10cmlhbmdsZS1zdHJpcC5odG1sCkBAIC0xOSwzOSArMTksMjggQEAgY29uc3Qg
dGV4dHVyZUJpbmRpbmdOdW0gPSAwOwogY29uc3Qgc2FtcGxlckJpbmRpbmdOdW0gPSAxOwogCiBj
b25zdCBzaGFkZXJDb2RlID0gYAotI2luY2x1ZGUgPG1ldGFsX3N0ZGxpYj4KLSAgICAKLXVzaW5n
IG5hbWVzcGFjZSBtZXRhbDsKLQotc3RydWN0IFZlcnRleEluCi17Ci0gICAgZmxvYXQ0IHBvc2l0
aW9uIFtbYXR0cmlidXRlKCR7cG9zaXRpb25BdHRyaWJ1dGVOdW19KV1dOwotICAgIGZsb2F0MiB0
ZXhDb29yZHMgW1thdHRyaWJ1dGUoJHt0ZXhDb29yZHNBdHRyaWJ1dGVOdW19KV1dOwotfTsKLQog
c3RydWN0IFZlcnRleE91dAogewotICAgIGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0aW9uXV07Ci0g
ICAgZmxvYXQyIHRleENvb3JkczsKKyAgICBmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbjsK
KyAgICBmbG9hdDIgdGV4Q29vcmRzIDogYXR0cmlidXRlKDApOwogfTsKIAotdmVydGV4IFZlcnRl
eE91dCB2ZXJ0ZXhfbWFpbihWZXJ0ZXhJbiB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCi17Cit2ZXJ0
ZXggVmVydGV4T3V0IHZlcnRleF9tYWluKGZsb2F0NCBwb3NpdGlvbiA6IGF0dHJpYnV0ZSgke3Bv
c2l0aW9uQXR0cmlidXRlTnVtfSksIGZsb2F0MiB0ZXhDb29yZHMgOiBhdHRyaWJ1dGUoJHt0ZXhD
b29yZHNBdHRyaWJ1dGVOdW19KSkgewogICAgIFZlcnRleE91dCB2T3V0OwotICAgIHZPdXQucG9z
aXRpb24gPSB2ZXJ0ZXhJbi5wb3NpdGlvbjsKLSAgICB2T3V0LnRleENvb3JkcyA9IHZlcnRleElu
LnRleENvb3JkczsKKyAgICB2T3V0LnBvc2l0aW9uID0gcG9zaXRpb247CisgICAgdk91dC50ZXhD
b29yZHMgPSB0ZXhDb29yZHM7CiAgICAgcmV0dXJuIHZPdXQ7CiB9CiAKIHN0cnVjdCBUZXh0dXJl
U2FtcGxlcgogewotICAgIHRleHR1cmUyZDxmbG9hdD4gdCBbW2lkKCR7dGV4dHVyZUJpbmRpbmdO
dW19KV1dOwotICAgIHNhbXBsZXIgcyBbW2lkKCR7c2FtcGxlckJpbmRpbmdOdW19KV1dOworICAg
IFRleHR1cmUyRDxmbG9hdDQ+IHQgOiByZWdpc3Rlcih0JHt0ZXh0dXJlQmluZGluZ051bX0sIHNw
YWNlJHtiaW5kR3JvdXBJbmRleH0pOworICAgIHNhbXBsZXIgcyA6IHJlZ2lzdGVyKHMke3NhbXBs
ZXJCaW5kaW5nTnVtfSwgc3BhY2Uke2JpbmRHcm91cEluZGV4fSk7CiB9OwogCi1mcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRfbWFpbihWZXJ0ZXhPdXQgdiBbW3N0YWdlX2luXV0sIGNvbnN0IGRldmlj
ZSBUZXh0dXJlU2FtcGxlciYgYXJncyBbW2J1ZmZlcigke2JpbmRHcm91cEluZGV4fSldXSkKK2Zy
YWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWluKGZsb2F0MiB0ZXhDb29yZHMgOiBhdHRyaWJ1dGUo
MCksIFRleHR1cmVTYW1wbGVyIHRleHR1cmVTYW1wbGVyKSA6IFNWX1RhcmdldCAwCiB7Ci0gICAg
cmV0dXJuIGFyZ3MudC5zYW1wbGUoYXJncy5zLCB2LnRleENvb3Jkcyk7CisgICAgcmV0dXJuIFNh
bXBsZSh0ZXh0dXJlU2FtcGxlci50LCB0ZXh0dXJlU2FtcGxlci5zLCB0ZXhDb29yZHMpOwogfQog
YAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvdmVydGV4LWJ1ZmZlci10cmlhbmds
ZS1zdHJpcC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3ZlcnRleC1idWZmZXItdHJpYW5nbGUt
c3RyaXAuaHRtbAppbmRleCBiZDMzNWU2MjhjNjc5YTE5MGFkNzk2YmY1MDI5ODllZTUyOWJkNjIy
Li4zYmJlODc1NzdlNmIyZTRlMzVmYzFjYTE3MGEyMTVmYmZmNjhmOGNmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy93ZWJncHUvdmVydGV4LWJ1ZmZlci10cmlhbmdsZS1zdHJpcC5odG1sCisrKyBi
L0xheW91dFRlc3RzL3dlYmdwdS92ZXJ0ZXgtYnVmZmVyLXRyaWFuZ2xlLXN0cmlwLmh0bWwKQEAg
LTExLDMzICsxMSwyMyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVzdFJ1bm5lci53
YWl0VW50aWxEb25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVkZSA8bWV0YWxf
c3RkbGliPgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3QgVmVydGV4SW4K
LXsKLSAgICBmbG9hdDQgcG9zaXRpb24gW1thdHRyaWJ1dGUoMCldXTsKLSAgICBmbG9hdCBncmVl
biBbW2F0dHJpYnV0ZSgxKV1dOwotfTsKLQogc3RydWN0IFZlcnRleE91dAogewotICAgIGZsb2F0
NCBwb3NpdGlvbiBbW3Bvc2l0aW9uXV07Ci0gICAgZmxvYXQ0IGNvbG9yOworICAgIGZsb2F0NCBw
b3NpdGlvbiA6IFNWX1Bvc2l0aW9uOworICAgIGZsb2F0NCBjb2xvciA6IGF0dHJpYnV0ZSgwKTsK
IH07CiAKLXZlcnRleCBWZXJ0ZXhPdXQgdmVydGV4X21haW4oVmVydGV4SW4gdmVydGV4SW4gW1tz
dGFnZV9pbl1dKQordmVydGV4IFZlcnRleE91dCB2ZXJ0ZXhfbWFpbihmbG9hdDQgcG9zaXRpb24g
OiBhdHRyaWJ1dGUoMCksIGZsb2F0IGdyZWVuIDogYXR0cmlidXRlKDEpKQogewogICAgIFZlcnRl
eE91dCB2T3V0OwotICAgIHZPdXQucG9zaXRpb24gPSB2ZXJ0ZXhJbi5wb3NpdGlvbjsKLSAgICB2
T3V0LmNvbG9yID0gZmxvYXQ0KDAsIHZlcnRleEluLmdyZWVuLCAwLCAxKTsKKyAgICB2T3V0LnBv
c2l0aW9uID0gcG9zaXRpb247CisgICAgdk91dC5jb2xvciA9IGZsb2F0NCgwLCBncmVlbiwgMCwg
MSk7CiAgICAgcmV0dXJuIHZPdXQ7CiB9CiAKLWZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWlu
KFZlcnRleE91dCB2IFtbc3RhZ2VfaW5dXSkKK2ZyYWdtZW50IGZsb2F0NCBmcmFnbWVudF9tYWlu
KGZsb2F0NCBjb2xvciA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMAogewotICAgIHJldHVy
biB2LmNvbG9yOworICAgIHJldHVybiBjb2xvcjsKIH0KIGAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3ZpZXdwb3J0LXNjaXNzb3ItcmVjdC10cmlhbmdsZS1zdHJpcC5odG1sIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3ZpZXdwb3J0LXNjaXNzb3ItcmVjdC10cmlhbmdsZS1zdHJpcC5o
dG1sCmluZGV4IGI5YWRlODdhNGExYWQxNTRhZWZlZmE4MmM0ZTJiYWQyNjI2MzM2NjQuLjBlNzk0
MTQ2MDYxZmQ1NzQ1MzFhMTIwNjA4ODc5YjQ4OWEwZGJiOTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3dlYmdwdS92aWV3cG9ydC1zY2lzc29yLXJlY3QtdHJpYW5nbGUtc3RyaXAuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvdmlld3BvcnQtc2Npc3Nvci1yZWN0LXRyaWFuZ2xlLXN0cmlw
Lmh0bWwKQEAgLTExLDM1ICsxMSwyNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgdGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAKIGNvbnN0IHNoYWRlckNvZGUgPSBgCi0jaW5jbHVk
ZSA8bWV0YWxfc3RkbGliPgotICAgIAotdXNpbmcgbmFtZXNwYWNlIG1ldGFsOwotCi1zdHJ1Y3Qg
VmVydGV4Ci17Ci0gICAgZmxvYXQ0IHBvc2l0aW9uIFtbcG9zaXRpb25dXTsKLX07Ci0KLXZlcnRl
eCBWZXJ0ZXggdmVydGV4X21haW4odWludCB2aWQgW1t2ZXJ0ZXhfaWRdXSkKK3ZlcnRleCBmbG9h
dDQgdmVydGV4X21haW4odWludCB2aWQgOiBTVl9WZXJ0ZXhJRCkgOiBTVl9Qb3NpdGlvbgogewot
ICAgIFZlcnRleCB2OworICAgIGZsb2F0NCB2OwogICAgIHN3aXRjaCAodmlkKSB7CiAgICAgY2Fz
ZSAwOgotICAgICAgICB2LnBvc2l0aW9uID0gZmxvYXQ0KC0xLCAxLCAwLCAxKTsKKyAgICAgICAg
diA9IGZsb2F0NCgtMSwgMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMToKLSAg
ICAgICAgdi5wb3NpdGlvbiA9IGZsb2F0NCgtMSwgLTEsIDAsIDEpOworICAgICAgICB2ID0gZmxv
YXQ0KC0xLCAtMSwgMCwgMSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMjoKLSAgICAgICAg
di5wb3NpdGlvbiA9IGZsb2F0NCgxLCAxLCAwLCAxKTsKKyAgICAgICAgdiA9IGZsb2F0NCgxLCAx
LCAwLCAxKTsKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKLSAgICAgICAgdi5wb3NpdGlv
biA9IGZsb2F0NCgxLCAtMSwgMCwgMSk7CisgICAgICAgIHYgPSBmbG9hdDQoMSwgLTEsIDAsIDEp
OworICAgICAgICBicmVhazsKICAgICB9CiAgICAgcmV0dXJuIHY7CiB9CiAKLWZyYWdtZW50IGZs
b2F0NCBmcmFnbWVudF9tYWluKFZlcnRleCB2ZXJ0ZXhJbiBbW3N0YWdlX2luXV0pCitmcmFnbWVu
dCBmbG9hdDQgZnJhZ21lbnRfbWFpbigpIDogU1ZfVGFyZ2V0IDAKIHsKICAgICByZXR1cm4gZmxv
YXQ0KDAuMCwgMS4wLCAwLjAsIDEuMCk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvYXJiaXRyYXJ5LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25zLmh0bWwgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvYXJiaXRyYXJ5LXZlcnRleC1hdHRyaWJ1dGUtbG9jYXRpb25z
Lmh0bWwKaW5kZXggYmM1ZDNkNWE1NmFkZWRjYjk0Njg3ZmIyNjBlZTgxZGE0YjQxOTFmYi4uYzIz
OWZhZTUzNmQyOWIxMzlkZjE3YWJlZjAyNWM1Yjg4YTU5NzM1MCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL2FyYml0cmFyeS12ZXJ0ZXgtYXR0cmlidXRlLWxvY2F0aW9ucy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9hcmJpdHJhcnktdmVydGV4LWF0dHJp
YnV0ZS1sb2NhdGlvbnMuaHRtbApAQCAtMjcsNyArMjcsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJh
Z21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNo
YWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItZnJhZ21lbnQuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItZnJhZ21lbnQuaHRtbAppbmRleCA0
ZjRkNWVhMWZhNGM1ZTQ1ZGE3M2RmNTE3NTcwZTJmNjYzMGMxZjRmLi5jNjJiMzI1Yzc0OTc0Zjdk
MTQ5NjA0YTZlODY5ZTM5NjMyYzkzMWI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvYnVmZmVyLWZyYWdtZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L2J1ZmZlci1mcmFnbWVudC5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBm
cmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbiwgY29uc3RhbnQgZmxv
YXRbXSB0CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7
CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21v
ZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29u
c3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZy
YWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUt
c3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci1sZW5n
dGguaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItbGVuZ3RoLmh0bWwKaW5k
ZXggZDBmZjM2MDk1N2Q2Yjc5YjQ4M2FhZGZiYzg0ZDQ1NjljNjdjYzUzOS4uOTY4NjZlMmZjMmMy
NDUyMzJkYjZiYzZiMzUwZjgzNjVmYWRkMDRiYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2J1ZmZlci1sZW5ndGguaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvYnVmZmVyLWxlbmd0aC5odG1sCkBAIC0xNCw3ICsxNCw3IEBAIGNvbXB1dGUgdm9pZCBjb21w
dXRlU2hhZGVyKGRldmljZSB1aW50W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhy
ZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVT
dGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIi
fTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7
YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9idWZmZXItdmVydGV4Lmh0bWwgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvYnVmZmVyLXZlcnRleC5odG1sCmluZGV4IGRiZmMxOTBm
ZTE0MmE2NzEzNjllYmNiMmZlN2VkNGFhNWRjMjViZjguLjRhNmFiMWU0NTFiNGU4NGFhNzE1NzM1
ODdjMzRjNDVjMzNmMjExNDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9i
dWZmZXItdmVydGV4Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2J1ZmZlci12
ZXJ0ZXguaHRtbApAQCAtMTksNyArMTksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3Qg
Y2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBz
aGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3Rh
Z2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9
OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9jaGVja2VyLXNob3VsZC1zZXQtdHlwZS1v
Zi1yZWFkLW1vZGlmeS13cml0ZS12YXJpYWJsZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9jaGVja2VyLXNob3VsZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0ZS12YXJpYWJs
ZXMuaHRtbAppbmRleCBiMzEzZmQ2OWY3YjYwNzc3YzM2MzE1YWRmYzE5MmNmNGZkYTkwZGI1Li42
MWIyMmM1ZTZkMDE0MTFkNDkwOWNkZTAyZjY3NTBmYjUwYjVjYWVjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2Rp
Znktd3JpdGUtdmFyaWFibGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2No
ZWNrZXItc2hvdWxkLXNldC10eXBlLW9mLXJlYWQtbW9kaWZ5LXdyaXRlLXZhcmlhYmxlcy5odG1s
CkBAIC0xNiw3ICsxNiw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRldmljZSBmbG9h
dFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwogCiBhc3luYyBm
dW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsK
KyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5k
R3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxp
dHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvY29tcHV0ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Nv
bXB1dGUuaHRtbAppbmRleCAzY2FhMGYzOGE0NWU0Y2E1ODFkYWNhNDhhZWNkYWMzZjM1MThiNjUw
Li4xZjYzMmU2NmNmNjM3YmEwNmIzZjU0NmRkNzA3ZTAxYjMxNjdhYjU1IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvY29tcHV0ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9jb21wdXRlLmh0bWwKQEAgLTE0LDcgKzE0LDcgQEAgY29tcHV0ZSB2b2lkIGNv
bXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMg
dGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1
dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFk
ZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6
IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXJlZmVyZW5jZS1wb2ludGVy
LXNob3VsZC10eXBlLWNoZWNrLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZGVyZWZl
cmVuY2UtcG9pbnRlci1zaG91bGQtdHlwZS1jaGVjay5odG1sCmluZGV4IDQ0ODIzMDFmNmVhZmUw
MDc4NGJhMTc5NWRiYTkxODA1ZDE5ZjFlZjIuLjlhZGFiZDY4ZDU5ODc5YjJlYTM2NjE2NmYyZmY2
MGFkZTg4ZGRlY2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kZXJlZmVy
ZW5jZS1wb2ludGVyLXNob3VsZC10eXBlLWNoZWNrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2RlcmVmZXJlbmNlLXBvaW50ZXItc2hvdWxkLXR5cGUtY2hlY2suaHRtbApAQCAt
MzIsNyArMzIsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUg
OiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
InZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1p
dGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9kZXZpY2UtcHJvcGVyLXR5cGUtY2hlY2tlci5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL2RldmljZS1wcm9wZXItdHlwZS1jaGVja2VyLmh0bWwKaW5kZXggY2Vl
OGNmMTkxNzQwZWEyY2QwMjEzMWE4ZGEzNWU0Mjg3NGI5YjBhYy4uYjUzMTIwNTViMDMzMDY4NjQ1
YTU5ZGEwNTQxM2E0N2FmYzA2MTQwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL2RldmljZS1wcm9wZXItdHlwZS1jaGVja2VyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL2RldmljZS1wcm9wZXItdHlwZS1jaGVja2VyLmh0bWwKQEAgLTI0LDcgKzI0LDcg
QEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIFBvaW50W10gYnVmZmVyIDogcmVn
aXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRl
dmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0p
OwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2Ny
aXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0
b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9k
by13aGlsZS1sb29wLWJyZWFrLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8td2hp
bGUtbG9vcC1icmVhay5odG1sCmluZGV4IGY0ODEyODA1ODNhMmRhM2JmYjA4MWM3YWMwMTU0ZjQ5
MzYyMmExMWUuLjRiYmZiZjUxNjFhYWVjY2FlM2M5YWI1NjVhMDFmMWIwYzliZjU0ZDEgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWJyZWFrLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvLXdoaWxlLWxvb3AtYnJlYWsuaHRtbApA
QCAtMzYsNyArMzYsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hh
ZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZp
Y2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsK
ICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2lu
dDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBz
aGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHBy
aW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC1jb250aW51ZS5odG1sCmluZGV4IDdhZWE1YjBm
NmQxOWUyMWJjNWQ3YTk3NzJjYmQyNjhiZmRkOWI1ZmIuLmQwYTYzOGJjNzUzNTE2OTBiNjgyN2Y4
Nzc0OWUwMmI2ZDk3NWQ3NWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9k
by13aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L2RvLXdoaWxlLWxvb3AtY29udGludWUuaHRtbApAQCAtMzgsNyArMzgsNyBAQCBmcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFy
Z2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIp
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hM
U0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHtt
b2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNv
bnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJm
cmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xl
LXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kby13aGlsZS1s
b29wLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZG8td2hpbGUtbG9vcC5odG1sCmlu
ZGV4IDIzODFiNDI1OTA3YTliNmNhYzVlZjgxODRmMTdkNjY2Y2Y5MjIxMzkuLjUxYjhjNTFhNzgx
OTQzZjgzZDNlMzk1YWI4YjZlM2IxNjBjOGU4YjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9kby13aGlsZS1sb29wLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL2RvLXdoaWxlLWxvb3AuaHRtbApAQCAtMzMsNyArMzMsNyBAQCBmcmFnbWVudCBmbG9hdDQg
ZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAg
ewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBh
c3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRy
dWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZy
YWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVu
dFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlw
IjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kb250LWNyYXNoLXBhcnNp
bmctZW51bS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvbnQtY3Jhc2gtcGFyc2lu
Zy1lbnVtLmh0bWwKaW5kZXggN2NkZWYyYTZkOWM0MmQzNjBmZWMzNTBmMTUzZWMwODc0YjBjNzIx
My4uYzY1YzVhNzhkOWVhNWFkNTU4YmUxOTk2ZjFhZGVmZDZiYWI1NjJhZiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvbnQtY3Jhc2gtcGFyc2luZy1lbnVtLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvbnQtY3Jhc2gtcGFyc2luZy1lbnVtLmh0bWwK
QEAgLTI0LDcgKzI0LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBw
b3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQo
ZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNl
fSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5
UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVs
ZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25z
dCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvZG90LWV4cHJlc3Npb25zLmh0bWwgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvZG90LWV4cHJlc3Npb25zLmh0bWwKaW5kZXggY2QxZTg4MmUxMjJhZjE2ZGU3
OTEwNGI3MjA3NWMzOGY3OGIyYzk2YS4uYzZiNjAxNDU2MTUwYTY3NDRjNzllOTZlMDJiYzcxNjUx
YjFmZTUxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2RvdC1leHByZXNz
aW9ucy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9kb3QtZXhwcmVzc2lvbnMu
aHRtbApAQCAtMjcsNyArMjcsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxv
YXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFy
dChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3Vy
Y2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9kdXBsaWNhdGUtdHlwZXMtc2hvdWxkLW5vdC1wcm9kdWNl
LWR1cGxpY2F0ZS1jdG9ycy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2R1cGxpY2F0
ZS10eXBlcy1zaG91bGQtbm90LXByb2R1Y2UtZHVwbGljYXRlLWN0b3JzLmh0bWwKaW5kZXggNTg0
MjcxMmNhZTIzMzU4NzE1OTdkYWIzMGFhYjNjMzY3MTJjZjZkNC4uZTcyYTQ3M2YwODc4NThjYmUy
NTU0OWI0ODY2NGE1N2E2NWM2OWJjOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3do
bHNsL2R1cGxpY2F0ZS10eXBlcy1zaG91bGQtbm90LXByb2R1Y2UtZHVwbGljYXRlLWN0b3JzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2R1cGxpY2F0ZS10eXBlcy1zaG91bGQt
bm90LXByb2R1Y2UtZHVwbGljYXRlLWN0b3JzLmh0bWwKQEAgLTM1LDcgKzM1LDcgQEAgY29tcHV0
ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDogcmVnaXN0ZXIodTAp
LCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewot
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNv
bnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNv
bXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7
YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVm
ZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJv
cGVyLXZhcmlhYmxlLWxpZmV0aW1lLTIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9l
bnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLTIuaHRtbAppbmRleCAwNWFkMjJmOWNiMzY4
ODNmNjM5ZjQ0ZDQwYzFmNGJiNTQ5OWEwMTI3Li44NmI4MTBhNDFjMWQxNmViMjQ5ZmVmOTYzN2Mw
NTZkMWJkMDk5MDk4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJl
LXByb3Blci12YXJpYWJsZS1saWZldGltZS0yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMi5odG1sCkBAIC01Niw3ICs1
Niw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJp
YnV0ZSgwKSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAg
IGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4
U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMy5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlmZXRpbWUtMy5odG1sCmlu
ZGV4IGE1NDhjNzIzZGM5ZjA0ODYyYTdlODJlODFiNzQ1YjUwOTFlMWJkZmQuLmMyNjI3ZmRmZjM3
ZDI1NzA1ZTMxN2IwMDdkYWNhNmQ1MTliODg3NTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxlLWxpZmV0aW1lLTMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS0z
Lmh0bWwKQEAgLTU3LDcgKzU3LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZs
b2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3Rh
cnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qg
c2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291
cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21v
ZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBj
b25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS5o
dG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2Vuc3VyZS1wcm9wZXItdmFyaWFibGUtbGlm
ZXRpbWUuaHRtbAppbmRleCAxNmExZWVkOThiM2MzOGIxNjU4MGZkNmU4OGY0NmJkM2M3NjY2MzM0
Li5jZjgxMTg2NzVkNjA1MTllZThhMjY2ZDJjMzg0MDQyNzg1MGMyNGQ0IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvZW5zdXJlLXByb3Blci12YXJpYWJsZS1saWZldGltZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9lbnN1cmUtcHJvcGVyLXZhcmlhYmxl
LWxpZmV0aW1lLmh0bWwKQEAgLTU2LDcgKzU2LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVu
Y3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Cisg
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
c2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0
YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIi
fTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvaHVnZS1hcnJheS5odG1sIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL2h1Z2UtYXJyYXkuaHRtbAppbmRleCAzNDM4ZmY5M2JiNDI0YTEy
NGQ5ODNjMzg4NDdmZGI4YmY1NGFhMWQ2Li5kOTNhYmQ0ZmFhMWEwMmIyNTg1OWM3NTIzMDVmMTM2
NTE4YTkwNDc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvaHVnZS1hcnJh
eS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9odWdlLWFycmF5Lmh0bWwKQEAg
LTUxLDcgKzUxLDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGludFtdIGJ1
ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElEIDoKIH0KIGA7CiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAg
ICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBz
aGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3Jv
dXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6
IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvanMvdGVzdC1oYXJuZXNzLmpzIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L2pzL3Rlc3QtaGFybmVzcy5qcwppbmRleCA4ZTYxMDY3OTQxZWViYjMzYjlmYTNmZGJmYTg4MjIy
MmU0NDdmNDZjLi5iYmFhNTI3ZDk3NDczMmY4NjI5MDc1ZDRhY2Q2NDhkYWQ3NGI4MWFmIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvanMvdGVzdC1oYXJuZXNzLmpzCisrKyBi
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9qcy90ZXN0LWhhcm5lc3MuanMKQEAgLTI0LDEzICsy
NCwxMSBAQCBmdW5jdGlvbiBpc1NjYWxhcih0eXBlKQogICAgIH0KIH0KIAotZnVuY3Rpb24gY29u
dmVydFR5cGVUb0FycmF5VHlwZShpc1dITFNMLCB0eXBlKQorZnVuY3Rpb24gY29udmVydFR5cGVU
b0FycmF5VHlwZSh0eXBlKQogewogICAgIHN3aXRjaCh0eXBlKSB7CiAgICAgICAgIGNhc2UgVHlw
ZXMuQk9PTDoKLSAgICAgICAgICAgIGlmIChpc1dITFNMKQotICAgICAgICAgICAgICAgIHJldHVy
biBJbnQzMkFycmF5OwotICAgICAgICAgICAgcmV0dXJuIFVpbnQ4QXJyYXk7CisgICAgICAgICAg
ICByZXR1cm4gSW50MzJBcnJheTsKICAgICAgICAgY2FzZSBUeXBlcy5JTlQ6CiAgICAgICAgICAg
ICByZXR1cm4gSW50MzJBcnJheTsKICAgICAgICAgY2FzZSBUeXBlcy5VQ0hBUjoKQEAgLTExOSwx
NCArMTE3LDE0IEBAIGNsYXNzIERhdGEgewogICAgICAgICB9CiAKICAgICAgICAgdGhpcy5fdHlw
ZSA9IHR5cGU7Ci0gICAgICAgIHRoaXMuX2J5dGVMZW5ndGggPSAoY29udmVydFR5cGVUb0FycmF5
VHlwZShoYXJuZXNzLmlzV0hMU0wsIHR5cGUpKS5CWVRFU19QRVJfRUxFTUVOVCAqIHZhbHVlcy5s
ZW5ndGg7CisgICAgICAgIHRoaXMuX2J5dGVMZW5ndGggPSAoY29udmVydFR5cGVUb0FycmF5VHlw
ZSh0eXBlKSkuQllURVNfUEVSX0VMRU1FTlQgKiB2YWx1ZXMubGVuZ3RoOwogCiAgICAgICAgIGNv
bnN0IFtidWZmZXIsIGFycmF5QnVmZmVyXSA9IGhhcm5lc3MuZGV2aWNlLmNyZWF0ZUJ1ZmZlck1h
cHBlZCh7CiAgICAgICAgICAgICBzaXplOiB0aGlzLl9ieXRlTGVuZ3RoLAogICAgICAgICAgICAg
dXNhZ2U6IEdQVUJ1ZmZlclVzYWdlLlNUT1JBR0UgfCBHUFVCdWZmZXJVc2FnZS5NQVBfUkVBRAog
ICAgICAgICB9KTsKIAotICAgICAgICBjb25zdCB0eXBlZEFycmF5ID0gbmV3IChjb252ZXJ0VHlw
ZVRvQXJyYXlUeXBlKGhhcm5lc3MuaXNXSExTTCwgdHlwZSkpKGFycmF5QnVmZmVyKTsKKyAgICAg
ICAgY29uc3QgdHlwZWRBcnJheSA9IG5ldyAoY29udmVydFR5cGVUb0FycmF5VHlwZSh0eXBlKSko
YXJyYXlCdWZmZXIpOwogICAgICAgICB0eXBlZEFycmF5LnNldCh2YWx1ZXMpOwogICAgICAgICBi
dWZmZXIudW5tYXAoKTsKIApAQCAtMTYwLDcgKzE1OCw2IEBAIGNsYXNzIERhdGEgewogY2xhc3Mg
SGFybmVzcyB7CiAgICAgY29uc3RydWN0b3IgKCkKICAgICB7Ci0gICAgICAgIHRoaXMuaXNXSExT
TCA9IHRydWU7CiAgICAgfQogCiAgICAgYXN5bmMgcmVxdWVzdERldmljZSgpCkBAIC0xNzUsMjEg
KzE3Miw2IEBAIGNsYXNzIEhhcm5lc3MgewogICAgICAgICB9CiAgICAgfQogCi0gICAgLy8gU2V0
cyB3aGV0aGVyIEhhcm5lc3MgZ2VuZXJhdGVzIFdITFNMIG9yIE1TTCBzaGFkZXJzLgotICAgIHNl
dCBpc1dITFNMKHZhbHVlKQotICAgIHsKLSAgICAgICAgdGhpcy5faXNXSExTTCA9IHZhbHVlOwot
ICAgICAgICB0aGlzLl9zaGFkZXJIZWFkZXIgPSB2YWx1ZSA/ICIiIDogYAotI2luY2x1ZGUgPG1l
dGFsX3N0ZGxpYj4KLXVzaW5nIG5hbWVzcGFjZSBtZXRhbDsKLSAgICAgICAgYDsKLSAgICB9Ci0K
LSAgICBnZXQgaXNXSExTTCgpCi0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5faXNXSExTTDsK
LSAgICB9Ci0KICAgICAvKioKICAgICAgKiBSZXR1cm4gdGhlIHJldHVybiB2YWx1ZSBvZiBhIFdI
TFNMIGZ1bmN0aW9uLgogICAgICAqIEBwYXJhbSB7VHlwZXN9IHR5cGUgLSBUaGUgcmV0dXJuIHR5
cGUgb2YgdGhlIFdITFNMIGZ1bmN0aW9uLgpAQCAtMjI4LDMxICsyMTAsMTcgQEAgdXNpbmcgbmFt
ZXNwYWNlIG1ldGFsOwogICAgICAgICB9KTsKIAogICAgICAgICBsZXQgZW50cnlQb2ludENvZGU7
Ci0gICAgICAgIGlmICh0aGlzLl9pc1dITFNMKSB7Ci0gICAgICAgICAgICBhcmdzRGVjbGFyYXRp
b25zLnVuc2hpZnQoYGRldmljZSAke3dobHNsQXJndW1lbnRUeXBlKHR5cGUpfVtdIHJlc3VsdCA6
IHJlZ2lzdGVyKHUwKWApOwotICAgICAgICAgICAgbGV0IGNhbGxDb2RlID0gYCR7bmFtZX0oJHtm
dW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwgIil9KWA7Ci0gICAgICAgICAgICBjYWxsQ29kZSA9IGNv
bnZlcnRUb1dITFNMT3V0cHV0VHlwZShjYWxsQ29kZSwgdHlwZSk7Ci0gICAgICAgICAgICBlbnRy
eVBvaW50Q29kZSA9IGAKKyAgICAgICAgYXJnc0RlY2xhcmF0aW9ucy51bnNoaWZ0KGBkZXZpY2Ug
JHt3aGxzbEFyZ3VtZW50VHlwZSh0eXBlKX1bXSByZXN1bHQgOiByZWdpc3Rlcih1MClgKTsKKyAg
ICAgICAgbGV0IGNhbGxDb2RlID0gYCR7bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwg
Iil9KWA7CisgICAgICAgIGNhbGxDb2RlID0gY29udmVydFRvV0hMU0xPdXRwdXRUeXBlKGNhbGxD
b2RlLCB0eXBlKTsKKyAgICAgICAgZW50cnlQb2ludENvZGUgPSBgCiBbbnVtdGhyZWFkcygxLCAx
LCAxKV0KIGNvbXB1dGUgdm9pZCBfY29tcHV0ZV9tYWluKCR7YXJnc0RlY2xhcmF0aW9ucy5qb2lu
KCIsICIpfSkKIHsKICAgICByZXN1bHRbMF0gPSAke2NhbGxDb2RlfTsKIH0KIGA7Ci0gICAgICAg
IH0gZWxzZSB7Ci0gICAgICAgICAgICBhcmdzRGVjbGFyYXRpb25zLnVuc2hpZnQoYGRldmljZSAk
e2NvbnZlcnRUeXBlVG9XSExTTFR5cGUodHlwZSl9KiByZXN1bHQgW1tpZCgwKV1dO2ApOwotICAg
ICAgICAgICAgZW50cnlQb2ludENvZGUgPSBgCi1zdHJ1Y3QgX2NvbXB1dGVfYXJncyB7Ci0gICAg
JHthcmdzRGVjbGFyYXRpb25zLmpvaW4oIlxuIil9Ci19OwotCi1rZXJuZWwgdm9pZCBfY29tcHV0
ZV9tYWluKGRldmljZSBfY29tcHV0ZV9hcmdzJiBhcmdzIFtbYnVmZmVyKDApXV0pIAotewotICAg
ICphcmdzLnJlc3VsdCA9ICR7bmFtZX0oJHtmdW5jdGlvbkNhbGxBcmdzLmpvaW4oIiwgIil9KTsK
LX0KLWA7Ci0gICAgICAgIH0KLSAgICAgICAgY29uc3QgY29kZSA9IHRoaXMuX3NoYWRlckhlYWRl
ciArIGZ1bmN0aW9ucyArIGVudHJ5UG9pbnRDb2RlOworICAgICAgICBjb25zdCBjb2RlID0gZnVu
Y3Rpb25zICsgZW50cnlQb2ludENvZGU7CiAgICAgICAgIGF3YWl0IHRoaXMuX2NhbGxGdW5jdGlv
bihjb2RlLCBhcmdzTGF5b3V0cywgYXJnc1Jlc291cmNlQmluZGluZ3MpOwogICAgIAogICAgICAg
ICB0cnkgewpAQCAtMjYwLDcgKzIyOCw3IEBAIGtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oZGV2
aWNlIF9jb21wdXRlX2FyZ3MmIGFyZ3MgW1tidWZmZXIoMCldXSkKICAgICAgICAgfSBjYXRjaCB7
CiAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkhhcm5lc3MgZXJyb3I6IFVuYWJsZSB0byBy
ZWFkIHJlc3VsdHMhIik7CiAgICAgICAgIH0KLSAgICAgICAgY29uc3QgYXJyYXkgPSBuZXcgKGNv
bnZlcnRUeXBlVG9BcnJheVR5cGUodGhpcy5faXNXSExTTCwgdHlwZSkpKHJlc3VsdCk7CisgICAg
ICAgIGNvbnN0IGFycmF5ID0gbmV3IChjb252ZXJ0VHlwZVRvQXJyYXlUeXBlKHR5cGUpKShyZXN1
bHQpOwogICAgICAgICB0aGlzLl9yZXN1bHRCdWZmZXIudW5tYXAoKTsKIAogICAgICAgICByZXR1
cm4gYXJyYXk7CkBAIC0yNzksMjcgKzI0NywxMyBAQCBrZXJuZWwgdm9pZCBfY29tcHV0ZV9tYWlu
KGRldmljZSBfY29tcHV0ZV9hcmdzJiBhcmdzIFtbYnVmZmVyKDApXV0pCiAKICAgICAgICAgY29u
c3QgW2FyZ3NMYXlvdXRzLCBhcmdzUmVzb3VyY2VCaW5kaW5ncywgYXJnc0RlY2xhcmF0aW9ucywg
ZnVuY3Rpb25DYWxsQXJnc10gPSB0aGlzLl9zZXRVcEFyZ3VtZW50cyhhcmdzKTsKIAotICAgICAg
ICBsZXQgZW50cnlQb2ludENvZGU7Ci0gICAgICAgIGlmICh0aGlzLl9pc1dITFNMKSB7Ci0gICAg
ICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKKyAgICAgICAgbGV0IGVudHJ5UG9pbnRDb2RlID0g
YAogW251bXRocmVhZHMoMSwgMSwgMSldCiBjb21wdXRlIHZvaWQgX2NvbXB1dGVfbWFpbigke2Fy
Z3NEZWNsYXJhdGlvbnMuam9pbigiLCAiKX0pCiB7CiAgICAgJHtuYW1lfSgke2Z1bmN0aW9uQ2Fs
bEFyZ3Muam9pbigiLCAiKX0pOwogfWA7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBl
bnRyeVBvaW50Q29kZSA9IGAKLXN0cnVjdCBfY29tcHV0ZV9hcmdzIHsKLSAgICAke2FyZ3NEZWNs
YXJhdGlvbnMuam9pbigiXG4iKX0KLX07Ci0KLWtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oZGV2
aWNlIF9jb21wdXRlX2FyZ3MmIGFyZ3MgW1tidWZmZXIoMCldXSkKLXsKLSAgICAke25hbWV9KCR7
ZnVuY3Rpb25DYWxsQXJncy5qb2luKCIsICIpfSk7Ci19Ci1gOwotICAgICAgICB9Ci0gICAgICAg
IGNvbnN0IGNvZGUgPSB0aGlzLl9zaGFkZXJIZWFkZXIgKyBmdW5jdGlvbnMgKyBlbnRyeVBvaW50
Q29kZTsKKyAgICAgICAgY29uc3QgY29kZSA9IGZ1bmN0aW9ucyArIGVudHJ5UG9pbnRDb2RlOwog
ICAgICAgICB0aGlzLl9jYWxsRnVuY3Rpb24oY29kZSwgYXJnc0xheW91dHMsIGFyZ3NSZXNvdXJj
ZUJpbmRpbmdzKTsKICAgICB9CiAKQEAgLTMxMiwyMSArMjY2LDE1IEBAIGtlcm5lbCB2b2lkIF9j
b21wdXRlX21haW4oZGV2aWNlIF9jb21wdXRlX2FyZ3MmIGFyZ3MgW1tidWZmZXIoMCldXSkKICAg
ICAgICAgaWYgKHRoaXMuX2RldmljZSA9PT0gdW5kZWZpbmVkKQogICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICAKLSAgICAgICAgbGV0IGVudHJ5UG9pbnRDb2RlOwotICAgICAgICBpZiAodGhp
cy5pc1dITFNMKSB7Ci0gICAgICAgICAgICBlbnRyeVBvaW50Q29kZSA9IGAKKyAgICAgICAgbGV0
IGVudHJ5UG9pbnRDb2RlID0gYAogW251bXRocmVhZHMoMSwgMSwgMSldCiBjb21wdXRlIHZvaWQg
X2NvbXB1dGVfbWFpbigpIHsgfWA7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBlbnRy
eVBvaW50Q29kZSA9IGAKLWtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oKSB7IH1gOwotICAgICAg
ICB9CiAKLSAgICAgICAgY29uc3QgY29kZSA9IHRoaXMuX3NoYWRlckhlYWRlciArIHNvdXJjZSAr
IGVudHJ5UG9pbnRDb2RlOworICAgICAgICBjb25zdCBjb2RlID0gc291cmNlICsgZW50cnlQb2lu
dENvZGU7CiAKICAgICAgICAgdGhpcy5fZGV2aWNlLnB1c2hFcnJvclNjb3BlKCJ2YWxpZGF0aW9u
Iik7CiAgICAgICAgIAotICAgICAgICBjb25zdCBzaGFkZXJzID0gdGhpcy5fZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7IGNvZGU6IGNvZGUsIGlzV0hMU0w6IHRoaXMuX2lzV0hMU0wgfSk7Cisg
ICAgICAgIGNvbnN0IHNoYWRlcnMgPSB0aGlzLl9kZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsg
Y29kZTogY29kZSB9KTsKICAgICAKICAgICAgICAgdGhpcy5fZGV2aWNlLmNyZWF0ZUNvbXB1dGVQ
aXBlbGluZSh7CiAgICAgICAgICAgICBjb21wdXRlU3RhZ2U6IHsKQEAgLTM3MiwxMyArMzIwLDgg
QEAga2VybmVsIHZvaWQgX2NvbXB1dGVfbWFpbigpIHsgfWA7CiAKICAgICAgICAgZm9yIChsZXQg
aSA9IDE7IGkgPD0gYXJncy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgY29uc3QgYXJnID0g
YXJnc1tpIC0gMV07Ci0gICAgICAgICAgICBpZiAodGhpcy5faXNXSExTTCkgewotICAgICAgICAg
ICAgICAgIGFyZ3NEZWNsYXJhdGlvbnMucHVzaChgZGV2aWNlICR7d2hsc2xBcmd1bWVudFR5cGUo
YXJnLnR5cGUpfVtdIGFyZyR7aX0gOiByZWdpc3Rlcih1JHtpfSlgKTsKLSAgICAgICAgICAgICAg
ICBmdW5jdGlvbkNhbGxBcmdzLnB1c2goY29udmVydFRvV0hMU0xJbnB1dFR5cGUoYGFyZyR7aX1g
ICsgKGFyZy5pc0J1ZmZlciA/ICIiIDogIlswXSIpLCBhcmcudHlwZSkpOwotICAgICAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgICAgICBhcmdzRGVjbGFyYXRpb25zLnB1c2goYGRldmljZSAk
e2NvbnZlcnRUeXBlVG9XSExTTFR5cGUoYXJnLnR5cGUpfSogYXJnJHtpfSBbW2lkKCR7aX0pXV07
YCk7Ci0gICAgICAgICAgICAgICAgZnVuY3Rpb25DYWxsQXJncy5wdXNoKChhcmcuaXNCdWZmZXIg
PyAiIiA6ICIqIikgKyBgYXJncy5hcmcke2l9YCk7Ci0gICAgICAgICAgICB9CisgICAgICAgICAg
ICBhcmdzRGVjbGFyYXRpb25zLnB1c2goYGRldmljZSAke3dobHNsQXJndW1lbnRUeXBlKGFyZy50
eXBlKX1bXSBhcmcke2l9IDogcmVnaXN0ZXIodSR7aX0pYCk7CisgICAgICAgICAgICBmdW5jdGlv
bkNhbGxBcmdzLnB1c2goY29udmVydFRvV0hMU0xJbnB1dFR5cGUoYGFyZyR7aX1gICsgKGFyZy5p
c0J1ZmZlciA/ICIiIDogIlswXSIpLCBhcmcudHlwZSkpOwogICAgICAgICAgICAgYXJnc0xheW91
dHMucHVzaCh7CiAgICAgICAgICAgICAgICAgYmluZGluZzogaSwKICAgICAgICAgICAgICAgICB2
aXNpYmlsaXR5OiBHUFVTaGFkZXJTdGFnZUJpdC5DT01QVVRFLApAQCAtNDExLDcgKzM1NCw3IEBA
IGtlcm5lbCB2b2lkIF9jb21wdXRlX21haW4oKSB7IH1gOwogCiAgICAgICAgIHRoaXMuX2Rldmlj
ZS5wdXNoRXJyb3JTY29wZSgidmFsaWRhdGlvbiIpOwogCi0gICAgICAgIGNvbnN0IHNoYWRlcnMg
PSB0aGlzLl9kZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHsgY29kZTogY29kZSwgaXNXSExTTDog
dGhpcy5faXNXSExTTCB9KTsKKyAgICAgICAgY29uc3Qgc2hhZGVycyA9IHRoaXMuX2RldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoeyBjb2RlOiBjb2RlIH0pOwogICAgIAogICAgICAgICBjb25zdCBw
aXBlbGluZSA9IHRoaXMuX2RldmljZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoewogICAgICAgICAg
ICAgbGF5b3V0OiBwaXBlbGluZUxheW91dCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9sb29wcy1icmVhay5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3Bz
LWJyZWFrLmh0bWwKaW5kZXggNmM0MTE2N2VmMGE5NzdkOTRkN2JjYjA2ZDk3MzRjOTA2M2RlMjZl
MS4uZjRkZmQ0ZDU4ZWJhMDE5ZjM0ZDNkNmVjZDE5YzQ5NjA2MWIxZjZiZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3BzLWJyZWFrLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL2xvb3BzLWJyZWFrLmh0bWwKQEAgLTM3LDcgKzM3LDcgQEAgZnJhZ21l
bnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNW
X1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52
YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2Ug
PSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAg
ICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50
OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlh
bmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMt
Y29udGludWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9sb29wcy1jb250aW51ZS5o
dG1sCmluZGV4IDM5NDlmZTNhNDliOWJjMTUzMzhmMTc3MTdlN2I2MWJlNTFlZjcwMGMuLjkyMTJh
OTdmZGMxNDlhZWU5Zjk5MTY5ZTk5NjQzZWM5MjgyNGY3NTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9sb29wcy1jb250aW51ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9sb29wcy1jb250aW51ZS5odG1sCkBAIC0zNyw3ICszNyw3IEBAIGZyYWdtZW50
IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9U
YXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFz
Iik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1v
ZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNX
SExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0g
e21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAg
Y29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
ImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5n
bGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL2xvb3BzLmh0
bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMuaHRtbAppbmRleCA0MDVkMWU2ZGQ1
N2FkOTUxMDBmNTBhYjcwNWI0OWU1ZTliY2IxMDc1Li43MTVkMThmODJjOWU0M2ZmZjEyMjkwOTI5
ZTM0YTU0NDFmZTZmMmQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9v
cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbG9vcHMuaHRtbApAQCAtMzMs
NyArMzMsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBh
dHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsK
LSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBj
b25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZl
cnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2
ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9tYWtlLWFycmF5LXJlZmVyZW5jZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL21ha2UtYXJyYXktcmVmZXJlbmNlLmh0bWwKaW5kZXggMThhZDA2YTc5YjA2NjEwODM5
MmU4YjBlOGY0ZDgwYmQwYWM5ZWEzZi4uNDRjNDAxODkxZmVkZGI3ZWI0NTJlNTZhMGFlMzY3Y2Iy
OGNmZGFiMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21ha2UtYXJyYXkt
cmVmZXJlbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21ha2UtYXJyYXkt
cmVmZXJlbmNlLmh0bWwKQEAgLTEyMCw3ICsxMjAsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNo
YWRlcihkZXZpY2UgaW50W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQg
OgogfQogYDsKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsK
IAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7Ymlu
ZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXgtMi5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL21hdHJpeC0yLmh0bWwKaW5kZXggN2I5OWNhZGYxYmIxMjY0YWNlNjM5
ODhhZTRmZmMyYWM1YmNhNGFhNS4uMjAxYjUyMzllMjZjODZiM2FjYjUxODU1YzBlMjhiZWQzYzFi
Y2NlYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC0yLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC0yLmh0bWwKQEAgLTc2LDcgKzc2
LDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDog
cmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0
KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERl
c2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTog
InN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9tYXRyaXgtbWVtb3J5LWxheW91dC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21h
dHJpeC1tZW1vcnktbGF5b3V0Lmh0bWwKaW5kZXggNWY2NzRkMTE4OTZhZmY5MTM3YTljNWQwNzdk
MTA5YTM3Y2YzNmNhNS4uNWEzNmQ1ZGY1NWNlZjg2NTk3Nzk1NDQxODQyOTAyZDI4OWM5MGUyZCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC1tZW1vcnktbGF5b3V0
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL21hdHJpeC1tZW1vcnktbGF5b3V0
Lmh0bWwKQEAgLTQyLDcgKzQyLDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNl
IGZsb2F0NHg0W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWEKIGA7CiAKIGFz
eW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0
IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlz
aWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9tYXRyaXguaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9tYXRyaXguaHRtbAppbmRleCBjMzgxYmM5MWFlMjhmYzYxY2FlYzhkOTI0YzRkMmM5YThlM2Qw
NzY1Li5mZTM2MjBlMTc5YTE2MmQzMDQ0MDYwNjI1ZmYzNGU1NjBlNzM5NjQ2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbWF0cml4Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL21hdHJpeC5odG1sCkBAIC04OCw3ICs4OCw3IEBAIGNvbXB1dGUgdm9pZCBj
b21wdXRlU2hhZGVyKGRldmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQz
IHRocmVhZElECiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21w
dXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hh
ZGVyIn07CiAKICAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdz
OiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWRvdC1leHByZXNz
aW9uLXJ2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL25lc3RlZC1kb3QtZXhw
cmVzc2lvbi1ydmFsdWUuaHRtbAppbmRleCBiMDU3ZjFmYjEyYjU2MmJhMDk5NzQwNGU0Mjg4OGE0
ZWMwNGIxMmQ4Li45MDc2N2IzNzMzNDNkNmU5OTQzZmI3MjkxN2FlNGQyNzlmNDMwZjY4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWRvdC1leHByZXNzaW9uLXJ2
YWx1ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0ZWQtZG90LWV4cHJl
c3Npb24tcnZhbHVlLmh0bWwKQEAgLTQxLDcgKzQxLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdt
ZW50U2hhZGVyKGZsb2F0IHNoYWRlIDogYXR0cmlidXRlKDApKSA6IFNWX1RhcmdldCAwIHsKIGNv
bnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMg
ZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVu
dFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFk
ZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbmVzdGVkLWxvb3AuaHRtbCBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0ZWQtbG9vcC5odG1sCmluZGV4IGVkODA3MGZlYzMx
OTYxZWIxMzNkN2FiZDE1ODU2YzBmYzQwZTIwMzAuLjcxZDIzMjlhNTZiYjY0M2Q1NDYyYmIzMDIz
MWQxMGFhMmI1MTVmZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0
ZWQtbG9vcC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9uZXN0ZWQtbG9vcC5o
dG1sCkBAIC02OSw3ICs2OSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9h
dCBzaGFkZSA6IGF0dHJpYnV0ZSgwKSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0
KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRy
eVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1
bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29u
c3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL251bGwtZGVyZWZlcmVuY2UuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9udWxsLWRlcmVmZXJlbmNlLmh0bWwKaW5kZXggZDE3OTQ1MGJlNmIxNmI1
NjEwMDU1MGE2MzQ5N2RhODY0ZDNmZTg5MS4uNTc5MGMxMGI4YTY3YzdlNDliZjhjMTlhNDc5N2Fh
YTBlODJiNzVmZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL251bGwtZGVy
ZWZlcmVuY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvbnVsbC1kZXJlZmVy
ZW5jZS5odG1sCkBAIC01MCw3ICs1MCw3IEBAIGNvbXB1dGUgdm9pZCBjb21wdXRlU2hhZGVyKGRl
dmljZSBmbG9hdFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSwgZmxvYXQzIHRocmVhZElECiBgOwog
CiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6
IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAgICBj
b25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAs
IHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvb29iLWFjY2Vzcy5odG1sIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL29vYi1hY2Nlc3MuaHRtbAppbmRleCBkMzdiMzk0Mzg1MzlmZDdkMzk1ZTdmMTZk
ZjBiMWM4MjAwNGQ0OWFjLi4xMWNhNmNjZDBhZWM5YmUzMDQxYjVjNzBmZjI4NWE0YmMzYmMxYWQ4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvb29iLWFjY2Vzcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9vb2ItYWNjZXNzLmh0bWwKQEAgLTE3LDcgKzE3
LDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVmZmVyIDog
cmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0
KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNo
YWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJj
ZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERl
c2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTog
InN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0
bWwKaW5kZXggZWExODVhOWYxYWEzYWNhYzZlNGNkMWVmYmU1ZmI1NTI4NDk2M2JhNS4uNGY4NjZm
YzM5NDhjODI0ZGE5ZWJjODgwMThiOWUzM2FkZTBjNzk2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXIt
YWJzdHJhY3QtbHZhbHVlLmh0bWwKQEAgLTQyLDcgKzQyLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZy
YWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkg
ewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAg
IGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
dmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0
aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUt
My1sZXZlbHMuaHRtbAppbmRleCBkMzQ5MDFkMDIyNDYwMTFhOWZmYWQyNzI4ZjE5OGNmZmVmOGFj
ZmM3Li5hYTlhMTNiZDI3OTc4YWNmMTVjMzNhODdlZDNkNDNhYzIzMjM4YzcxIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUt
My1sZXZlbHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNv
bHZlci9hbmRlci1sdmFsdWUtMy1sZXZlbHMuaHRtbApAQCAtNDUsNyArNDUsNyBAQCBmcmFnbWVu
dCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3Rh
cnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qg
c2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291
cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21v
ZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBj
b25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9hbmRlci1sdmFsdWUuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWx2YWx1
ZS5odG1sCmluZGV4IDExN2ExNTA4YjBkOWEwMWVjMjkyNGRjMzRkNDE4Yzg3ZmM5YzgzYTcuLjk0
OWIxZGQ3NTI5YzVjZmU1YjY5MjljM2QyMzkzYWI1NGUwZTg1MzQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWx2YWx1ZS5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2FuZGVyLWx2YWx1
ZS5odG1sCkBAIC0zNyw3ICszNyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigp
IDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBz
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3Vy
Y2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3Jl
YXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhT
dGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5
UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0g
InRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9w
cm9wZXJ0eXJlc29sdmVyL2FuZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9hbmRlci5odG1sCmluZGV4IDY5ZjczMThjZDlkOGU5MTAzZTNiNDQ1YzBk
MGQyMDNiOTJiY2MyMGIuLmE0NDg0NjFiMDgzNTY5MDkxZWU3YWFiZDc2YTRlNDY2YjA0YmUwNmUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2Fu
ZGVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIv
YW5kZXIuaHRtbApAQCAtMzMsNyArMzMsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVy
dGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFk
ZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9n
eSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvcHJvcGVydHlyZXNvbHZlci9nZXR0ZXIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2dldHRlci5odG1sCmluZGV4IGJmMjI2MTFlMDM3ZmZkNzA1MWFm
OTY3YjY2YTgwZjEwYWYyY2I3YjcuLmRkZWFmMjc0Y2NlODQwMTM5ZmFkNjMzZmYyNjU3NzRkNGU1
NTkzMGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29s
dmVyL2dldHRlci5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJl
c29sdmVyL2dldHRlci5odG1sCkBAIC0yOSw3ICsyOSw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFn
bWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsK
LSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBj
b25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZl
cnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2
ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItYWJzdHJhY3QtbHZhbHVl
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVy
LWFuZGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sCmluZGV4IGFmZDc0MzQ5YWEyYTUyOTJmYjU0OWNl
NTUzNWVmNzQyNGNmYzcxOWEuLjE4MmU0NjVjZjRmOGVlZjU0MzcyMjUwMGZiNWJiMjZiMzY1OWZm
MTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2luZGV4ZXItYW5kZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1hYnN0cmFjdC1sdmFsdWUu
aHRtbApAQCAtNDIsNyArNDIsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6
IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJj
YW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNl
LCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3Rh
Z2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsK
ICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0
cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJv
cGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWx2YWx1ZS0zLWxldmVscy5odG1sIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFsdWUt
My1sZXZlbHMuaHRtbAppbmRleCBlYjFlNTExYmM4YmZlZjMzZDZiZWMzYzYzZDZlYTNiMzVjMjcy
MTc4Li43MDc2NzJlZGFlMWJlYjA0OWNkYTM3MTIwZDcwNDQ0NWFmOWI3YmU1IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVy
LWx2YWx1ZS0zLWxldmVscy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItbHZhbHVlLTMtbGV2ZWxzLmh0bWwKQEAgLTQ1LDcg
KzQ1LDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7
CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFz
eW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1
ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTog
c2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50
U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAi
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIv
aW5kZXhlci1hbmRlci1sdmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXItbHZhbHVlLmh0bWwKaW5kZXggN2RlZDAzYTQ0NzM0
YjFmMWM4NDUxMWI3ZDYwOGU2Y2ZiOGZiMGUwMC4uM2U4NWE0YzM0MzFiM2I4YzAyY2U5MzMyZjkw
MjdlMzc1ZDdlYWFhMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3Bl
cnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci1sdmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLWFuZGVyLWx2YWx1ZS5odG1sCkBA
IC0zNyw3ICszNyw3IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFy
Z2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIp
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hM
U0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHtt
b2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNv
bnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJm
cmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xl
LXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJl
c29sdmVyL2luZGV4ZXItYW5kZXIuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL2luZGV4ZXItYW5kZXIuaHRtbAppbmRleCAxNzc2MWY5Y2E3ZTIyMDAzOGE3
NzkzNDY4ZGJjM2U2ZmZhNmI3YzZjLi5jYmRlNzVmZGM3OGRiNDJkMjFkMmY0NDMwNzNkNWZjZmNl
YWZmY2MzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNv
bHZlci9pbmRleGVyLWFuZGVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3By
b3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1hbmRlci5odG1sCkBAIC0zMyw3ICszMyw3IEBAIGZyYWdt
ZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFz
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBz
dGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25z
dCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJT
b3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwg
ZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAg
IGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItZ2V0dGVy
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVy
LWdldHRlci5odG1sCmluZGV4IDE5NjkxNmE4ZWRkYzZiZDc2ZGI0ZWIyY2UyOGZhNjdmMTE0MGVi
ZGUuLjhhNWQ5YTJmYmYyMDFiM2IxNzg0NzM3NDg1YzFjNzVhNTYzZmI1MzcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItZ2V0dGVy
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5k
ZXhlci1nZXR0ZXIuaHRtbApAQCAtMjgsNyArMjgsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21l
bnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0g
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
c2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0
ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVU
b3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1hYnN0cmFjdC1sdmFsdWUt
My1sZXZlbHMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVy
L2luZGV4ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCmluZGV4IGE2ZDli
NGVjNWViNWMxYzQxZmQ4NWQxZThkOTBlYjcyMDQ0YjQ0MzAuLjg1M2FhMmVkZDM5YzJhZjAxZTgw
MDUwY2M2NzRlYmM3NDQ5ODI4NGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVs
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2lu
ZGV4ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCkBAIC02MCw3ICs2MCw3
IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcigpIDogU1ZfVGFyZ2V0IDAgewogY29u
c3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBm
dW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsK
KyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50
U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRl
ciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL2luZGV4
ZXItc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKaW5k
ZXggZTQ2ZTA2ZGE1ZjBiNTE0ZjU5NmQ0NzU4OTE3MzFhZjJlYWY5YWU1NC4uZGE2MWIxNDZkN2Nh
OGJiNTg5YzFiNmVlN2JjZGRmYTZlOTZkODVhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXItYWJzdHJhY3QtbHZhbHVl
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5k
ZXhlci1zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKQEAgLTQ3LDcgKzQ3LDcgQEAgZnJhZ21l
bnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0
YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHtt
b2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAg
Y29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvaW5kZXhlci1zZXR0ZXIt
bHZhbHVlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9p
bmRleGVyLXNldHRlci1sdmFsdWUuaHRtbAppbmRleCA4Mjc5ODFhNjYyMzE4ZTk5YWU4ZDU2ZmZh
NDNlNTE0NTIwYmZiMTg1Li5iZWM5ZDkyZjc2ZGIxYzE5Y2Q3Y2EzZDJiNGY0ZWYzNTg5NGU0NTEx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9p
bmRleGVyLXNldHRlci1sdmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
cHJvcGVydHlyZXNvbHZlci9pbmRleGVyLXNldHRlci1sdmFsdWUuaHRtbApAQCAtNDIsNyArNDIs
NyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoKSA6IFNWX1RhcmdldCAwIHsKIGNv
bnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMg
ZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVu
dFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFk
ZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRl
eGVyLXNldHRlci5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2
ZXIvaW5kZXhlci1zZXR0ZXIuaHRtbAppbmRleCA2MmRkZjVlYTcxM2NkMjQ5NDFmZmI0YjFlODA4
ZjQ5MzNhZjFjM2NjLi5iNjE2MjNhYjFmNDViMWIxMjE5ZTI1NTU2ZmQ2NWQ5YWNiNjlhZjIwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9pbmRl
eGVyLXNldHRlci5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJl
c29sdmVyL2luZGV4ZXItc2V0dGVyLmh0bWwKQEAgLTQ1LDcgKzQ1LDcgQEAgZnJhZ21lbnQgZmxv
YXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRl
dmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0p
OwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3Qg
cHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1
ZS0zLWxldmVscy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2
ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS0zLWxldmVscy5odG1sCmluZGV4IDU5YzQ4NTA5MDAw
ZjZhMjZiMmYwOGE5M2M1YzhkMTFlZmYyOGRiNjcuLjQxOGI4NTk1YzNjOTY0ZDlmNzVhMTkxNjRk
ODQ0YTY1NWE1ZGI5ZTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9w
ZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0cmFjdC1sdmFsdWUtMy1sZXZlbHMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0ZXItYWJzdHJhY3Qt
bHZhbHVlLTMtbGV2ZWxzLmh0bWwKQEAgLTYwLDcgKzYwLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZy
YWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkg
ewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAg
IGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
dmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0
aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3RyYWN0LWx2YWx1ZS5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWFic3Ry
YWN0LWx2YWx1ZS5odG1sCmluZGV4IDY4ZDU4N2U3NjBlZTMzNDM1YzY3YWE2NDZhMGJjN2E0ZTBh
ODkyNTQuLjk2YWQ4YzhkODAyNDIyNGE5ZWUyNDU1OGU3OGE0OGRmODA0MTVmMGMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1hYnN0
cmFjdC1sdmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHly
ZXNvbHZlci9zZXR0ZXItYWJzdHJhY3QtbHZhbHVlLmh0bWwKQEAgLTQ3LDcgKzQ3LDcgQEAgZnJh
Z21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52
YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxl
LCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9
IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVyLWx2YWx1
ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Byb3BlcnR5cmVzb2x2ZXIvc2V0dGVy
LWx2YWx1ZS5odG1sCmluZGV4IDdhYmE1Y2ZkZWUyNWY1MDk5Y2RiYjg1MGVhYjJkMWJjM2I2NGVl
NjUuLmQ1MGY4Yjg0YTU2NDZiOTRjN2VlMmI5MjFkOGYwMjgxYWM5MWE3NTQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9wcm9wZXJ0eXJlc29sdmVyL3NldHRlci1sdmFsdWUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvcHJvcGVydHlyZXNvbHZlci9zZXR0
ZXItbHZhbHVlLmh0bWwKQEAgLTQyLDcgKzQyLDcgQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50
U2hhZGVyKCkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAg
IGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0
IHZlcnRleFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4
U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRlLWhpZ2gtem9tYmllcy5odG1sIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRlLWhpZ2gtem9tYmllcy5odG1sCmluZGV4IDA0
MDdmNzA1NjliZjdiN2ZkOTVlZDA5ZjY1NGZlYmU3NzM3YmY0YzcuLmJhNGRkMDgwY2U4YjEzOGY3
ZDY2MzVhM2NiZjhkNTY2MGFiYjZmNmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93
aGxzbC9yZWFkLW1vZGlmeS13cml0ZS1oaWdoLXpvbWJpZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvcmVhZC1tb2RpZnktd3JpdGUtaGlnaC16b21iaWVzLmh0bWwKQEAgLTM1
LDcgKzM1LDcgQEAgY29tcHV0ZSB2b2lkIGNvbXB1dGVTaGFkZXIoZGV2aWNlIGZsb2F0W10gYnVm
ZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQKIGA7CiAKIGFzeW5jIGZ1bmN0aW9u
IHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNv
bnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRl
clNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRHcm91cExh
eW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0eTogNywg
dHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9yZWFkLW1vZGlmeS13cml0ZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3JlYWQtbW9kaWZ5LXdyaXRlLmh0bWwKaW5kZXggY2VmN2YwMWY1NjFjYzdiODY1YTc1M2QxMTEz
Yjc3MDg3OTI0YmNjMS4uOGQwNTZhM2FmYmZlM2Y5ZjA5NzU5Nzg2ZjBmMjYyN2IzNzMxMzhhMSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRlLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3JlYWQtbW9kaWZ5LXdyaXRlLmh0bWwK
QEAgLTM5LDcgKzM5LDcgQEAgYXN5bmMgZnVuY3Rpb24gc3RhcnQoKSB7CiAgICAgY29uc3QgYWRh
cHRlciA9IGF3YWl0IG5hdmlnYXRvci5ncHUucmVxdWVzdEFkYXB0ZXIoKTsKICAgICBjb25zdCBk
ZXZpY2UgPSBhd2FpdCBhZGFwdGVyLnJlcXVlc3REZXZpY2UoKTsKIAotICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsK
IAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7Ymlu
ZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZXR1cm4tbG9jYWwtdmFyaWFibGUuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9yZXR1cm4tbG9jYWwtdmFyaWFibGUuaHRtbApp
bmRleCA2ZjY5NDcwNDRkODBiZWYyMTk0OWNjMmFiYzhhYmYzYmIyM2NkMzc3Li43NWQxYzljYTVi
YTJhNjY5NTg3NzYyN2Y5OTlkODBkMWM5YmEwNjhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvcmV0dXJuLWxvY2FsLXZhcmlhYmxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L3dobHNsL3JldHVybi1sb2NhbC12YXJpYWJsZS5odG1sCkBAIC0zNCw3ICszNCw3IEBA
IGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdCBzaGFkZSA6IGF0dHJpYnV0ZSgw
KSkgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRl
eFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVy
In07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kg
PSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEwLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMTAuaHRtbAppbmRleCA3Yjk0OTU2OTZjZWUwMDEwODVlZmI2Njcw
ZTkxZjcwNzA5MmY2YjhiLi5iYWJhMjY0MDE0OWFhYjIwM2FlODIyMWEyZWE4Y2U0Y2M4ZDZmMTYx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMtMTAuaHRtbApAQCAtMjIsOCArMjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3Qg
Y2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6
IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNv
dXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFn
ZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRT
aGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTEuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0x
MS5odG1sCmluZGV4IGQxZGExNTlkNGZlYmVhYTMwMWFlM2JkNGQxMDc5Nzg5NGU3NmY0ODIuLjY0
MjRiMWI3NTRiOTk2NTBiZDZkYTIzOWVkMmM5Mzk5MjIxZTlhMzkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0xMS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xMS5odG1sCkBAIC0yNSw4
ICsyNSw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24g
OiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkg
ewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0
IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
ZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFk
ZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2
ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21l
bnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0
IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0xMi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEyLmh0bWwKaW5kZXggNTNhMmY0
ODA0NjE1ZjYxZTBjNzBiMmQ5MzUyMjJhYWY4MDEwNjM0Ni4uYmRkNmI4YmVkMmRiOTdiOGIwYjhk
MmU5Y2FlM2ZlMTNjZjVmYTNmYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEyLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTEyLmh0bWwKQEAgLTI0LDggKzI0LDggQEAgZnJhZ21lbnQg
ZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNW
X1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52
YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJj
ZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1
bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAg
IGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kg
PSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTEzLmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMTMuaHRtbAppbmRleCA3NGIyZDkxNmM3M2FmNWEyNjY1NjI0ZTUy
NTczYjgxZmVhOGVhOTNkLi5lMjljZmQxMmIwNTRkYjUwMTRmYTJjZDUxNWQxOGYxOWMyNDQ3ZDZj
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMtMTMuaHRtbApAQCAtMjIsOCArMjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3Qg
Y2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6
IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNv
dXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFn
ZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRT
aGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0x
NC5odG1sCmluZGV4IGRiNWUxYWJhMTU3ZGUyNzFhMjU0NDEwNTJkZmJhYzhmNDRlZWNmMTcuLjg2
ODQ4M2IyZDA4ZDU1NzQ3NjRjOTRkOTMxNjE5N2UyMDE0YjMwMWQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0xNC5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNC5odG1sCkBAIC0yNiw4
ICsyNiw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24g
OiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkg
ewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0
IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
ZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFk
ZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2
ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21l
bnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0
IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0xNS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWwKaW5kZXggOTU3Yzk2
NGFkNTZkNDE4YzVhODNmYjdiOTBiMjhjMWZkYjM2ZjZmNC4uMDQyMmQ5YzU1NTkzZjc2ZmY3NWI3
ZDdmODI5NDU5NTIyZjk4ZjExMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTE1Lmh0bWwKQEAgLTI2LDggKzI2LDggQEAgZnJhZ21lbnQg
ZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNW
X1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52
YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJj
ZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1
bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAg
IGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kg
PSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE2Lmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMTYuaHRtbAppbmRleCAyOWE0ZjRhMzlmMDljZjdmNzFkNmNiYmNj
Mzk3ZjM0ODJlZmE2YmIxLi5mYzdjNDllYjIxNjdmN2YzZGZkYzljZjc1OWZiOGIxNjlhYTQ3Y2Jj
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTYuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMtMTYuaHRtbApAQCAtMjYsOCArMjYsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3Qg
Y2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6
IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNv
dXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFn
ZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRT
aGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTcuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0x
Ny5odG1sCmluZGV4IDNjOWJmNDc0M2I0Yjg0MTJhOTU1YjBkOWZjNDg4M2ZiM2JmNzI3YzcuLmY2
YzI1YmE3ZmYwMzE3ZDIzZTU4MTMxYjkyYjg5YTU1M2MwNGU5ZGMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0xNy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0
ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0xNy5odG1sCkBAIC0yMyw4
ICsyMyw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24g
OiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkg
ewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1
bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0
IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
ZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFk
ZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVh
dGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3Qg
dmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2
ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21l
bnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0
IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0xOC5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE4Lmh0bWwKaW5kZXggODEzN2U2
NWIzNjcxMzkxZjI3MDlkM2EwMWU1NmMwNmQ5NDNhODc3Yi4uNTAzODhjMmY5Y2Y1NjVhNmEwZjA1
NGI4MTkyM2NhYWNmNDdkM2NiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE4Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTE4Lmh0bWwKQEAgLTI4LDggKzI4LDggQEAgZnJhZ21lbnQg
ZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNW
X1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52
YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hh
ZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJj
ZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1
bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAg
IGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kg
PSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTE5Lmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMTkuaHRtbAppbmRleCBkMjMzMmE1MGQ1N2QzOGIwYWM1ZjA1NTNm
YTY4OTUzYjUxMDkxNTUzLi4wYWRiZGVjYzE4YmE1MzQ1ZjY0OTI2ODg4MTgzNjVhYTM3ODEzMDNm
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMTkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMtMTkuaHRtbApAQCAtMjgsOCArMjgsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFk
ZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3Qg
Y2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5j
dGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6
IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7
CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJN
b2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNv
dXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFn
ZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRT
aGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMi5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIu
aHRtbAppbmRleCBlNWQyNmIzNzhlNmZmMDM1MDUyYWMxM2U0NzFlNTYxZDVjODFkMmM1Li5kM2Q0
ZDU4OGU4Mzg3Zjk4MjgyMTVmNzdjYzUzMzMwMjYzMzdjNTBhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMi5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yLmh0bWwKQEAgLTIzLDggKzIz
LDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNW
X1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0g
ICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7
Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJh
Z21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFn
bWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNv
dXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0
ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRl
eFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJp
bWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzLTIwLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjAuaHRtbAppbmRleCBkOWM4YWI2Zjgz
NGQ1MDdmNWI2ZTdkNzU1ODI2MDM4NzJiNDc1ZjQwLi42ZGJhNzhiMTdhNWEwNDI5NjZkNWUzNTI4
YjIyOWZhNzA3NzcwNmE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjAuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMjAuaHRtbApAQCAtMjQsOCArMjQsOCBAQCBmcmFnbWVudCBmbG9h
dDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFy
Z2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qg
dmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVy
dGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRl
clNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOwor
ICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVs
ZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9
IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9
OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9w
b2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIx
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjEuaHRtbAppbmRleCAxMDMyZmU4YWZhNDBiZTMyMDI0
MzM5NzhmYmZjYzBiMjRlZGM5OTBmLi4yOTViODRiMGQ1ODMxNGZlNzA4ZTQyNmZlZTU0MWRjMmI2
NGI5MDgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjEuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjEuaHRtbApAQCAtMjAsOCArMjAsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21l
bnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewog
YDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUg
PSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0
IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
ZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6
IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNv
bnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAi
dHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIyLmh0bWwgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMtMjIuaHRtbAppbmRleCBhZjRmYzljZDJlODNmNzMzM2Q0YzAzZDBhMDJj
M2Y1YTlkN2NlNjIyLi40OWEyZWU5OWJlOWJiY2VhNTU5ZGQ1YzI0ZjRjMWNmMTc2OGQ4NWJjIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
MjIuaHRtbApAQCAtMjQsOCArMjQsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIo
ZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5
bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDog
dHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRT
aGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZy
YWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUt
c3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTIzLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMtMjMuaHRtbAppbmRleCAzZGRjMWYwN2I5MGE4NDU2N2NlNmFlNjAyMmJkYTg2NmNhNzBi
ZDg4Li4wMWIyYTBkYmNhMmQwNGUxZDk2MzY4NGY4Y2MyNGQ0NzYwM2YzYTFhIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtMjMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wv
c2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjMuaHRtbApA
QCAtMjQsOCArMjQsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBv
c2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rp
b24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0
cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUo
e2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3Vy
Y2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVs
ZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2Ug
PSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hh
ZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1
bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTI0Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQu
aHRtbAppbmRleCAxNGEyZDA3ZTc4ZjUzMDllMGU2ZGI1Y2E5NjBlMWQzZmYxMmJhNDQwLi4yMzMw
Zjc2MmVkNTc2YjNhNWRmOWY3ZmYzMzk4NGMxOGZlYTU0OTMwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjQuaHRtbApAQCAtMjMsOCAr
MjMsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDog
U1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsK
LSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBm
cmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZy
YWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hh
ZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVy
U291cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRl
U2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZl
cnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVy
dGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50
U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBw
cmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtMjUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNS5odG1sCmluZGV4IDkzNDIzNGRl
NzZiOTc4NjU5MTY3MzVkYzNmNDc5NmEzYjNjNmJjYzUuLmJhZjczY2IxOGQ0NDNkMGI3MWE2YmE0
YzI0NDc4Njg2ZTUyMjliZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNS5odG1sCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy0yNS5odG1sCkBAIC0yMiw4ICsyMiw4IEBAIGZyYWdtZW50IGZs
b2F0NCBmcmFnbWVudFNoYWRlcjIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1Zf
VGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
dmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0p
OworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFn
ZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRl
ciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZl
VG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
LTI2Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjYuaHRtbAppbmRleCA0ZjgwYTc1Y2M2Mjc1OWMz
YjRiODg4OTk3MWU3NmJhYTIwODc5YTg3Li5jYjUxNmFmNjhjMWRkZmY1NGI5ZGQ2MTEyNmZjZjU5
NTk3YTNiY2RiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjYuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hh
ZGVyLW1vZHVsZXMtMjYuaHRtbApAQCAtMjQsOCArMjQsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJh
Z21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAg
ewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBh
c3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2Us
IGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmlj
ZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBpc1dITFNM
OiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3QgZnJhZ21l
bnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVu
dFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTogdmVydGV4
U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29uc3QgZnJh
Z21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAi
ZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0cmlhbmds
ZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtMjcuaHRtbCBiL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy0yNy5odG1sCmluZGV4IDM5MWMxNTRhZjQzNjUwZjVkNWM1ZDU5Yzc1ODIyMDI3OTJj
ZmI3M2QuLjUxZGI2OWRjODJmMWMyYmIwNGQwNzhlMjEzNmQwM2UxNTc1YzlmZGQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy0yNy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0yNy5odG1s
CkBAIC0yMiw4ICsyMiw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQg
cG9zaXRpb24gOiBTVl9Qb3NpdGlvbiwgYm9vbCBpc0ZvbnRGYWNlIDoKIGA7CiAKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRl
dmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExT
TDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0
ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVy
U291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJN
b2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0
YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVu
dFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlw
IjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXIt
bW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy0zLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMt
My5odG1sCmluZGV4IGZlNGYyNDQ2MzI4Y2ViYjYzNDM0ZDg1MWQ0NGE0M2M5OWVhZWUyOTMuLjE1
ZDMzMjAyY2VlZDdiZGY1NWEyNmU2ZmY0OWNkMTUwZWQ2YjM4ZjEgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy0zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTMuaHRtbApAQCAtMjEsOCAr
MjEsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDog
U1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQo
ZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNo
YWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0g
ICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0
IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZl
cnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2
aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxl
OiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAg
ICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFy
YXRlLXNoYWRlci1tb2R1bGVzLTQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy00Lmh0bWwKaW5kZXgg
NTRlYzhiYjFjNzEwNWJiZTVhMGFkODQ4NTlhMWY2MjUwZmIyNTcyNS4uN2QzNzJlYjMxYzIzOTY2
YWM5YmYzM2FiYTAxMjg3Mjk3NjllYmMzOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1
L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTQu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVs
ZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNC5odG1sCkBAIC0yMCw4ICsyMCw4IEBAIGZyYWdt
ZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikg
OiBTVl9UYXJnZXQgMCB7CiBgOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAg
ICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFn
bWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdt
ZW50U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVy
TW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291
cmNlfSk7CisgICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hh
ZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRl
eFN0YWdlID0ge21vZHVsZTogdmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4
U2hhZGVyIn07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hh
ZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmlt
aXRpdmVUb3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1v
ZHVsZXMtNS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1t
b2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTUuaHRtbAppbmRleCBmZGMxOGZlODc0NWUx
MjVkOGJlNjZlNWU0ZGY4YjA2ZjM1N2Q4NWVlLi44OTQ1NWM3ZDRhYjlmZWRhYzlhZDBkY2JlOWQ0
M2JmYjA5OWVlMjgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy01Lmh0bWwKQEAgLTIzLDggKzIzLDggQEAgZnJhZ21lbnQgZmxvYXQ0IGZy
YWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0aW9uKSA6IFNWX1RhcmdldCAw
IHsKIGA7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHZlcnRl
eFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9k
dWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3Vy
Y2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0ZXhTaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJTb3VyY2V9KTsKKyAgICBj
b25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2Nv
ZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVydGV4U3RhZ2UgPSB7bW9k
dWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFkZXIifTsKICAg
ICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJhZ21lbnRTaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5
ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy02Lmh0bWwg
Yi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJh
dGUtc2hhZGVyLW1vZHVsZXMtNi5odG1sCmluZGV4IGUwNWU0Njg0YzgwNmY0OGE0YjZiMjA4ZGNl
MTI1MGVjZmU2NjE5MDMuLmRhYmE2ODdhYmYwMDk0NmVhYmM2MGRhMGE5ZDZjNzU2NWYwZTdjNjkg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy02Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
LTYuaHRtbApAQCAtMjIsOCArMjIsOCBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIo
ZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1ZfVGFyZ2V0IDAgewogYDsKIAogYXN5
bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxl
ID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNoYWRlclNvdXJjZSwgaXNXSExTTDog
dHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFk
ZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0pOworICAgIGNvbnN0IGZyYWdtZW50
U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogZnJhZ21lbnRT
aGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHZlcnRleFNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImZy
YWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kgPSAidHJpYW5nbGUt
c3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTcuaHRtbCBiL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9k
dWxlcy03Lmh0bWwKaW5kZXggNmNkMWI0Zjk2NzJiOGIxZmM5NWYzOTA5MjcwNmIwNWI5OWE2NTdh
MS4uMmVhZjA0OTk5MDMwYWQ0M2Q1M2QxMmQwY2E5M2QxNzM3YTE2MWUxMCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRl
LXNoYWRlci1tb2R1bGVzLTcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtNy5odG1sCkBAIC0y
Niw4ICsyNiw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRp
b24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmlj
ZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0
ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhT
aGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJh
Z21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1z
aGFkZXItbW9kdWxlcy04Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUt
c2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMtOC5odG1sCmluZGV4IDAxMmE0
ZmQwYzI2ZGZmYWUzNjc0NzVjMzg1NzVmYmQ1YjFiOTc5MWIuLjVlNzZkOTBhZGM3ZTc1MDgxOTAw
NTMyNTUyOTY0NTIwNGU1ZDJmNDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxz
bC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy04Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3Nl
cGFyYXRlLXNoYWRlci1tb2R1bGVzLTguaHRtbApAQCAtMjEsOCArMjEsOCBAQCBmcmFnbWVudCBm
bG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQ0IHBvc2l0aW9uIDogU1ZfUG9zaXRpb24pIDogU1Zf
VGFyZ2V0IDAgewogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
dmVydGV4U2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7Ci0gICAgY29uc3QgZnJhZ21lbnRT
aGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBmcmFnbWVudFNo
YWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVs
ZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZX0p
OworICAgIGNvbnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1v
ZHVsZSh7Y29kZTogZnJhZ21lbnRTaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFn
ZSA9IHttb2R1bGU6IHZlcnRleFNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRl
ciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBmcmFnbWVudFNoYWRlck1v
ZHVsZSwgZW50cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZl
VG9wb2xvZ3kgPSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
Z3B1L3dobHNsL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVz
LTkuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxl
cy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy05Lmh0bWwKaW5kZXggZGE2YzA5NTI5NDFkOTAwZjc1
Yzk2NGEwOTNlYjA5N2MwZGYwNDBkMS4uYWE2YTc4NTc0NmYyMjUzNTdlODI3YzllMDg0ZjYwNjM4
YzZhZjgxMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NlcGFyYXRlLXNo
YWRlci1tb2R1bGVzL3NlcGFyYXRlLXNoYWRlci1tb2R1bGVzLTkuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVy
LW1vZHVsZXMtOS5odG1sCkBAIC0xOSw4ICsxOSw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVu
dFNoYWRlcihmbG9hdDQgcG9zaXRpb24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBg
OwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCB2ZXJ0ZXhTaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhTaGFkZXJT
b3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKLSAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9
IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlLCBp
c1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgdmVydGV4U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNy
ZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogdmVydGV4U2hhZGVyU291cmNlfSk7CisgICAgY29uc3Qg
ZnJhZ21lbnRTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBm
cmFnbWVudFNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRleFN0YWdlID0ge21vZHVsZTog
dmVydGV4U2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVyIn07CiAgICAgY29u
c3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IGZyYWdtZW50U2hhZGVyTW9kdWxlLCBlbnRyeVBv
aW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9neSA9ICJ0
cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc2Vw
YXJhdGUtc2hhZGVyLW1vZHVsZXMvc2VwYXJhdGUtc2hhZGVyLW1vZHVsZXMuaHRtbCBiL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFk
ZXItbW9kdWxlcy5odG1sCmluZGV4IGQ0MjBhODIyZWNlODNmZjA3NDg3YThmZDQ4ZjJiYzk3NThi
ZWFiYWYuLmJmMGRkZjFmYTY5N2FkZTE5ZTdiMWM4MjdhYWQ4NDYxZDJjZDg5OTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBh
cmF0ZS1zaGFkZXItbW9kdWxlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9z
ZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy9zZXBhcmF0ZS1zaGFkZXItbW9kdWxlcy5odG1sCkBAIC0y
MCw4ICsyMCw4IEBAIGZyYWdtZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihmbG9hdDQgcG9zaXRp
b24gOiBTVl9Qb3NpdGlvbikgOiBTVl9UYXJnZXQgMCB7CiBjb25zdCBjYW52YXMgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmlj
ZSkgewotICAgIGNvbnN0IHZlcnRleFNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJN
b2R1bGUoe2NvZGU6IHZlcnRleFNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwotICAgIGNv
bnN0IGZyYWdtZW50U2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29k
ZTogZnJhZ21lbnRTaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCB2ZXJ0
ZXhTaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiB2ZXJ0ZXhT
aGFkZXJTb3VyY2V9KTsKKyAgICBjb25zdCBmcmFnbWVudFNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IGZyYWdtZW50U2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiB2ZXJ0ZXhTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6
ICJ2ZXJ0ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogZnJh
Z21lbnRTaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNv
bnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC9zaW1wbGUtYXJyYXlzLmh0bWwgYi9MYXlvdXRUZXN0cy93
ZWJncHUvd2hsc2wvc2ltcGxlLWFycmF5cy5odG1sCmluZGV4IDgxMTE0OWVkMjI1ZjA2MGY4NGE4
OTUwYTU2OTBjZGQzMDUxZTFlOWUuLjViMzNkYjI5NzNkMDMzZWZlYzkwZjgwZDA0NjBkYzM3MGRj
ODI3ZWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC9zaW1wbGUtYXJyYXlz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3NpbXBsZS1hcnJheXMuaHRtbApA
QCAtNTksNyArNTksNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgaW50W10g
YnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQgOgogfQogYDsKIGFzeW5jIGZ1
bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRH
cm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0
eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC9zdG9yZS10by1wcm9wZXJ0eS11cGRhdGVzLXByb3Blcmx5Lmh0bWwgYi9M
YXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvc3RvcmUtdG8tcHJvcGVydHktdXBkYXRlcy1wcm9wZXJs
eS5odG1sCmluZGV4IDBjNzlhNjkxM2MzOGQzYzQyZDc0YzBhMzE5NDhmMGNiMWU4NmIwYzYuLmJl
ZTk0NzVkZWFjYTA3YTg5N2ZiNzM3Yjg5NzU2ZWI2ODRkMzBiZWQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC9zdG9yZS10by1wcm9wZXJ0eS11cGRhdGVzLXByb3Blcmx5Lmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3N0b3JlLXRvLXByb3BlcnR5LXVwZGF0
ZXMtcHJvcGVybHkuaHRtbApAQCAtNDksNyArNDksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21l
bnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29u
c3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBm
dW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2Uu
Y3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsK
KyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50
U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRl
ciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1nZXRkaW1lbnNpb25z
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdGV4dHVyZXMtZ2V0ZGltZW5zaW9ucy5o
dG1sCmluZGV4IGZlMGY1Y2Q2OWM0MDdjODM0ZTIxZDNkNGUwODVhNmMxNjI3ZTJmZGEuLjk1YWNh
MzQ4MDAyZWQ2M2M0YWUxNTIzOTAxNzBjNjUyNzIxZWE4NjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1nZXRkaW1lbnNpb25zLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLWdldGRpbWVuc2lvbnMuaHRtbApAQCAtMjAsNyAr
MjAsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihUZXh0dXJlMkQ8ZmxvYXQ0PiB0aGVU
ZXh0dXJlIDogcmVnaXN0ZXIodDApLCBkZXZpY2UgdQogYDsKIAogYXN5bmMgZnVuY3Rpb24gc3Rh
cnQoZGV2aWNlKSB7Ci0gICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRl
ck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qg
c2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291
cmNlfSk7CiAgICAgY29uc3QgY29tcHV0ZVN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAiY29tcHV0ZVNoYWRlciJ9OwogCiAgICAgY29uc3QgYmluZEdyb3VwTGF5b3V0
RGVzY3JpcHRvciA9IHtiaW5kaW5nczogW3tiaW5kaW5nOiAwLCB2aXNpYmlsaXR5OiA3LCB0eXBl
OiAic2FtcGxlZC10ZXh0dXJlIn0sIHtiaW5kaW5nOiAxLCB2aXNpYmlsaXR5OiA3LCB0eXBlOiAi
c3RvcmFnZS1idWZmZXIifV19OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3RleHR1cmVzLWxvYWQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1s
b2FkLmh0bWwKaW5kZXggZTI5NTdiOWU1YjNlNTRiNWM5ZGVjNDA1MTkyYzUxZmQ3NDI0MTI2Ny4u
ZWE0ZDY4MTkwMzMxMjU3MzBhOGQ1OTI4ZDdjMDgyY2Q2YTkyODY3MSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVzLWxvYWQuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvdGV4dHVyZXMtbG9hZC5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZyYWdt
ZW50IGZsb2F0NCBmcmFnbWVudFNoYWRlcihUZXh0dXJlMkQ8ZmxvYXQ0PiB0aGVUZXh0dXJlIDog
cmVnaXN0ZXIodDApKSA6IFNWCiBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY2FudmFzIik7CiAKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IHZlcnRl
eFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAidmVydGV4U2hhZGVy
In07CiAgICAgY29uc3QgZnJhZ21lbnRTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50
cnlQb2ludDogImZyYWdtZW50U2hhZGVyIn07CiAgICAgY29uc3QgcHJpbWl0aXZlVG9wb2xvZ3kg
PSAidHJpYW5nbGUtc3RyaXAiOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNs
L3RleHR1cmVzLXNhbXBsZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3RleHR1cmVz
LXNhbXBsZS5odG1sCmluZGV4IDg3YjQwMzU2YjQyOGUyZmVlMTA1ZTI2NTk2NWFlNWE5NWJjNWM2
YzAuLjg2MDNjODQxZThhMGNiODk1YjE2ODRhMDM3MWExODgzZTVhYWVkNDkgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90ZXh0dXJlcy1zYW1wbGUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJncHUvd2hsc2wvdGV4dHVyZXMtc2FtcGxlLmh0bWwKQEAgLTE5LDcgKzE5LDcg
QEAgZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKFRleHR1cmUyRDxmbG9hdDQ+IHRoZVRl
eHR1cmUgOiByZWdpc3Rlcih0MCksIHNhbXAKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0g
ICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTog
c2hhZGVyU291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0g
ZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29u
c3QgdmVydGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0
ZXhTaGFkZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9k
dWxlLCBlbnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVU
b3BvbG9neSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvdHdvLWRpbWVuc2lvbmFsLWFycmF5Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvdHdvLWRpbWVuc2lvbmFsLWFycmF5Lmh0bWwKaW5kZXggMzU1Mjg2ZDBkMjM3Nzg0OTM3
M2ZhMTYxYjI5MDJlMjRiMjM2NmEzNS4uMzE5ZjhhNGYwNDg4ZDIwNzA0YjgxZDQyMjFmZjIyNTQz
ZmI0NTMwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3R3by1kaW1lbnNp
b25hbC1hcnJheS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC90d28tZGltZW5z
aW9uYWwtYXJyYXkuaHRtbApAQCAtNjEsNyArNjEsNyBAQCBjb21wdXRlIHZvaWQgY29tcHV0ZVNo
YWRlcihkZXZpY2UgaW50W10gYnVmZmVyIDogcmVnaXN0ZXIodTApLCBmbG9hdDMgdGhyZWFkSUQg
OgogfQogYDsKIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KGRldmljZSkgewotICAgIGNvbnN0IHNoYWRl
ck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwg
aXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVT
aGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFn
ZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsK
IAogICAgIGNvbnN0IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7Ymlu
ZGluZzogMCwgdmlzaWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC91c2UtdW5kZWZpbmVkLXZhcmlhYmxlLTIu
aHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC91c2UtdW5kZWZpbmVkLXZhcmlhYmxlLTIu
aHRtbAppbmRleCBlMDZmNzI0MjRkNjk1MmMyZjE2Yjg2YmFhNzA3NDUyOGJlYjQ2YmUzLi5jZDMw
NGFlNTRhNGRhYjczOTkzZjNmYjA5YjA3YTNiMTEwZGFmM2FiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJncHUvd2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJsZS0yLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3VzZS11bmRlZmluZWQtdmFyaWFibGUtMi5odG1sCkBAIC0x
Nyw3ICsxNyw3IEBAIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KCkgewogICAgIGNvbnN0IGFkYXB0ZXIg
PSBhd2FpdCBuYXZpZ2F0b3IuZ3B1LnJlcXVlc3RBZGFwdGVyKCk7CiAgICAgY29uc3QgZGV2aWNl
ID0gYXdhaXQgYWRhcHRlci5yZXF1ZXN0RGV2aWNlKCk7CiAKLSAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hM
U0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVy
TW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7
bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CiAKICAg
ICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6
IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJsZS5odG1sIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3VzZS11bmRlZmluZWQtdmFyaWFibGUuaHRtbAppbmRl
eCBkYTBlMmZkMWNhMTk1MTEyZWRlNWQ2YzlhNTJhNTIwZDE3ZjYxN2M5Li45YzUwMDczN2IyZmNl
NjA2MWM4YjU4ZDg5NzI4ODYyYzE1MDY5MTRiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJn
cHUvd2hsc2wvdXNlLXVuZGVmaW5lZC12YXJpYWJsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3dl
YmdwdS93aGxzbC91c2UtdW5kZWZpbmVkLXZhcmlhYmxlLmh0bWwKQEAgLTIwLDcgKzIwLDcgQEAg
YXN5bmMgZnVuY3Rpb24gc3RhcnQoKSB7CiAgICAgY29uc3QgYWRhcHRlciA9IGF3YWl0IG5hdmln
YXRvci5ncHUucmVxdWVzdEFkYXB0ZXIoKTsKICAgICBjb25zdCBkZXZpY2UgPSBhd2FpdCBhZGFw
dGVyLnJlcXVlc3REZXZpY2UoKTsKIAotICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5j
cmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNvdXJjZSwgaXNXSExTTDogdHJ1ZX0pOwor
ICAgIGNvbnN0IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6
IHNoYWRlclNvdXJjZX0pOwogICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6IHNoYWRl
ck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKIAogICAgIGNvbnN0IGJpbmRH
cm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlzaWJpbGl0
eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmdwdS93aGxzbC93aGlsZS1sb29wLWJyZWFrLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wvd2hpbGUtbG9vcC1icmVhay5odG1sCmluZGV4IDVhNTQ3OTc0YjQ2Y2JkZGUzMGVmYWRi
MWEwMTFkOWQxNzc2ODEyNTkuLmI2YTkzMGY4ODY1NGE5ODIxNWYyZTNlMzRmZWE5Y2NhOGQ1M2Yw
OTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGlsZS1sb29wLWJyZWFr
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3doaWxlLWxvb3AtYnJlYWsuaHRt
bApAQCAtMzksNyArMzksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQg
c2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChk
ZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9k
dWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFk
ZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9
KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQ
b2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxl
OiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0
IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS93aGxzbC93aGlsZS1sb29wLWNvbnRpbnVlLmh0bWwgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wvd2hpbGUtbG9vcC1jb250aW51ZS5odG1sCmluZGV4IDMwOGVmZTFiMGZm
ZjAzYmFhNTg1YzdiMTk2MDE3ZDQ1NTAyY2E2YTguLjQyMjNiZjFjM2EyMTNiYjJmOTMxNGQ0MjVj
MzdiZGYwNjJjNDUxZTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGls
ZS1sb29wLWNvbnRpbnVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3doaWxl
LWxvb3AtY29udGludWUuaHRtbApAQCAtMzksNyArMzksNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJh
Z21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewog
Y29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3lu
YyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZp
Y2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9
KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNo
YWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdt
ZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNo
YWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC93aGxzbC5odG1sIGIvTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsL3dobHNsLmh0bWwKaW5kZXggYmQ4NzA0ODEyNmVmOGE3OGU2NDgz
MTc4ZjU1NWY3MGQyNjFhY2IzNi4uOWMyNGMxZjI3N2Q5ZGM2NjQxMDk3MjQyODJlODE4OTVjOWE3
NjQxYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3dobHNsLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3dobHNsLmh0bWwKQEAgLTE5LDcgKzE5LDcgQEAg
ZnJhZ21lbnQgZmxvYXQ0IGZyYWdtZW50U2hhZGVyKGZsb2F0NCBwb3NpdGlvbiA6IFNWX1Bvc2l0
aW9uKSA6IFNWX1RhcmdldCAwIHsKIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjYW52YXMiKTsKIAogYXN5bmMgZnVuY3Rpb24gc3RhcnQoZGV2aWNlKSB7Ci0gICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNl
LmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVyU291cmNlfSk7CiAgICAgY29uc3QgdmVy
dGV4U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJ2ZXJ0ZXhTaGFk
ZXIifTsKICAgICBjb25zdCBmcmFnbWVudFN0YWdlID0ge21vZHVsZTogc2hhZGVyTW9kdWxlLCBl
bnRyeVBvaW50OiAiZnJhZ21lbnRTaGFkZXIifTsKICAgICBjb25zdCBwcmltaXRpdmVUb3BvbG9n
eSA9ICJ0cmlhbmdsZS1zdHJpcCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvemVyby1pbml0aWFsaXplLXZhbHVlcy0yLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wvemVyby1pbml0aWFsaXplLXZhbHVlcy0yLmh0bWwKaW5kZXggMThjOGM1MmFmY2JjOGY1NzNk
Yzc4ZDBlYTJiZmEwNWVkZDM5YTgxMC4uZmJmNDVmMDI5YmFkZGZhNzBiOGNhOTI4MDFmZDQxM2Vk
OTM2MmIzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3plcm8taW5pdGlh
bGl6ZS12YWx1ZXMtMi5odG1sCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC96ZXJvLWlu
aXRpYWxpemUtdmFsdWVzLTIuaHRtbApAQCAtNTUsNyArNTUsNyBAQCBmcmFnbWVudCBmbG9hdDQg
ZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUgOiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAg
ewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBh
c3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2UpIHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRy
dWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxl
KHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAgICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogInZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZy
YWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVu
dFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1pdGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlw
IjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC96ZXJvLWluaXRpYWxpemUt
dmFsdWVzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wvemVyby1pbml0aWFsaXplLXZh
bHVlcy5odG1sCmluZGV4IDI0MTY3MWFiOWRhMTg2ZGEzNmI0OTM2MzY2MDNmYzRjNGYzODkyMjIu
LjdmZjcwZDZhZDRhZGY4MjJmZWM0OTViMzlkYjUzZjhjZGU2NzJkNmEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3dlYmdwdS93aGxzbC96ZXJvLWluaXRpYWxpemUtdmFsdWVzLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsL3plcm8taW5pdGlhbGl6ZS12YWx1ZXMuaHRtbApAQCAt
MzgsNyArMzgsNyBAQCBmcmFnbWVudCBmbG9hdDQgZnJhZ21lbnRTaGFkZXIoZmxvYXQgc2hhZGUg
OiBhdHRyaWJ1dGUoMCkpIDogU1ZfVGFyZ2V0IDAgewogY29uc3QgY2FudmFzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOwogCiBhc3luYyBmdW5jdGlvbiBzdGFydChkZXZpY2Up
IHsKLSAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtj
b2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBzaGFkZXJNb2R1
bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2V9KTsKICAg
ICBjb25zdCB2ZXJ0ZXhTdGFnZSA9IHttb2R1bGU6IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDog
InZlcnRleFNoYWRlciJ9OwogICAgIGNvbnN0IGZyYWdtZW50U3RhZ2UgPSB7bW9kdWxlOiBzaGFk
ZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJmcmFnbWVudFNoYWRlciJ9OwogICAgIGNvbnN0IHByaW1p
dGl2ZVRvcG9sb2d5ID0gInRyaWFuZ2xlLXN0cmlwIjsK
</data>
<flag name="review"
          id="393073"
          type_id="1"
          status="+"
          setter="saam"
    />
    <flag name="commit-queue"
          id="393074"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>