<?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>39210</bug_id>
          
          <creation_ts>2010-05-17 02:07:16 -0700</creation_ts>
          <short_desc>Provide bindings for DeviceOrientation</short_desc>
          <delta_ts>2011-06-13 02:05:25 -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>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>39222</dependson>
          <blocked>30335</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Steve Block">steveblock</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andreip</cc>
    
    <cc>android-webkit-unforking</cc>
    
    <cc>bolsinga</cc>
    
    <cc>bugs</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>hans</cc>
    
    <cc>jorlow</cc>
    
    <cc>steveblock</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>226698</commentid>
    <comment_count>0</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-17 02:07:16 -0700</bug_when>
    <thetext>Provide bindings for DeviceOrientation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226708</commentid>
    <comment_count>1</comment_count>
      <attachid>56228</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-17 02:42:04 -0700</bug_when>
    <thetext>Created attachment 56228
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226740</commentid>
    <comment_count>2</comment_count>
      <attachid>56237</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-17 06:27:55 -0700</bug_when>
    <thetext>Created attachment 56237
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226752</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-17 07:12:49 -0700</bug_when>
    <thetext>Attachment 56237 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/2294223</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226785</commentid>
    <comment_count>4</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-17 09:32:25 -0700</bug_when>
    <thetext>The Chromium and qt build failures seem to be due to the V8 code generator failing to guard some code with ENABLE(DEVICE_ORIENTATION), which causes problems when the feature is disabled.

Have filed Bug 39222 to track this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227255</commentid>
    <comment_count>5</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-05-18 04:40:38 -0700</bug_when>
    <thetext>Adding myself to the CC list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227770</commentid>
    <comment_count>6</comment_count>
      <attachid>56480</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-19 04:30:01 -0700</bug_when>
    <thetext>Created attachment 56480
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227771</commentid>
    <comment_count>7</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-19 04:31:39 -0700</bug_when>
    <thetext>Re-uploaded patch now that Bug 39222 is fixed.

Note that the large size of this patch is due mainly to boilerplate and LayoutTests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227839</commentid>
    <comment_count>8</comment_count>
      <attachid>56492</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-19 08:30:38 -0700</bug_when>
    <thetext>Created attachment 56492
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228401</commentid>
    <comment_count>9</comment_count>
      <attachid>56492</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-05-20 09:03:35 -0700</bug_when>
    <thetext>Comment on attachment 56492
Patch

Looking pretty good.


WebCore/Android.derived.v8bindings.mk:34
 +  FEATURE_DEFINES += V8_BINDING
Did you mean for this to be here?

WebCore/config.h:109
 +  #define ENABLE_DEVICE_ORIENTATION 1
Is this supposed to be here?

WebCore/dom/DeviceOrientationEvent.h:46
 +      double alpha() { return m_alpha; }
) const {

WebCore/dom/DeviceOrientationEvent.h:47
 +      double beta() { return m_beta; }
ditto

WebCore/dom/DeviceOrientationEvent.h:48
 +      double gamma() { return m_gamma; }
ditto

LayoutTests/platform/gtk/Skipped:1182
 +  fast/dom/DeviceOrientation/window-property.html
Why not the whole directory?

LayoutTests/platform/chromium/test_expectations.txt:2843
 +  DEFER SKIP : fast/dom/DeviceOrientation = TEXT
What&apos;s defer mean?

I made a bug for this.  s/DEFER/BUG44654/

WebKitLibraries/win/tools/vsprops/FeatureDefinesCairo.vsprops:57
 +  		PerformEnvironmentSet=&quot;true&quot;
Is this supposed to be true?

WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops:57
 +  		PerformEnvironmentSet=&quot;true&quot;
Is this supposed to be true?

LayoutTests/fast/dom/DeviceOrientation/script-tests/window-property.js:5
 +      for (var property in window) {
Why not just &apos;if (&apos;ondeviceorientation&apos; in window)&apos; ?

LayoutTests/fast/dom/DeviceOrientation/script-tests/window-property.js:17
 +  window.jsTestIsAsync = false;
is this necessary?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228418</commentid>
    <comment_count>10</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-20 09:39:25 -0700</bug_when>
    <thetext>&gt; WebCore/Android.derived.v8bindings.mk:34
&gt;  +  FEATURE_DEFINES += V8_BINDING
&gt; Did you mean for this to be here?
Yes - I split this out onto its own line because it&apos;s not really a feature like the others are.

&gt; WebCore/config.h:109
&gt;  +  #define ENABLE_DEVICE_ORIENTATION 1
It doesn&apos;t really matter - removed for now.

&gt; WebCore/dom/DeviceOrientationEvent.h:46
&gt;  +      double alpha() { return m_alpha; }
&gt; ) const {
Done

&gt; LayoutTests/platform/gtk/Skipped:1182
&gt;  +  fast/dom/DeviceOrientation/window-property.html
&gt; Why not the whole directory?
That&apos;s what the comments at the top of this file require - &apos;no grouping should occur. Every test for itself&apos;

&gt; LayoutTests/platform/chromium/test_expectations.txt:2843
&gt;  +  DEFER SKIP : fast/dom/DeviceOrientation = TEXT
&gt; What&apos;s defer mean?
From the comments as the top of the file - &apos;DEFER: For tests we&apos;ll fix in the future.&apos;

&gt; I made a bug for this.  s/DEFER/BUG44654/
Done

&gt; WebKitLibraries/win/tools/vsprops/FeatureDefinesCairo.vsprops:57
&gt;  +          PerformEnvironmentSet=&quot;true&quot;
&gt; Is this supposed to be true?
All of the flags in this file seem to set this.

&gt; WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops:57
&gt;  +          PerformEnvironmentSet=&quot;true&quot;
&gt; Is this supposed to be true?
Ditto

&gt; LayoutTests/fast/dom/DeviceOrientation/script-tests/window-property.js:5
&gt;  +      for (var property in window) {
&gt; Why not just &apos;if (&apos;ondeviceorientation&apos; in window)&apos; ?
We already test this on line 14. The difference is that properties which are marked &apos;DontEnum&apos; will pass &apos;if (foo in bar)&apos; but won&apos;t be enumerated with &apos;for (var x in bar)&apos;. This test is copied from fast/dom/Geolocation/resources/enabled.js

&gt; LayoutTests/fast/dom/DeviceOrientation/script-tests/window-property.js:17
&gt;  +  window.jsTestIsAsync = false;
&gt; is this necessary?
No, fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228420</commentid>
    <comment_count>11</comment_count>
      <attachid>56602</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-20 09:43:26 -0700</bug_when>
    <thetext>Created attachment 56602
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228446</commentid>
    <comment_count>12</comment_count>
      <attachid>56602</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-05-20 10:30:21 -0700</bug_when>
    <thetext>Comment on attachment 56602
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228450</commentid>
    <comment_count>13</comment_count>
      <attachid>56602</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-20 10:37:51 -0700</bug_when>
    <thetext>Comment on attachment 56602
Patch

Clearing flags on attachment: 56602

Committed r59847: &lt;http://trac.webkit.org/changeset/59847&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228451</commentid>
    <comment_count>14</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-05-20 10:38:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>418958</commentid>
    <comment_count>15</comment_count>
    <who name="Olli Pettay (:smaug)">bugs</who>
    <bug_when>2011-06-10 15:17:06 -0700</bug_when>
    <thetext>Why did you end up adding non-standard ondeviceorientation property
to window object? (and even without webkit prefix)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>419471</commentid>
    <comment_count>16</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2011-06-13 02:05:25 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Why did you end up adding non-standard ondeviceorientation property
&gt; to window object? (and even without webkit prefix)

Hi Olli

Device Orientation is a specification published by the Geolocation WG at the W3C:

http://dev.w3.org/geo/api/spec-source-orientation.html

We&apos;ve started the process to publish the FPWD last week. Doug Turner is Mozilla&apos;s representative in the Geolocation WG.

Thanks,
Andrei</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56228</attachid>
            <date>2010-05-17 02:42:04 -0700</date>
            <delta_ts>2010-05-17 06:27:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39210-20100517104202.patch</filename>
            <type>text/plain</type>
            <size>52754</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NjAxKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTcgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIx
MAorCisgICAgICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9q
ZWN0IGZpbGUsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDEwLTA1LTE3ICBQYXRyaWNrIEdhbnN0ZXJlciAg
PHBhcm9nYUBwYXJvZ2EuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3Mu
CkluZGV4OiBKYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gNTk0NjEpCisrKyBKYXZhU2NyaXB0Q29yZS9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNDcs
NiArNDcsNyBAQCBFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OID0gRU5BQkxFCiBFTkFC
TEVfREFUQUJBU0UgPSBFTkFCTEVfREFUQUJBU0U7CiBFTkFCTEVfREFUQUdSSUQgPSA7CiBFTkFC
TEVfREFUQUxJU1QgPSBFTkFCTEVfREFUQUxJU1Q7CitFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9O
ID0gOwogRU5BQkxFX0RPTV9TVE9SQUdFID0gRU5BQkxFX0RPTV9TVE9SQUdFOwogRU5BQkxFX0VW
RU5UU09VUkNFID0gRU5BQkxFX0VWRU5UU09VUkNFOwogRU5BQkxFX0ZJTFRFUlMgPSBFTkFCTEVf
RklMVEVSUzsKQEAgLTc4LDQgKzc5LDQgQEAgRU5BQkxFX1hIVE1MTVAgPSA7CiBFTkFCTEVfWFBB
VEggPSBFTkFCTEVfWFBBVEg7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9DQU5WQVMpICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChF
TkFCTEVfQkxPQl9TTElDRSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFH
UklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VW
RU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChFTkFC
TEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJB
U0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdH
RVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZG
TElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JV
QlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9T
VkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFC
TEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NW
R19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5B
QkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxF
X1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5F
UyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9C
TE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JB
U0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQo
RU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RP
TV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFC
TEVfRklMRV9SRUFERVIpICQoRU5BQkxFX0ZJTEVfV1JJVEVSKSAkKEVOQUJMRV9HRU9MT0NBVElP
TikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVO
QUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUFJP
R1JFU1NfVEFHKSAkKEVOQUJMRV9SVUJZKSAkKEVOQUJMRV9TQU5EQk9YKSAkKEVOQUJMRV9TSEFS
RURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJM
RV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVf
U1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0Up
ICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV01MKSAkKEVO
QUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVf
WFNMVCk7CkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0No
YW5nZUxvZwkocmV2aXNpb24gNTk2MDEpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDUwIEBACisyMDEwLTA1LTE3ICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxv
Y2tAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBQcm92aWRlIGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKworICAgICAgICBU
ZXN0czogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1kZXZpY2Ut
b3JpZW50YXRpb24uaHRtbAorCisgICAgICAgIEFkZHMgYmluZGluZ3MgZm9yIERldmljZU9yaWVu
dGF0aW9uIGFzIGRlZmluZWQgaW4KKyAgICAgICAgaHR0cDovL2Rldi53My5vcmcvZ2VvL2FwaS9z
cGVjLXNvdXJjZS1vcmllbnRhdGlvbi5odG1sCisgICAgICAgIFRoaXMgaXMgZ3VhcmRlZCBieSBF
TkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKSB3aGljaCBpcyBjdXJyZW50bHkgZGlzYWJsZWQgb24K
KyAgICAgICAgYWxsIHBsYXRmb3JtcyBidXQgQW5kcm9pZC4KKworICAgICAgICAqIEFuZHJvaWQu
ZGVyaXZlZC5qc2NiaW5kaW5ncy5tazoKKyAgICAgICAgKiBBbmRyb2lkLmRlcml2ZWQudjhiaW5k
aW5ncy5tazoKKyAgICAgICAgKiBBbmRyb2lkLm1rOgorICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoK
KyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFt
OgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGlu
Z3MvanMvSlNFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjp0b1Y4KToKKyAgICAgICAgKiBjb25maWcuaDoKKyAgICAgICAgKiBkb20vRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAg
ICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaDogQWRkZWQuCisgICAgICAgIChXZWJD
b3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlT3JpZW50YXRpb25FdmVudDo6YWxwaGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb25FdmVudDo6YmV0YSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkV2ZW50OjpnYW1tYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2
ZW50Ojppc0RldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmlkbDogQWRkZWQuCisgICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50Ojppc0RldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAq
IGRvbS9FdmVudC5oOgorICAgICAgICAqIGRvbS9FdmVudE5hbWVzLmg6CisgICAgICAgICogcGFn
ZS9ET01XaW5kb3cuaDoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisKIDIwMTAtMDUt
MTYgIENocmlzIEplcmRvbmVrICA8Y2plcmRvbmVrQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5y
ZXZpZXdlZC4KSW5kZXg6IFdlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rCShyZXZp
c2lvbiA1OTQ2MSkKKysrIFdlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rCSh3
b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSw3IEBAIGpzX2JpbmRpbmdfc2NyaXB0cyA6PSAkKGFk
ZHByZWZpeCAkKExPQ0EKIAkJCWJpbmRpbmdzL3NjcmlwdHMvZ2VuZXJhdGUtYmluZGluZ3MucGwg
XAogCQkpCiAKLUZFQVRVUkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFUSU9OX1NVUFBPUlQg
RU5BQkxFX1RPVUNIX0VWRU5UUz0xIEVOQUJMRV9EQVRBQkFTRT0xIEVOQUJMRV9PRkZMSU5FX1dF
Ql9BUFBMSUNBVElPTlM9MSBFTkFCTEVfRE9NX1NUT1JBR0U9MSBFTkFCTEVfVklERU89MSBFTkFC
TEVfV09SS0VSUz0xIEVOQUJMRV9HRU9MT0NBVElPTj0xIEVOQUJMRV9DSEFOTkVMX01FU1NBR0lO
Rz0xCitGRUFUVVJFX0RFRklORVMgOj0gQU5EUk9JRF9PUklFTlRBVElPTl9TVVBQT1JUIEVOQUJM
RV9UT1VDSF9FVkVOVFM9MSBFTkFCTEVfREFUQUJBU0U9MSBFTkFCTEVfT0ZGTElORV9XRUJfQVBQ
TElDQVRJT05TPTEgRU5BQkxFX0RPTV9TVE9SQUdFPTEgRU5BQkxFX1ZJREVPPTEgRU5BQkxFX1dP
UktFUlM9MSBFTkFCTEVfR0VPTE9DQVRJT049MSBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkc9MSBF
TkFCTEVfREVWSUNFX09SSUVOVEFUSU9OPTEKIAogIyBDU1MKIEdFTiA6PSBcCkBAIC0xMDMsNiAr
MTAzLDcgQEAgR0VOIDo9IFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0NvbW1lbnQuaCBc
CiAgICAgJChpbnRlcm1lZGlhdGVzKS9kb20vSlNET01Db3JlRXhjZXB0aW9uLmggXAogICAgICQo
aW50ZXJtZWRpYXRlcykvZG9tL0pTRE9NSW1wbGVtZW50YXRpb24uaCBcCisgICAgJChpbnRlcm1l
ZGlhdGVzKS9kb20vSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggXAogICAgICQoaW50ZXJtZWRp
YXRlcykvZG9tL0pTRG9jdW1lbnQuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9kb20vSlNEb2N1
bWVudEZyYWdtZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRG9jdW1lbnRUeXBl
LmggXApJbmRleDogV2ViQ29yZS9BbmRyb2lkLmRlcml2ZWQudjhiaW5kaW5ncy5tawo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC52OGJpbmRpbmdzLm1rCShyZXZpc2lvbiA1
OTQ2MSkKKysrIFdlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLnY4YmluZGluZ3MubWsJKHdvcmtpbmcg
Y29weSkKQEAgLTMwLDcgKzMwLDggQEAganNfYmluZGluZ19zY3JpcHRzIDo9IFwKIAkkKExPQ0FM
X1BBVEgpL2JpbmRpbmdzL3NjcmlwdHMvSURMU3RydWN0dXJlLnBtIFwKIAkkKExPQ0FMX1BBVEgp
L2JpbmRpbmdzL3NjcmlwdHMvZ2VuZXJhdGUtYmluZGluZ3MucGwKIAotRkVBVFVSRV9ERUZJTkVT
IDo9IEFORFJPSURfT1JJRU5UQVRJT05fU1VQUE9SVCBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgVjhf
QklORElORyBFTkFCTEVfREFUQUJBU0U9MSBFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05T
PTEgRU5BQkxFX0RPTV9TVE9SQUdFPTEgRU5BQkxFX1ZJREVPPTEgRU5BQkxFX1dPUktFUlM9MSBF
TkFCTEVfR0VPTE9DQVRJT049MQorRkVBVFVSRV9ERUZJTkVTIDo9IEFORFJPSURfT1JJRU5UQVRJ
T05fU1VQUE9SVCBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgRU5BQkxFX0RBVEFCQVNFPTEgRU5BQkxF
X09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFHRT0xIEVOQUJMRV9W
SURFTz0xIEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEgRU5BQkxFX0RFVklD
RV9PUklFTlRBVElPTj0xCitGRUFUVVJFX0RFRklORVMgKz0gVjhfQklORElORwogCiAjIENTUwog
R0VOIDo9IFwKQEAgLTg0LDYgKzg1LDcgQEAgR0VOIDo9IFwKICAgICAkKGludGVybWVkaWF0ZXMp
L2JpbmRpbmdzL1Y4Q29tbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4
RE9NQ29yZUV4Y2VwdGlvbi5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RE9N
SW1wbGVtZW50YXRpb24uaCBcCisgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOERldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOERv
Y3VtZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEb2N1bWVudEZyYWdt
ZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEb2N1bWVudFR5cGUuaCBc
CkluZGV4OiBXZWJDb3JlL0FuZHJvaWQubWsKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9BbmRyb2lk
Lm1rCShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYkNvcmUvQW5kcm9pZC5tawkod29ya2luZyBjb3B5
KQpAQCAtMTQ2LDYgKzE0Niw3IEBAIExPQ0FMX1NSQ19GSUxFUyA6PSAkKExPQ0FMX1NSQ19GSUxF
UykgXAogCWRvbS9Ob3RhdGlvbi5jcHAgXAogCWRvbS9PcHRpb25FbGVtZW50LmNwcCBcCiAJZG9t
L09wdGlvbkdyb3VwRWxlbWVudC5jcHAgXAorCWRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNw
cCBcCiAJZG9tL092ZXJmbG93RXZlbnQuY3BwIFwKIAlkb20vUGFnZVRyYW5zaXRpb25FdmVudC5j
cHAgXAogCWRvbS9Qb3NpdGlvbi5jcHAgXApJbmRleDogV2ViQ29yZS9EZXJpdmVkU291cmNlcy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHJldmlzaW9uIDU5
NDYxKQorKysgV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY5
LDYgKzY5LDcgQEAKICNpbmNsdWRlICJKU0RhdGFHcmlkQ29sdW1uLmNwcCIKICNpbmNsdWRlICJK
U0RhdGFHcmlkQ29sdW1uTGlzdC5jcHAiCiAjaW5jbHVkZSAiSlNEZWRpY2F0ZWRXb3JrZXJDb250
ZXh0LmNwcCIKKyNpbmNsdWRlICJKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIgogI2luY2x1
ZGUgIkpTRG9jdW1lbnQuY3BwIgogI2luY2x1ZGUgIkpTRG9jdW1lbnRGcmFnbWVudC5jcHAiCiAj
aW5jbHVkZSAiSlNEb2N1bWVudFR5cGUuY3BwIgpJbmRleDogV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQkocmV2aXNp
b24gNTk0NjEpCisrKyBXZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHdvcmtpbmcgY29weSkK
QEAgLTExNyw2ICsxMTcsNyBAQCBET01fQ0xBU1NFUyA9IFwKICAgICBEYXRhYmFzZSBcCiAgICAg
RGF0YWJhc2VDYWxsYmFjayBcCiAgICAgRGF0YWJhc2VTeW5jIFwKKyAgICBEZXZpY2VPcmllbnRh
dGlvbkV2ZW50IFwKICAgICBEb2N1bWVudCBcCiAgICAgRG9jdW1lbnRGcmFnbWVudCBcCiAgICAg
RG9jdW1lbnRUeXBlIFwKSW5kZXg6IFdlYkNvcmUvR05VbWFrZWZpbGUuYW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkocmV2aXNpb24gNTk0NjEpCisrKyBXZWJDb3JlL0dO
VW1ha2VmaWxlLmFtCSh3b3JraW5nIGNvcHkpCkBAIC0xMzcsNiArMTM3LDcgQEAgSURMX0JJTkRJ
TkdTICs9IFwKIAlXZWJjb3JlL2RvbS9DdXN0b21FdmVudC5pZGwgXAogCVdlYkNvcmUvZG9tL0RP
TUNvcmVFeGNlcHRpb24uaWRsIFwKIAlXZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5pZGwg
XAorCVdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2Rv
bS9Eb2N1bWVudC5pZGwgXAogCVdlYkNvcmUvZG9tL0RvY3VtZW50RnJhZ21lbnQuaWRsIFwKIAlX
ZWJDb3JlL2RvbS9Eb2N1bWVudFR5cGUuaWRsIFwKQEAgLTc2Miw2ICs3NjMsOCBAQCB3ZWJjb3Jl
X3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uaCBcCiAJV2ViQ29y
ZS9kb20vRE9NSW1wbGVtZW50YXRpb24uY3BwIFwKIAlXZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRh
dGlvbi5oIFwKKwlXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBcCisJV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAgXAogCVdlYkNvcmUvZG9tL0RvY3VtZW50LmggXAogCVdlYkNvcmUvZG9tL0RvY3VtZW50
RnJhZ21lbnQuY3BwIFwKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5neXBpCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvV2ViQ29yZS5neXBpCShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYkNvcmUvV2ViQ29y
ZS5neXBpCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBACiAgICAgICAgICAgICAnZG9t
L0N1c3RvbUV2ZW50LmlkbCcsCiAgICAgICAgICAgICAnZG9tL0RPTUNvcmVFeGNlcHRpb24uaWRs
JywKICAgICAgICAgICAgICdkb20vRE9NSW1wbGVtZW50YXRpb24uaWRsJywKKyAgICAgICAgICAg
ICdkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1
bWVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudEZyYWdtZW50LmlkbCcsCiAgICAg
ICAgICAgICAnZG9tL0RvY3VtZW50VHlwZS5pZGwnLApAQCAtMTA5NCw2ICsxMDk1LDggQEAKICAg
ICAgICAgICAgICdkb20vRE9NQ29yZUV4Y2VwdGlvbi5oJywKICAgICAgICAgICAgICdkb20vRE9N
SW1wbGVtZW50YXRpb24uY3BwJywKICAgICAgICAgICAgICdkb20vRE9NSW1wbGVtZW50YXRpb24u
aCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwJywKKyAgICAg
ICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oJywKICAgICAgICAgICAgICdkb20v
RG9jdW1lbnQuY3BwJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnQuaCcsCiAgICAgICAgICAg
ICAnZG9tL0RvY3VtZW50RnJhZ21lbnQuY3BwJywKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5wcm8K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLnBybwkocmV2aXNpb24gNTk0NjEpCisrKyBX
ZWJDb3JlL1dlYkNvcmUucHJvCSh3b3JraW5nIGNvcHkpCkBAIC00NjEsNiArNDYxLDcgQEAgU09V
UkNFUyArPSBcCiAgICAgZG9tL0NvbnRhaW5lck5vZGUuY3BwIFwKICAgICBkb20vQ1NTTWFwcGVk
QXR0cmlidXRlRGVjbGFyYXRpb24uY3BwIFwKICAgICBkb20vQ3VzdG9tRXZlbnQuY3BwIFwKKyAg
ICBkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogICAgIGRvbS9Eb2N1bWVudC5jcHAg
XAogICAgIGRvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCiAgICAgZG9tL0RvY3VtZW50VHlwZS5j
cHAgXApAQCAtMTE4Miw2ICsxMTgzLDcgQEAgSEVBREVSUyArPSBcCiAgICAgZG9tL0NTU01hcHBl
ZEF0dHJpYnV0ZURlY2xhcmF0aW9uLmggXAogICAgIGRvbS9DdXN0b21FdmVudC5oIFwKICAgICBk
b20vZGVmYXVsdC9QbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbC5oIFwKKyAgICBkb20vRGV2aWNl
T3JpZW50YXRpb25FdmVudC5oIFwKICAgICBkb20vRG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICBk
b20vRG9jdW1lbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50VHlwZS5oIFwKSW5kZXg6IFdlYkNvcmUv
Y29uZmlnLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jb25maWcuaAkocmV2aXNpb24gNTk0NjEp
CisrKyBXZWJDb3JlL2NvbmZpZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDIsNiArMTAyLDcgQEAK
ICN1bmRlZiBFTkFCTEVfSU5TUEVDVE9SICAvLyBFbmFibGVkIGJ5IGRlZmF1bHQgaW4gUGxhdGZv
cm0uaAogI2RlZmluZSBFTkFCTEVfSU5TUEVDVE9SIDAKICNkZWZpbmUgRU5BQkxFX0VWRU5UX1NP
VVJDRSAwCisjZGVmaW5lIEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04gMQogI2VuZGlmIC8qIFBM
QVRGT1JNKEFORFJPSUQpICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwpJbmRleDogV2ViQ29yZS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiA1OTQ2
MSkKKysrIFdlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdv
cmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAgRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NB
VElPTiA9IEVOQUJMRQogRU5BQkxFX0RBVEFCQVNFID0gRU5BQkxFX0RBVEFCQVNFOwogRU5BQkxF
X0RBVEFHUklEID0gOwogRU5BQkxFX0RBVEFMSVNUID0gRU5BQkxFX0RBVEFMSVNUOworRU5BQkxF
X0RFVklDRV9PUklFTlRBVElPTiA9IDsKIEVOQUJMRV9ET01fU1RPUkFHRSA9IEVOQUJMRV9ET01f
U1RPUkFHRTsKIEVOQUJMRV9FVkVOVFNPVVJDRSA9IEVOQUJMRV9FVkVOVFNPVVJDRTsKIEVOQUJM
RV9GSUxURVJTID0gRU5BQkxFX0ZJTFRFUlM7CkBAIC03OCw0ICs3OSw0IEBAIEVOQUJMRV9YSFRN
TE1QID0gOwogRU5BQkxFX1hQQVRIID0gRU5BQkxFX1hQQVRIOwogRU5BQkxFX1hTTFQgPSBFTkFC
TEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJM
RV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFC
QVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RPTV9T
VE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVf
RklMRV9SRUFERVIpICQoRU5BQkxFX0ZJTEVfV1JJVEVSKSAkKEVOQUJMRV9HRU9MT0NBVElPTikg
JChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJM
RV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX05PVElGSUNB
VElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUFJPR1JF
U1NfVEFHKSAkKEVOQUJMRV9SVUJZKSAkKEVOQUJMRV9TQU5EQk9YKSAkKEVOQUJMRV9TSEFSRURf
V09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9T
VkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZH
X0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQo
RU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV01MKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVfWFNM
VCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9DQU5WQVMpICQoRU5BQkxFXzNEX1JF
TkRFUklORykgJChFTkFCTEVfQkxPQl9TTElDRSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcp
ICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQo
RU5BQkxFX0RBVEFHUklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfREVWSUNFX09SSUVO
VEFUSU9OKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5B
QkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikg
JChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFU
SE1MKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNB
VElPTlMpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FO
REJPWCkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZH
X0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNf
QklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNU
KSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMp
ICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFC
TEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOwpJbmRleDogV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDU5NDYxKQorKysgV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTExNjMsNiArMTE2Mywx
MCBAQAogCQk1OTYyMjk3ODExMzNFRkQ3MDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNh
Y2hlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5
NjIyOTc3MTEzM0VGRDcwMERDNENCQiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuY3BwICov
OyB9OwogCQk1OTYyMjk3QTExMzNFRkUyMDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNh
Y2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTYy
Mjk3OTExMzNFRkUyMDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTk5RTc1OTAxMTA1
NUExRjAwRDkwNEZBIC8qIEJyaWRnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTk5RTc1OEYxMTA1NUExRjAwRDkwNEZBIC8qIEJyaWRnZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU5QTg1RUEyMTE5
RDY4RDkwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTg1RUExMTE5RDY4RDkwMERFRjFF
RiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLzsgfTsKKwkJNTlBODVFQTQxMTlENjhF
QzAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTg1RUEzMTE5RDY4RUMwMERFRjFFRiAvKiBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi87IH07CisJCTU5QTg2MDA2MTE5REFGN0YwMERFRjFF
RiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlBODYwMDUxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2
aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi87IH07CisJCTU5QTg2MDA4MTE5REFGQTEwMERFRjFF
RiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTg2MDA3MTE5REFGQTEwMERFRjFFRiAvKiBKU0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCAqLzsgfTsKIAkJNTlBOUU3QjAxMTA0NzU4ODAwREZCNEMxIC8q
IEphdmFJbnN0YW5jZUpTQy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1OUE5RTdBRjExMDQ3NTg4MDBERkI0QzEgLyogSmF2YUluc3RhbmNlSlNDLmNw
cCAqLzsgfTsKIAkJNTlBOUU3QjIxMTA0NzU5NDAwREZCNEMxIC8qIEphdmFJbnN0YW5jZUpTQy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlBOUU3QjEx
MTA0NzU5NDAwREZCNEMxIC8qIEphdmFJbnN0YW5jZUpTQy5oICovOyB9OwogCQk1OUI1OTc3MzEx
MDg2NTZCMDA3MTU5RTggLyogQnJpZGdlSlNDLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QjU5NzcyMTEwODY1NkIwMDcxNTlFOCAvKiBCcmlkZ2VK
U0MuY3BwICovOyB9OwpAQCAtNjczOCw2ICs2NzQyLDExIEBACiAJCTU5NjIyOTc3MTEzM0VGRDcw
MERDNENCQiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTk2MjI5NzkxMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xv
Y2F0aW9uUG9zaXRpb25DYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBH
ZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTk5RTc1OEYxMTA1NUExRjAwRDkwNEZBIC8qIEJyaWRnZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IG5hbWUgPSBCcmlkZ2UuaDsgcGF0aCA9IGJyaWRnZS9CcmlkZ2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlBODVFQTExMTlENjhEOTAwREVGMUVGIC8qIERldmljZU9y
aWVudGF0aW9uRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU5QTg1RUEzMTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlBODVFQUExMTlEN0I2RTAwREVGMUVGIC8q
IERldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUE4
NjAwNTExOURBRjdGMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg2MDA3MTE5REFGQTEwMERF
RjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTU5QTlFN0FGMTEwNDc1ODgwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0Mu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSmF2YUluc3RhbmNlSlND
LmNwcDsgcGF0aCA9IGpzYy9KYXZhSW5zdGFuY2VKU0MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1OUE5RTdCMTExMDQ3NTk0MDBERkI0QzEgLyogSmF2YUluc3RhbmNlSlNDLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEphdmFJbnN0YW5jZUpTQy5oOyBwYXRo
ID0ganNjL0phdmFJbnN0YW5jZUpTQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1
OUI1OTc3MjExMDg2NTZCMDA3MTU5RTggLyogQnJpZGdlSlNDLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEJyaWRnZUpTQy5jcHA7IHBhdGggPSBicmlkZ2UvanNjL0Jy
aWRnZUpTQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNDEzNiw2ICsxNDE0
NSw4IEBACiAJCUE4M0I3OTEwMENDQjAwMUIwMDBCMDgyNSAvKiBDb3JlICovID0gewogCQkJaXNh
ID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk1OUE4NjAwNzExOURBRkExMDBERUYx
RUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8sCisJCQkJNTlBODYwMDUxMTlEQUY3
RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8sCiAJCQkJNjVERjMx
RDgwOUQxQzEyMjAwMEJFMzI1IC8qIEpTQXR0ci5jcHAgKi8sCiAJCQkJNjVERjMxRDkwOUQxQzEy
MzAwMEJFMzI1IC8qIEpTQXR0ci5oICovLAogCQkJCTkzRjlCNzlFMEJBNjAzMjYwMDg1NDA2NCAv
KiBKU0NEQVRBU2VjdGlvbi5jcHAgKi8sCkBAIC0xNjMxNSw2ICsxNjMyNiw5IEBACiAJCUY1MjNE
MzI0MDJERTQ0NzgwMTg2MzVDQSAvKiBkb20gKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJ
CWNoaWxkcmVuID0gKAorCQkJCTU5QTg1RUFBMTE5RDdCNkUwMERFRjFFRiAvKiBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmlkbCAqLywKKwkJCQk1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2
aWNlT3JpZW50YXRpb25FdmVudC5oICovLAorCQkJCTU5QTg1RUExMTE5RDY4RDkwMERFRjFFRiAv
KiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLywKIAkJCQlFMUM0REU2RDBFQTc1QzY1MDAy
M0NDRDYgLyogQWN0aXZlRE9NT2JqZWN0LmNwcCAqLywKIAkJCQlFMUM0REU2ODBFQTc1QzFFMDAy
M0NDRDYgLyogQWN0aXZlRE9NT2JqZWN0LmggKi8sCiAJCQkJQThDNEE3RkMwOUQ1NjMyNzAwMDNB
QzhEIC8qIEF0dHIuY3BwICovLApAQCAtMTkxNjQsNiArMTkxNzgsOCBAQAogCQkJCTJFOTRGNDUx
MTE5MjA5NkEwMEI3Rjc1RCAvKiBGaWxlUmVhZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDQw
QTJENzExOTFBNTIzMDAwODIwQjAgLyogU1ZHRkVMaWdodGluZy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQjVCNURDNkExMTlCQjNENTAwMkE4NzkwIC8qIEFic3RyYWN0RGF0YWJhc2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTU5QTg1RUE0MTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlv
bkV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1OUE4NjAwODExOURBRkExMDBERUYxRUYgLyog
SlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5P
bmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTIxNDMzLDYgKzIx
NDQ5LDggQEAKIAkJCQkyRTk0RjQ1MDExOTIwOTY0MDBCN0Y3NUQgLyogRmlsZVJlYWRlci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlFNDQwQTJENTExOTFBNTBCMDAwODIwQjAgLyogU1ZHRkVMaWdo
dGluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCNUI1REM2OTExOUJCM0Q1MDAyQTg3OTAgLyog
QWJzdHJhY3REYXRhYmFzZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1OUE4NUVBMjExOUQ2OEQ5
MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQk1OUE4NjAwNjExOURBRjdGMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nl
c3NpbmcgPSAwOwogCQl9OwpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9t
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3Bw
CShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDExICszMiwxMyBAQAogI2luY2x1ZGUgIkNsaXBib2Fy
ZC5oIgogI2luY2x1ZGUgIkNvbXBvc2l0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJDdXN0b21FdmVu
dC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJFdmVu
dC5oIgogI2luY2x1ZGUgIkpTQmVmb3JlTG9hZEV2ZW50LmgiCiAjaW5jbHVkZSAiSlNDbGlwYm9h
cmQuaCIKICNpbmNsdWRlICJKU0N1c3RvbUV2ZW50LmgiCiAjaW5jbHVkZSAiSlNDb21wb3NpdGlv
bkV2ZW50LmgiCisjaW5jbHVkZSAiSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVk
ZSAiSlNFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAiSlNLZXlib2FyZEV2ZW50LmgiCiAjaW5jbHVk
ZSAiSlNNZXNzYWdlRXZlbnQuaCIKQEAgLTE1Nyw2ICsxNTksMTAgQEAgSlNWYWx1ZSB0b0pTKEV4
ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9P
QkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIFBvcFN0YXRlRXZlbnQsIGV2ZW50KTsK
ICAgICBlbHNlIGlmIChldmVudC0+aXNDdXN0b21FdmVudCgpKQogICAgICAgICB3cmFwcGVyID0g
Q1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEN1c3RvbUV2ZW50
LCBldmVudCk7CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBlbHNlIGlmIChl
dmVudC0+aXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkpCisgICAgICAgIHdyYXBwZXIgPSBDUkVB
VEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgRGV2aWNlT3JpZW50YXRp
b25FdmVudCwgZXZlbnQpOworI2VuZGlmCiAgICAgZWxzZQogICAgICAgICB3cmFwcGVyID0gQ1JF
QVRFX0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEV2ZW50LCBldmVudCk7
CiAKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3Bw
CShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRD
dXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBACiAjaW5jbHVkZSAiVjhD
bGlwYm9hcmQuaCIKICNpbmNsdWRlICJWOENvbXBvc2l0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJW
OEN1c3RvbUV2ZW50LmgiCisjaW5jbHVkZSAiVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAj
aW5jbHVkZSAiVjhFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAiVjhLZXlib2FyZEV2ZW50LmgiCiAj
aW5jbHVkZSAiVjhNZXNzYWdlRXZlbnQuaCIKQEAgLTE0Myw2ICsxNDQsMTAgQEAgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHRvVjgoRXZlbnQqIGltcGwpCiAgICAgaWYgKGltcGwtPmlzU3RvcmFnZUV2
ZW50KCkpCiAgICAgICAgIHJldHVybiB0b1Y4KHN0YXRpY19jYXN0PFN0b3JhZ2VFdmVudCo+KGlt
cGwpKTsKICNlbmRpZgorI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKGlt
cGwtPmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpKQorICAgICAgICByZXR1cm4gdG9WOChzdGF0
aWNfY2FzdDxEZXZpY2VPcmllbnRhdGlvbkV2ZW50Kj4oaW1wbCkpOworI2VuZGlmCiAgICAgaWYg
KGltcGwtPmlzQmVmb3JlTG9hZEV2ZW50KCkpCiAgICAgICAgIHJldHVybiB0b1Y4KHN0YXRpY19j
YXN0PEJlZm9yZUxvYWRFdmVudCo+KGltcGwpKTsKICAgICBpZiAoaW1wbC0+aXNDdXN0b21FdmVu
dCgpKQpJbmRleDogV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAJKHJldmlzaW9u
IDApCisrKyBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw2MiBAQAorLyoKKyAqIENvcHlyaWdodCAyMDEwLCBUaGUgQW5kcm9pZCBP
cGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJ
T04pCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworRGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2
aWNlT3JpZW50YXRpb25FdmVudCgpCisgICAgOiBtX2FscGhhKDApCisgICAgLCBtX2JldGEoMCkK
KyAgICAsIG1fZ2FtbWEoMCkKK3sKK30KKworRGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2aWNl
T3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgZG91YmxlIGFs
cGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdhbW1hKQorICAgIDogRXZlbnQoZXZlbnRUeXBlLCBm
YWxzZSwgZmFsc2UpIC8vIENhbid0IGJ1YmJsZSwgbm90IGNhbmNlbGFibGUKKyAgICAsIG1fYWxw
aGEoYWxwaGEpCisgICAgLCBtX2JldGEoYmV0YSkKKyAgICAsIG1fZ2FtbWEoZ2FtbWEpCit7Cit9
CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZl
bnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNh
bmNlbGFibGUsIGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSkKK3sKKyAg
ICBpZiAoZGlzcGF0Y2hlZCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBpbml0RXZlbnQoZXZl
bnRUeXBlLCBjYW5CdWJibGUsIGNhbmNlbGFibGUpOworCisgICAgbV9hbHBoYSA9IGFscGhhOwor
ICAgIG1fYmV0YSA9IGJldGE7CisgICAgbV9nYW1tYSA9IGdhbW1hOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQpJbmRl
eDogV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAkocmV2aXNpb24gMCkKKysrIFdlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2
MyBAQAorLyoKKyAqIENvcHlyaWdodCAyMDEwLCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9q
ZWN0CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50X2gKKyNkZWZpbmUgRGV2
aWNlT3JpZW50YXRpb25FdmVudF9oCisKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKKyNpbmNsdWRl
ICJFdmVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERldmljZU9yaWVudGF0
aW9uRXZlbnQgOiBwdWJsaWMgRXZlbnQgeworcHVibGljOgorICAgIHN0YXRpYyBQYXNzUmVmUHRy
PERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZSgpCisgICAgeworICAgICAgICByZXR1cm4g
YWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uRXZlbnQpOworICAgIH0KKyAgICBzdGF0aWMg
UGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBjcmVhdGUoY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudFR5cGUsIGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSkK
KyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25FdmVu
dChldmVudFR5cGUsIGFscGhhLCBiZXRhLCBnYW1tYSkpOworICAgIH0KKworICAgIHZvaWQgaW5p
dERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGJv
b2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEs
IGRvdWJsZSBnYW1tYSk7CisgICAgZG91YmxlIGFscGhhKCkgeyByZXR1cm4gbV9hbHBoYTsgfQor
ICAgIGRvdWJsZSBiZXRhKCkgeyByZXR1cm4gbV9iZXRhOyB9CisgICAgZG91YmxlIGdhbW1hKCkg
eyByZXR1cm4gbV9nYW1tYTsgfQorCisgICAgdmlydHVhbCBib29sIGlzRGV2aWNlT3JpZW50YXRp
b25FdmVudCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKworcHJpdmF0ZToKKyAgICBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50KCk7CisgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9t
aWNTdHJpbmcmIGV2ZW50VHlwZSwgZG91YmxlIGFscGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdh
bW1hKTsKKworICAgIGRvdWJsZSBtX2FscGhhOworICAgIGRvdWJsZSBtX2JldGE7CisgICAgZG91
YmxlIG1fZ2FtbWE7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50X2gKSW5kZXg6IFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9u
RXZlbnQuaWRsCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25F
dmVudC5pZGwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzcgQEAKKy8qCisgKiBDb3B5cmlnaHQg
MjAxMCwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBjb3Jl
IHsKKworICAgIGludGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPURFVklDRV9PUklFTlRB
VElPTgorICAgIF0gRGV2aWNlT3JpZW50YXRpb25FdmVudCA6IEV2ZW50IHsKKyAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIGRvdWJsZSBhbHBoYTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IGRvdWJsZSBiZXRhOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgZG91YmxlIGdhbW1hOwor
ICAgICAgICB2b2lkIGluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGluIERPTVN0cmluZyB0eXBl
QXJnLCBpbiBib29sZWFuIGNhbkJ1YmJsZUFyZywgaW4gYm9vbGVhbiBjYW5jZWxhYmxlQXJnLCBp
biBkb3VibGUgYWxwaGEsIGluIGRvdWJsZSBiZXRhLCBpbiBkb3VibGUgZ2FtbWEpOworICAgIH07
CisKK30KSW5kZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2RvbS9FdmVudC5jcHAJKHJldmlzaW9uIDU5NDYxKQorKysgV2ViQ29yZS9kb20vRXZlbnQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yMDAsNiArMjAwLDEzIEBAIGJvb2wgRXZlbnQ6OmlzVG91Y2hF
dmVudCgpIGNvbnN0CiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04p
Citib29sIEV2ZW50Ojppc0RldmljZU9yaWVudGF0aW9uRXZlbnQoKSBjb25zdAoreworICAgIHJl
dHVybiBmYWxzZTsKK30KKyNlbmRpZgorCiBib29sIEV2ZW50Ojpmcm9tVXNlckdlc3R1cmUoKQog
ewogICAgIGlmICghVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgp
KQpJbmRleDogV2ViQ29yZS9kb20vRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9F
dmVudC5oCShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYkNvcmUvZG9tL0V2ZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTEzNSw2ICsxMzUsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgRU5BQkxF
KFRPVUNIX0VWRU5UUykKICAgICAgICAgdmlydHVhbCBib29sIGlzVG91Y2hFdmVudCgpIGNvbnN0
OwogI2VuZGlmCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICAgICAgdmlydHVh
bCBib29sIGlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpIGNvbnN0OworI2VuZGlmCiAgICAgICAg
IGJvb2wgZnJvbVVzZXJHZXN0dXJlKCk7CiAgICAgICAgIAogICAgICAgICBib29sIHByb3BhZ2F0
aW9uU3RvcHBlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvcGFnYXRpb25TdG9wcGVkIHx8IG1faW1t
ZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOyB9CkluZGV4OiBXZWJDb3JlL2RvbS9FdmVudE5hbWVz
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCShyZXZpc2lvbiA1OTQ2
MSkKKysrIFdlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAkod29ya2luZyBjb3B5KQpAQCAtNDksNiAr
NDksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgbWFjcm8oY29weSkgXAogICAgIG1hY3Jv
KGN1dCkgXAogICAgIG1hY3JvKGRibGNsaWNrKSBcCisgICAgbWFjcm8oZGV2aWNlb3JpZW50YXRp
b24pIFwKICAgICBtYWNybyhkaXNwbGF5KSBcCiAgICAgbWFjcm8oZG93bmxvYWRpbmcpIFwKICAg
ICBtYWNybyhkcmFnKSBcCkluZGV4OiBXZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYkNv
cmUvcGFnZS9ET01XaW5kb3cuaAkod29ya2luZyBjb3B5KQpAQCAtMzI1LDYgKzMyNSwxMCBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVO
RVIob3JpZW50YXRpb25jaGFuZ2UpOwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVO
VEFUSU9OKQorICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGRldmljZW9y
aWVudGF0aW9uKTsKKyNlbmRpZgorCiAgICAgICAgIERFRklORV9NQVBQRURfQVRUUklCVVRFX0VW
RU5UX0xJU1RFTkVSKHdlYmtpdGFuaW1hdGlvbnN0YXJ0LCB3ZWJraXRBbmltYXRpb25TdGFydCk7
CiAgICAgICAgIERFRklORV9NQVBQRURfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHdlYmtpdGFu
aW1hdGlvbml0ZXJhdGlvbiwgd2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uKTsKICAgICAgICAgREVG
SU5FX01BUFBFRF9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIod2Via2l0YW5pbWF0aW9uZW5kLCB3
ZWJraXRBbmltYXRpb25FbmQpOwpJbmRleDogV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHJldmlzaW9uIDU5NDYxKQor
KysgV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI5OSw2ICsy
OTksOCBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAgYXR0cmlidXRlIFtEb250RW51bSxDb25k
aXRpb25hbD1UT1VDSF9FVkVOVFMsRW5hYmxlZEF0UnVudGltZV0gRXZlbnRMaXN0ZW5lciBvbnRv
dWNoZW5kOwogICAgICAgICBhdHRyaWJ1dGUgW0RvbnRFbnVtLENvbmRpdGlvbmFsPVRPVUNIX0VW
RU5UUyxFbmFibGVkQXRSdW50aW1lXSBFdmVudExpc3RlbmVyIG9udG91Y2hjYW5jZWw7CiAKKyAg
ICAgICAgYXR0cmlidXRlIFtDb25kaXRpb25hbD1ERVZJQ0VfT1JJRU5UQVRJT05dIEV2ZW50TGlz
dGVuZXIgb25kZXZpY2VvcmllbnRhdGlvbjsKKwogICAgICAgICAvLyBFdmVudFRhcmdldCBpbnRl
cmZhY2UKICAgICAgICAgW0N1c3RvbV0gdm9pZCBhZGRFdmVudExpc3RlbmVyKGluIERPTVN0cmlu
ZyB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBFdmVudExp
c3RlbmVyIGxpc3RlbmVyLApJbmRleDogV2ViS2l0L21hYy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NjAxKQorKysgV2ViS2l0L21hYy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0wNS0xNyAgU3Rl
dmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBiaW5kaW5ncyBmb3IgRGV2aWNlT3Jp
ZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM5MjEwCisKKyAgICAgICAgQWRkcyBFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIHRvIFhDb2Rl
IHByb2plY3QgZmlsZSwgYWx3YXlzIGRpc2FibGVkLgorCisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTAtMDUtMTQgIFN0ZXBoYW5pZSBMZXdp
cyAgPHNsZXdpc0BhcHBsZS5jb20+CiAKICAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTWFyayBS
b3dlLgpJbmRleDogV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCShyZXZpc2lvbiA1OTQ2MSkKKysrIFdlYktpdC9tYWMvQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcg
QEAgRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTiA9IEVOQUJMRQogRU5BQkxFX0RBVEFC
QVNFID0gRU5BQkxFX0RBVEFCQVNFOwogRU5BQkxFX0RBVEFHUklEID0gOwogRU5BQkxFX0RBVEFM
SVNUID0gRU5BQkxFX0RBVEFMSVNUOworRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiA9IDsKIEVO
QUJMRV9ET01fU1RPUkFHRSA9IEVOQUJMRV9ET01fU1RPUkFHRTsKIEVOQUJMRV9FVkVOVFNPVVJD
RSA9IEVOQUJMRV9FVkVOVFNPVVJDRTsKIEVOQUJMRV9GSUxURVJTID0gRU5BQkxFX0ZJTFRFUlM7
CkBAIC03OCw0ICs3OSw0IEBAIEVOQUJMRV9YSFRNTE1QID0gOwogRU5BQkxFX1hQQVRIID0gRU5B
QkxFX1hQQVRIOwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJTkVT
ID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0JM
T0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRfQkFT
RURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkgJChF
TkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJD
RSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRklMRV9SRUFERVIpICQoRU5BQkxFX0ZJTEVf
V1JJVEVSKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVO
QUJMRV9NQVRITUwpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VC
X0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVOQUJMRV9SVUJZKSAkKEVO
QUJMRV9TQU5EQk9YKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVO
QUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19E
T01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlH
Tl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV01MKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1Q
KSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVfWFNMVCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVO
QUJMRV8zRF9DQU5WQVMpICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQkxPQl9TTElD
RSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFHUklEKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ET01fU1RPUkFH
RSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVf
UkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5B
QkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSkFW
QVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9OT1RJRklDQVRJT05T
KSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BST0dSRVNTX1RB
RykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChFTkFCTEVfU0hBUkVEX1dPUktF
UlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FT
X0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05U
UykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJM
RV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09S
S0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOwpJ
bmRleDogV2ViS2l0TGlicmFyaWVzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRMaWJy
YXJpZXMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1OTYwMSkKKysrIFdlYktpdExpYnJhcmllcy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0wNS0xNyAgU3RldmUg
QmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBiaW5kaW5ncyBmb3IgRGV2aWNlT3JpZW50
YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5
MjEwCisKKyAgICAgICAgQWRkcyBFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIHRvIFZpc3VhbFN0
dWRpbyBwcm9qZWN0IGZpbGVzLCBhbHdheXMgZGlzYWJsZWQuCisKKyAgICAgICAgKiB3aW4vdG9v
bHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy52c3Byb3BzOgorICAgICAgICAqIHdpbi90b29scy92
c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8udnNwcm9wczoKKwogMjAxMC0wNC0wOSAgQWxleGV5
IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBNYWNp
ZWogU3RhY2hvd2lhay4KSW5kZXg6IFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9G
ZWF0dXJlRGVmaW5lcy52c3Byb3BzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdExpYnJhcmllcy93aW4v
dG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy52c3Byb3BzCShyZXZpc2lvbiA1OTQ2MSkKKysr
IFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy52c3Byb3Bz
CSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzksNyBAQAogCT4KICAgPFRvb2wKIAkJTmFtZT0iVkND
TENvbXBpbGVyVG9vbCIKLQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IiQoRU5BQkxFXzNEX0NB
TlZBUyk7JChFTkFCTEVfM0RfUkVOREVSSU5HKTskKEVOQUJMRV9CTE9CX1NMSUNFKTskKEVOQUJM
RV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKTsk
KEVOQUJMRV9EQVRBQkFTRSk7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5BQkxFX0RBVEFMSVNUKTsk
KEVOQUJMRV9ET01fU1RPUkFHRSk7JChFTkFCTEVfRVZFTlRTT1VSQ0UpOyQoRU5BQkxFX0ZJTFRF
UlMpOyQoRU5BQkxFX0ZJTEVfUkVBREVSKTskKEVOQUJMRV9GSUxFX1dSSVRFUik7JChFTkFCTEVf
R0VPTE9DQVRJT04pOyQoRU5BQkxFX0lDT05EQVRBQkFTRSk7JChFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRSk7JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUik7JChFTkFCTEVfTUFUSE1MKTskKEVO
QUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpOyQo
RU5BQkxFX1JVQlkpOyQoRU5BQkxFX1NBTkRCT1gpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTsk
KEVOQUJMRV9TVkcpOyQoRU5BQkxFX1NWR19BTklNQVRJT04pOyQoRU5BQkxFX1NWR19BU19JTUFH
RSk7JChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9TVkdfRk9OVFMpOyQo
RU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCk7JChFTkFCTEVfU1ZHX1VTRSk7JChFTkFCTEVfVklE
RU8pOyQoRU5BQkxFX1dFQl9TT0NLRVRTKTskKEVOQUJMRV9XTUwpOyQoRU5BQkxFX1dPUktFUlMp
OyQoRU5BQkxFX1hIVE1MTVApOyQoRU5BQkxFX1hQQVRIKTskKEVOQUJMRV9YU0xUKSIKKwkJUHJl
cHJvY2Vzc29yRGVmaW5pdGlvbnM9IiQoRU5BQkxFXzNEX0NBTlZBUyk7JChFTkFCTEVfM0RfUkVO
REVSSU5HKTskKEVOQUJMRV9CTE9CX1NMSUNFKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7
JChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9EQVRBQkFTRSk7JChF
TkFCTEVfREFUQUdSSUQpOyQoRU5BQkxFX0RBVEFMSVNUKTskKEVOQUJMRV9ERVZJQ0VfT1JJRU5U
QVRJT04pOyQoRU5BQkxFX0RPTV9TVE9SQUdFKTskKEVOQUJMRV9FVkVOVFNPVVJDRSk7JChFTkFC
TEVfRklMVEVSUyk7JChFTkFCTEVfRklMRV9SRUFERVIpOyQoRU5BQkxFX0ZJTEVfV1JJVEVSKTsk
KEVOQUJMRV9HRU9MT0NBVElPTik7JChFTkFCTEVfSUNPTkRBVEFCQVNFKTskKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFKTskKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKTskKEVOQUJMRV9NQVRI
TUwpOyQoRU5BQkxFX05PVElGSUNBVElPTlMpOyQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FU
SU9OUyk7JChFTkFCTEVfUlVCWSk7JChFTkFCTEVfU0FOREJPWCk7JChFTkFCTEVfU0hBUkVEX1dP
UktFUlMpOyQoRU5BQkxFX1NWRyk7JChFTkFCTEVfU1ZHX0FOSU1BVElPTik7JChFTkFCTEVfU1ZH
X0FTX0lNQUdFKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1NWR19G
T05UUyk7JChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKTskKEVOQUJMRV9TVkdfVVNFKTskKEVO
QUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX1NPQ0tFVFMpOyQoRU5BQkxFX1dNTCk7JChFTkFCTEVf
V09SS0VSUyk7JChFTkFCTEVfWEhUTUxNUCk7JChFTkFCTEVfWFBBVEgpOyQoRU5BQkxFX1hTTFQp
IgogCS8+CiAgIDxVc2VyTWFjcm8KIAkJTmFtZT0iRU5BQkxFXzNEX0NBTlZBUyIKQEAgLTUyLDYg
KzUyLDExIEBACiAJCVBlcmZvcm1FbnZpcm9ubWVudFNldD0idHJ1ZSIKIAkvPgogICA8VXNlck1h
Y3JvCisJCU5hbWU9IkVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04iCisJCVZhbHVlPSIiCisJCVBl
cmZvcm1FbnZpcm9ubWVudFNldD0idHJ1ZSIKKwkvPgorICA8VXNlck1hY3JvCiAJCU5hbWU9IkVO
QUJMRV9ET01fU1RPUkFHRSIKIAkJVmFsdWU9IkVOQUJMRV9ET01fU1RPUkFHRSIKIAkJUGVyZm9y
bUVudmlyb25tZW50U2V0PSJ0cnVlIgpJbmRleDogV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy92
c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8udnNwcm9wcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRM
aWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXNDYWlyby52c3Byb3BzCShy
ZXZpc2lvbiA1OTQ2MSkKKysrIFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9GZWF0
dXJlRGVmaW5lc0NhaXJvLnZzcHJvcHMJKHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiAJ
PgogICA8VG9vbAogCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQlQcmVwcm9jZXNzb3JEZWZp
bml0aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVOQUJMRV8zRF9SRU5ERVJJTkcpOyQoRU5B
QkxFX0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9DTElF
TlRfQkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RBVEFCQVNFKTskKEVOQUJMRV9EQVRBR1JJ
RCk7JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RPTV9TVE9SQUdFKTskKEVOQUJMRV9FVkVO
VFNPVVJDRSk7JChFTkFCTEVfRklMVEVSUyk7JChFTkFCTEVfRklMRV9SRUFERVIpOyQoRU5BQkxF
X0ZJTEVfV1JJVEVSKTskKEVOQUJMRV9HRU9MT0NBVElPTik7JChFTkFCTEVfSUNPTkRBVEFCQVNF
KTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VS
KTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX05PVElGSUNBVElPTlMpOyQoRU5BQkxFX09GRkxJ
TkVfV0VCX0FQUExJQ0FUSU9OUyk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX1NW
Ryk7JChFTkFCTEVfU1ZHX0FOSU1BVElPTik7JChFTkFCTEVfU1ZHX0FTX0lNQUdFKTskKEVOQUJM
RV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1NWR19GT05UUyk7JChFTkFCTEVfU1ZH
X0ZPUkVJR05fT0JKRUNUKTskKEVOQUJMRV9TVkdfVVNFKTskKEVOQUJMRV9WSURFTyk7JChFTkFC
TEVfV0VCX1NPQ0tFVFMpOyQoRU5BQkxFX1dNTCk7JChFTkFCTEVfV09SS0VSUyk7JChFTkFCTEVf
WEhUTUxNUCk7JChFTkFCTEVfWFBBVEgpOyQoRU5BQkxFX1hTTFQpIgorCQlQcmVwcm9jZXNzb3JE
ZWZpbml0aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVOQUJMRV8zRF9SRU5ERVJJTkcpOyQo
RU5BQkxFX0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9D
TElFTlRfQkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RBVEFCQVNFKTskKEVOQUJMRV9EQVRB
R1JJRCk7JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChF
TkFCTEVfRE9NX1NUT1JBR0UpOyQoRU5BQkxFX0VWRU5UU09VUkNFKTskKEVOQUJMRV9GSUxURVJT
KTskKEVOQUJMRV9GSUxFX1JFQURFUik7JChFTkFCTEVfRklMRV9XUklURVIpOyQoRU5BQkxFX0dF
T0xPQ0FUSU9OKTskKEVOQUJMRV9JQ09OREFUQUJBU0UpOyQoRU5BQkxFX0lOREVYRURfREFUQUJB
U0UpOyQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFC
TEVfTk9USUZJQ0FUSU9OUyk7JChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKTskKEVO
QUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfU1ZHKTskKEVOQUJMRV9TVkdfQU5JTUFUSU9O
KTskKEVOQUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7
JChFTkFCTEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpOyQoRU5BQkxF
X1NWR19VU0UpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfU09DS0VUUyk7JChFTkFCTEVf
V01MKTskKEVOQUJMRV9XT1JLRVJTKTskKEVOQUJMRV9YSFRNTE1QKTskKEVOQUJMRV9YUEFUSCk7
JChFTkFCTEVfWFNMVCkiCiAJLz4KICAgPFVzZXJNYWNybwogCQlOYW1lPSJFTkFCTEVfM0RfQ0FO
VkFTIgpAQCAtNTIsNiArNTIsMTEgQEAKIAkJUGVyZm9ybUVudmlyb25tZW50U2V0PSJ0cnVlIgog
CS8+CiAgIDxVc2VyTWFjcm8KKwkJTmFtZT0iRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiIKKwkJ
VmFsdWU9IiIKKwkJUGVyZm9ybUVudmlyb25tZW50U2V0PSJ0cnVlIgorCS8+CisgIDxVc2VyTWFj
cm8KIAkJTmFtZT0iRU5BQkxFX0RPTV9TVE9SQUdFIgogCQlWYWx1ZT0iRU5BQkxFX0RPTV9TVE9S
QUdFIgogCQlQZXJmb3JtRW52aXJvbm1lbnRTZXQ9InRydWUiCkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1
OTYwMSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDM0IEBACisyMDEwLTA1LTE3ICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxvY2tAZ29vZ2xlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcm92aWRl
IGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKworICAgICAgICBNb2RpZmllcyBleGlzdGlu
ZyBmYXN0L2RvbS9XaW5kb3cgdGVzdHMgdG8gc2tpcCB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlv
biB1bnRpbAorICAgICAgICBpdCBpcyB3aWRlbHkgc3VwcG9ydGVkLgorICAgICAgICBBZGRzIG5l
dyBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9u
Lmh0bWwgdG8gdGVzdAorICAgICAgICB0eXBlIGFuZCBwcmVzZW5jZSBvZiB3aW5kb3cub25kZXZp
Y2VvcmllbnRhdGlvbi4KKyAgICAgICAgQWRkcyBuZXcgZmFzdC9kb20vRGV2aWNlT3JpZW50YXRp
b24gZGlyZWN0b3J5IGFuZCBpbml0aWFsIHRlc3QuCisgICAgICAgIEFkZHMgYWxsIERldmljZU9y
aWVudGF0aW9uIHRlc3RzIHRvIGFsbCBza2lwcGVkIGxpc3RzLgorCisgICAgICAgICogZmFzdC9k
b20vRGV2aWNlT3JpZW50YXRpb246IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0RldmljZU9y
aWVudGF0aW9uL3NjcmlwdC10ZXN0czogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vRGV2aWNl
T3JpZW50YXRpb24vc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHku
anM6IEFkZGVkLgorICAgICAgICAoaGFzT25EZXZpY2VPcmllbnRhdGlvblByb3BlcnR5KToKKyAg
ICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHktZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5k
b3ctcHJvcGVydHkuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vV2luZG93L3Njcmlw
dC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanM6CisgICAgICAgICogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGll
cy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21p
dW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVk
OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0
L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vd2luL1NraXBwZWQ6CisKIDIwMTAtMDUtMTcg
IFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZp
ZXdlZC4gVXBkYXRlIENocm9taXVtIHRlc3QgZXhwZWN0YXRpb25zLgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93
aW5kb3ctcHJvcGVydHktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBAQAorVGVzdHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2
aWNlb3JpZW50YXRpb24gcHJvcGVydHkgaXMgcHJlc2VudC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgdHlwZW9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uID09ICdv
YmplY3QnIGlzIHRydWUKK1BBU1MgaGFzT25EZXZpY2VPcmllbnRhdGlvblByb3BlcnR5KCkgaXMg
dHJ1ZQorUEFTUyAnb25kZXZpY2VvcmllbnRhdGlvbicgaW4gd2luZG93IGlzIHRydWUKK1BBU1Mg
d2luZG93Lmhhc093blByb3BlcnR5KCdvbmRldmljZW9yaWVudGF0aW9uJykgaXMgdHJ1ZQorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExh
eW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dp
bmRvdy1wcm9wZXJ0eS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20v
RGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVu
dGF0aW9uL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24v
c2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTIgQEAK
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZ
T1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVzdHMvd2luZG93
LXByb3BlcnR5LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9y
aWVudGF0aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHkuanMJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVzdHMvd2lu
ZG93LXByb3BlcnR5LmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE4IEBACitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gcHJvcGVydHkgaXMg
cHJlc2VudC4iKTsKKworZnVuY3Rpb24gaGFzT25EZXZpY2VPcmllbnRhdGlvblByb3BlcnR5KCkK
K3sKKyAgICBmb3IgKHZhciBwcm9wZXJ0eSBpbiB3aW5kb3cpIHsKKyAgICAgICAgaWYgKHByb3Bl
cnR5ID09ICJvbmRldmljZW9yaWVudGF0aW9uIikKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3Nob3VsZEJlVHJ1ZSgidHlwZW9mIHdpbmRv
dy5vbmRldmljZW9yaWVudGF0aW9uID09ICdvYmplY3QnIik7CitzaG91bGRCZVRydWUoImhhc09u
RGV2aWNlT3JpZW50YXRpb25Qcm9wZXJ0eSgpIik7CitzaG91bGRCZVRydWUoIidvbmRldmljZW9y
aWVudGF0aW9uJyBpbiB3aW5kb3ciKTsKK3Nob3VsZEJlVHJ1ZSgid2luZG93Lmhhc093blByb3Bl
cnR5KCdvbmRldmljZW9yaWVudGF0aW9uJykiKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBm
YWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlv
bi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93
L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSw0IEBACitUaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJl
IHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiBvYmplY3QsIGFs
b25nIHdpdGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uIFtudWxs
XQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
b24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9w
ZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDk0IEBACis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJl
IHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbgorb2JqZWN0LCBh
bG9uZyB3aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+PC9wcmU+CisK
KzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAKK3ZhciBsb2dCdWZmZXIgPSBbXTsKK2Z1
bmN0aW9uIGxvZyhzKQoreworICAgIGxvZ0J1ZmZlci5wdXNoKHMpOworfQorCit2YXIgcHJlID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ByZScpOworZnVuY3Rpb24gZmx1c2hMb2coKQorewor
ICAgIHZhciBsb2dNZXNzYWdlID0gbG9nQnVmZmVyLmpvaW4oIiIpOworICAgIHByZS5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShsb2dNZXNzYWdlKSk7Cit9CisKK2Z1bmN0aW9u
IHRyeUV2YWwoc3RyaW5nKQoreworICAgIHRyeSB7CisgICAgICAgIHJldHVybiBldmFsKHN0cmlu
Zyk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICByZXR1cm4gbmV3IFN0cmluZygiQ2F1Z2h0
IGV4Y2VwdGlvbjogIiArIGUpOworICAgIH0KK30KKworZnVuY3Rpb24gdHlwZU9mTnVsbEF3YXJl
KHZhbHVlKQoreworICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIgJiYgdmFsdWUgPT0g
bnVsbCkgLy87CisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1
ZTsKK30KKworZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIg
dmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBl
ID09ICJvYmplY3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZh
bHVlKQorICAgICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9n
VmFsdWUodmFsdWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsK
KyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERv
bid0IHRhaW50IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUg
PT0gbG9nQnVmZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8g
RG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19f
dmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRl
ZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAv
LyBXb3JrIGFyb3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05
XS8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZp
bml0ZSByZWN1cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9f
dmlzaXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICAgICAgbG9nKHZhbHVlTmFtZSArICIgW3By
aW50ZWQgYWJvdmUgYXMgIiArIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fICsg
Il1cbiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbG9nKHZhbHVlTmFtZSArICIg
IiArIHR5cGVTdHJpbmdOdWxsQXdhcmUodmFsdWUpICsgIlxuIik7CisKKyAgICBpZiAodmFsdWVU
eXBlID09ICJvYmplY3QiKSB7CisgICAgICAgIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXyA9
IHRydWU7CisgICAgICAgIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fID0gdmFs
dWVOYW1lOworICAgICAgICBsb2dQcm9wZXJ0aWVzKHZhbHVlLCB2YWx1ZU5hbWUpOworICAgIH0K
K30KKworZnVuY3Rpb24gbG9nUHJvcGVydGllcyhvYmplY3QsIG9iamVjdE5hbWUpCit7CisgICAg
dmFyIGFycmF5ID0gbmV3IEFycmF5OworICAgIGZvciAodmFyIHByb3BlcnR5IGluIG9iamVjdCkg
eworICAgICAgICBhcnJheS5wdXNoKHByb3BlcnR5KTsKKyAgICB9CisgICAgYXJyYXkuc29ydCgp
OworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHsKKyAgICAgICAg
dmFyIHByb3BlcnR5ID0gYXJyYXlbaV07CisgICAgICAgIGxvZ1ZhbHVlKG9iamVjdE5hbWUgKyAi
LiIgKyBwcm9wZXJ0eSk7CisgICAgfQorfQorCitsb2dWYWx1ZSgnd2luZG93Lm9uZGV2aWNlb3Jp
ZW50YXRpb24nKTsKK2ZsdXNoTG9nKCk7Cis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCShyZXZpc2lvbiA1
OTQ2MSkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4Miw4IEBAIHZhciBfX3NraXBfXyA9IHsKICAg
ICAid2luZG93LmNsaWVudEluZm9ybWF0aW9uLmdlb2xvY2F0aW9uIiA6IDEsCiAgICAgIndpbmRv
dy5CbG9iLnByb3RvdHlwZS5zbGljZSIgOiAxLAogICAgICJ3aW5kb3cuRmlsZUVycm9yIiA6IDEs
Ci0gICAgIndpbmRvdy5GaWxlUmVhZGVyIiA6IDEKKyAgICAid2luZG93LkZpbGVSZWFkZXIiIDog
MSwKKyAgICAid2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24iIDogMQogfTsKIAogZnVuY3Rpb24g
bG9nVmFsdWUodmFsdWVOYW1lKQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3Nj
cmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHkt
ZGVzY3JpcHRvcnMuanMJKHJldmlzaW9uIDU5NDYxKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20v
V2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMJKHdvcmtp
bmcgY29weSkKQEAgLTM3LDYgKzM3LDcgQEAgdmFyIF9fc2tpcF9fID0gewogICAgICJGbG9hdEFy
cmF5IiA6IDEsCiAgICAgIkZpbGVFcnJvciIgOiAxLAogICAgICJGaWxlUmVhZGVyIiA6IDEsCisg
ICAgIm9uZGV2aWNlb3JpZW50YXRpb24iIDogMSwKICAgICAvLyBJZ25vcmUgdGhpcyBwcm9wZXJ0
eSBiZWNhdXNlIGl0IG9ubHkgYXBwZWFycyBpbiBkZWJ1ZyBidWlsZHMgYW5kIG5vdCBpbiByZWxl
YXNlLgogICAgICJqc2NwcmludCIgOiAxCiB9OwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Y2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkocmV2aXNpb24gNTk0NjEp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTI4MjcsMyArMjgyNyw3IEBAIEJVRzQ0MDE4IFdJTiA6IGluc3Bl
Y3Rvci9zdHlsZXMtZGlzYWJsZS0KIAogLy8gRmxha3kgY3Jhc2hpbmcgdGVzdC4gU3RhcnRlZCBj
cmFzaGluZyBhcm91bmQgQ2hyb21pdW0gcjQ3MjIwCiBCVUc0NDE1MCBMSU5VWCBERUJVRyA6IGZh
c3QvZm9ybXMvaW5wdXQtdGV4dC1wYXN0ZS1tYXhsZW5ndGguaHRtbCA9IENSQVNIIFBBU1MKKwor
Ly8gRGV2aWNlT3JpZW50YXRpb24gQVBJIG5vdCB5ZXQgaW1wbGVtZW50ZWQuCitERUZFUiBTS0lQ
IDogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24gPSBURVhUCitERUZFUiBTS0lQIDogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sID0g
VEVYVApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHJldmlzaW9uIDU5NDYxKQorKysg
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTExNzks
NiArMTE3OSw3IEBAIGZhc3QvZG9tL2NsaWVudC13aWR0aC1oZWlnaHQtcXVpcmtzLmh0bWwKIGZh
c3QvZG9tL2NsaWVudC13aWR0aC1oZWlnaHQuaHRtbAogZmFzdC9kb20vY3NzVGFyZ2V0LWNyYXNo
Lmh0bWwKIGZhc3QvZG9tL2ZyYW1lLWxvYWRpbmctdmlhLWRvY3VtZW50LXdyaXRlLmh0bWwKK2Zh
c3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sCiBmYXN0L2RvbS9H
ZW9sb2NhdGlvbi9jYWxsYmFjay1leGNlcHRpb24uaHRtbAogZmFzdC9kb20vR2VvbG9jYXRpb24v
ZXJyb3IuaHRtbAogZmFzdC9kb20vR2VvbG9jYXRpb24vcGVybWlzc2lvbi1kZW5pZWQtYWxyZWFk
eS1jbGVhci13YXRjaC5odG1sCkBAIC0xMjA0LDYgKzEyMDUsNyBAQCBmYXN0L2RvbS9TZWxlY3Rv
ckFQSS9yZXNpZy1TZWxlY3RvcnNBUEktCiBmYXN0L2RvbS9XaW5kb3cvbmV3LXdpbmRvdy1vcGVu
ZXIuaHRtbAogZmFzdC9kb20vV2luZG93L3dlYmtpdENvbnZlcnRQb2ludC5odG1sCiBmYXN0L2Rv
bS9XaW5kb3cvd2luZG93LW9uRm9jdXMuaHRtbAorZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9w
ZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2luZG93
LXJlc2l6ZS1hbmQtbW92ZS1hcmd1bWVudHMuaHRtbAogZmFzdC9kb20vV2luZG93L3dpbmRvdy1y
ZXNpemUuaHRtbAogZmFzdC9kb20vV2luZG93L3dpbmRvdy14eS1wcm9wZXJ0aWVzLmh0bWwKSW5k
ZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCShyZXZpc2lvbiA1OTQ2MSkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC0xODEsMyArMTgxLDcg
QEAgZmFzdC9jc3MvZm9udC1mYWNlLXdvZmYuaHRtbAogCiAjIEV2ZW50U2VuZGluZ0NvbnRyb2xs
ZXIgZG9lcyBub3Qgc2VuZCBldmVudHMgb24gYXJlYXMgb3V0c2lkZSB0aGUgV2ViVmlldy4KIHNj
cm9sbGJhcnMvc2Nyb2xsYmFyLWNsaWNrLWRvZXMtbm90LWJsdXItY29udGVudC5odG1sCisKKyMg
VGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbi4KK2Zhc3QvZG9tL0Rl
dmljZU9yaWVudGF0aW9uCitmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2
aWNlLW9yaWVudGF0aW9uLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBw
ZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2aXNp
b24gNTk0NjEpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNv
cHkpCkBAIC01MDk2LDMgKzUwOTYsNyBAQCBlZGl0aW5nL3NlbGVjdGlvbi9zaGlmdC1jbGljay5o
dG1sCiAjIE5ldyB0ZXN0IGhhbmdzIFFUIGJvdAogIyBEaXNjdXNzZWQgaW4gaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4OTI4CiBmYXN0L2xvYWRlci9yZWN1cnNpdmUt
YmVmb3JlLXVubG9hZC1jcmFzaC5odG1sIAorCisjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQg
RGV2aWNlT3JpZW50YXRpb24uCitmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbgorZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCkluZGV4
OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkocmV2aXNpb24gNTk0NjEpCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAtODcyLDMgKzg3Miw3IEBA
IGZhc3QvY3NzL2Rpc3BsYXktbm9uZS1pbmxpbmUtc3R5bGUtY2hhbmcKIAogIyBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg3OTUgLSBkb2Vzbid0IHByaW50IFBhaW50
RXZlbnQgaW5zdHJ1bWVudGF0aW9uIG91dHB1dAogaW5zcGVjdG9yL3RpbWVsaW5lLXBhaW50Lmh0
bWwKKworIyBUaGlzIHBvcnQgZG9lc24ndCBzdXBwb3J0IERldmljZU9yaWVudGF0aW9uLgorZmFz
dC9kb20vRGV2aWNlT3JpZW50YXRpb24KK2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGll
cy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56237</attachid>
            <date>2010-05-17 06:27:55 -0700</date>
            <delta_ts>2010-05-19 04:29:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39210-20100517142752.patch</filename>
            <type>text/plain</type>
            <size>52480</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NjAyKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTcgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIx
MAorCisgICAgICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9q
ZWN0IGZpbGUsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDEwLTA1LTE3ICBQYXRyaWNrIEdhbnN0ZXJlciAg
PHBhcm9nYUBwYXJvZ2EuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3Mu
CkluZGV4OiBKYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gNTk2MDIpCisrKyBKYXZhU2NyaXB0Q29yZS9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNDcs
NiArNDcsNyBAQCBFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OID0gRU5BQkxFCiBFTkFC
TEVfREFUQUJBU0UgPSBFTkFCTEVfREFUQUJBU0U7CiBFTkFCTEVfREFUQUdSSUQgPSA7CiBFTkFC
TEVfREFUQUxJU1QgPSBFTkFCTEVfREFUQUxJU1Q7CitFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9O
ID0gOwogRU5BQkxFX0RPTV9TVE9SQUdFID0gRU5BQkxFX0RPTV9TVE9SQUdFOwogRU5BQkxFX0VW
RU5UU09VUkNFID0gRU5BQkxFX0VWRU5UU09VUkNFOwogRU5BQkxFX0ZJTFRFUlMgPSBFTkFCTEVf
RklMVEVSUzsKQEAgLTc4LDQgKzc5LDQgQEAgRU5BQkxFX1hIVE1MTVAgPSA7CiBFTkFCTEVfWFBB
VEggPSBFTkFCTEVfWFBBVEg7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9DQU5WQVMpICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChF
TkFCTEVfQkxPQl9TTElDRSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFH
UklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VW
RU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChFTkFC
TEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJB
U0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdH
RVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZG
TElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JV
QlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9T
VkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFC
TEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NW
R19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5B
QkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxF
X1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5F
UyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9C
TE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JB
U0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQo
RU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RP
TV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFC
TEVfRklMRV9SRUFERVIpICQoRU5BQkxFX0ZJTEVfV1JJVEVSKSAkKEVOQUJMRV9HRU9MT0NBVElP
TikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVO
QUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUFJP
R1JFU1NfVEFHKSAkKEVOQUJMRV9SVUJZKSAkKEVOQUJMRV9TQU5EQk9YKSAkKEVOQUJMRV9TSEFS
RURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJM
RV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVf
U1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0Up
ICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV01MKSAkKEVO
QUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVf
WFNMVCk7CkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0No
YW5nZUxvZwkocmV2aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDUwIEBACisyMDEwLTA1LTE3ICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxv
Y2tAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBQcm92aWRlIGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKworICAgICAgICBU
ZXN0czogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1kZXZpY2Ut
b3JpZW50YXRpb24uaHRtbAorCisgICAgICAgIEFkZHMgYmluZGluZ3MgZm9yIERldmljZU9yaWVu
dGF0aW9uIGFzIGRlZmluZWQgaW4KKyAgICAgICAgaHR0cDovL2Rldi53My5vcmcvZ2VvL2FwaS9z
cGVjLXNvdXJjZS1vcmllbnRhdGlvbi5odG1sCisgICAgICAgIFRoaXMgaXMgZ3VhcmRlZCBieSBF
TkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKSB3aGljaCBpcyBjdXJyZW50bHkgZGlzYWJsZWQgb24K
KyAgICAgICAgYWxsIHBsYXRmb3JtcyBidXQgQW5kcm9pZC4KKworICAgICAgICAqIEFuZHJvaWQu
ZGVyaXZlZC5qc2NiaW5kaW5ncy5tazoKKyAgICAgICAgKiBBbmRyb2lkLmRlcml2ZWQudjhiaW5k
aW5ncy5tazoKKyAgICAgICAgKiBBbmRyb2lkLm1rOgorICAgICAgICAqIENvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoK
KyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFt
OgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGlu
Z3MvanMvSlNFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjp0b1Y4KToKKyAgICAgICAgKiBjb25maWcuaDoKKyAgICAgICAgKiBkb20vRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAg
ICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaDogQWRkZWQuCisgICAgICAgIChXZWJD
b3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlT3JpZW50YXRpb25FdmVudDo6YWxwaGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb25FdmVudDo6YmV0YSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkV2ZW50OjpnYW1tYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2
ZW50Ojppc0RldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmlkbDogQWRkZWQuCisgICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50Ojppc0RldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAq
IGRvbS9FdmVudC5oOgorICAgICAgICAqIGRvbS9FdmVudE5hbWVzLmg6CisgICAgICAgICogcGFn
ZS9ET01XaW5kb3cuaDoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisKIDIwMTAtMDUt
MTQgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgTmF0ZSBDaGFwaW4uCkluZGV4OiBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5k
aW5ncy5tawo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5kaW5n
cy5tawkocmV2aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5k
aW5ncy5tawkod29ya2luZyBjb3B5KQpAQCAtNDksNyArNDksNyBAQCBqc19iaW5kaW5nX3Njcmlw
dHMgOj0gJChhZGRwcmVmaXggJChMT0NBCiAJCQliaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJp
bmRpbmdzLnBsIFwKIAkJKQogCi1GRUFUVVJFX0RFRklORVMgOj0gQU5EUk9JRF9PUklFTlRBVElP
Tl9TVVBQT1JUIEVOQUJMRV9UT1VDSF9FVkVOVFM9MSBFTkFCTEVfREFUQUJBU0U9MSBFTkFCTEVf
T0ZGTElORV9XRUJfQVBQTElDQVRJT05TPTEgRU5BQkxFX0RPTV9TVE9SQUdFPTEgRU5BQkxFX1ZJ
REVPPTEgRU5BQkxFX1dPUktFUlM9MSBFTkFCTEVfR0VPTE9DQVRJT049MSBFTkFCTEVfQ0hBTk5F
TF9NRVNTQUdJTkc9MQorRkVBVFVSRV9ERUZJTkVTIDo9IEFORFJPSURfT1JJRU5UQVRJT05fU1VQ
UE9SVCBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgRU5BQkxFX0RBVEFCQVNFPTEgRU5BQkxFX09GRkxJ
TkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFHRT0xIEVOQUJMRV9WSURFTz0x
IEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEgRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HPTEgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTj0xCiAKICMgQ1NTCiBHRU4gOj0gXApA
QCAtMTAzLDYgKzEwMyw3IEBAIEdFTiA6PSBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9kb20vSlND
b21tZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRE9NQ29yZUV4Y2VwdGlvbi5o
IFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RPTUltcGxlbWVudGF0aW9uLmggXAorICAg
ICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKICAgICAk
KGludGVybWVkaWF0ZXMpL2RvbS9KU0RvY3VtZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykv
ZG9tL0pTRG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0Rv
Y3VtZW50VHlwZS5oIFwKSW5kZXg6IFdlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLnY4YmluZGluZ3Mu
bWsKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9BbmRyb2lkLmRlcml2ZWQudjhiaW5kaW5ncy5tawko
cmV2aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC52OGJpbmRpbmdzLm1r
CSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw4IEBAIGpzX2JpbmRpbmdfc2NyaXB0cyA6PSBc
CiAJJChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL0lETFN0cnVjdHVyZS5wbSBcCiAJJChM
T0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBsCiAKLUZFQVRV
UkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFUSU9OX1NVUFBPUlQgRU5BQkxFX1RPVUNIX0VW
RU5UUz0xIFY4X0JJTkRJTkcgRU5BQkxFX0RBVEFCQVNFPTEgRU5BQkxFX09GRkxJTkVfV0VCX0FQ
UExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFHRT0xIEVOQUJMRV9WSURFTz0xIEVOQUJMRV9X
T1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEKK0ZFQVRVUkVfREVGSU5FUyA6PSBBTkRST0lE
X09SSUVOVEFUSU9OX1NVUFBPUlQgRU5BQkxFX1RPVUNIX0VWRU5UUz0xIEVOQUJMRV9EQVRBQkFT
RT0xIEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlM9MSBFTkFCTEVfRE9NX1NUT1JBR0U9
MSBFTkFCTEVfVklERU89MSBFTkFCTEVfV09SS0VSUz0xIEVOQUJMRV9HRU9MT0NBVElPTj0xIEVO
QUJMRV9ERVZJQ0VfT1JJRU5UQVRJT049MQorRkVBVFVSRV9ERUZJTkVTICs9IFY4X0JJTkRJTkcK
IAogIyBDU1MKIEdFTiA6PSBcCkBAIC04NCw2ICs4NSw3IEBAIEdFTiA6PSBcCiAgICAgJChpbnRl
cm1lZGlhdGVzKS9iaW5kaW5ncy9WOENvbW1lbnQuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9i
aW5kaW5ncy9WOERPTUNvcmVFeGNlcHRpb24uaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5k
aW5ncy9WOERPTUltcGxlbWVudGF0aW9uLmggXAorICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGlu
Z3MvVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvYmlu
ZGluZ3MvVjhEb2N1bWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RG9j
dW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RG9jdW1l
bnRUeXBlLmggXApJbmRleDogV2ViQ29yZS9BbmRyb2lkLm1rCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvQW5kcm9pZC5tawkocmV2aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL0FuZHJvaWQubWsJKHdv
cmtpbmcgY29weSkKQEAgLTE0Niw2ICsxNDYsNyBAQCBMT0NBTF9TUkNfRklMRVMgOj0gJChMT0NB
TF9TUkNfRklMRVMpIFwKIAlkb20vTm90YXRpb24uY3BwIFwKIAlkb20vT3B0aW9uRWxlbWVudC5j
cHAgXAogCWRvbS9PcHRpb25Hcm91cEVsZW1lbnQuY3BwIFwKKwlkb20vRGV2aWNlT3JpZW50YXRp
b25FdmVudC5jcHAgXAogCWRvbS9PdmVyZmxvd0V2ZW50LmNwcCBcCiAJZG9tL1BhZ2VUcmFuc2l0
aW9uRXZlbnQuY3BwIFwKIAlkb20vUG9zaXRpb24uY3BwIFwKSW5kZXg6IFdlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCShy
ZXZpc2lvbiA1OTYwMikKKysrIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC02OSw2ICs2OSw3IEBACiAjaW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbi5jcHAiCiAj
aW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbkxpc3QuY3BwIgogI2luY2x1ZGUgIkpTRGVkaWNhdGVk
V29ya2VyQ29udGV4dC5jcHAiCisjaW5jbHVkZSAiSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNw
cCIKICNpbmNsdWRlICJKU0RvY3VtZW50LmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50RnJhZ21l
bnQuY3BwIgogI2luY2x1ZGUgIkpTRG9jdW1lbnRUeXBlLmNwcCIKSW5kZXg6IFdlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UJKHJldmlzaW9uIDU5NjAyKQorKysgV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTcsNiArMTE3LDcgQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgRGF0YWJh
c2UgXAogICAgIERhdGFiYXNlQ2FsbGJhY2sgXAogICAgIERhdGFiYXNlU3luYyBcCisgICAgRGV2
aWNlT3JpZW50YXRpb25FdmVudCBcCiAgICAgRG9jdW1lbnQgXAogICAgIERvY3VtZW50RnJhZ21l
bnQgXAogICAgIERvY3VtZW50VHlwZSBcCkluZGV4OiBXZWJDb3JlL0dOVW1ha2VmaWxlLmFtCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvR05VbWFrZWZpbGUuYW0JKHJldmlzaW9uIDU5NjAyKQorKysg
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkod29ya2luZyBjb3B5KQpAQCAtMTM3LDYgKzEzNyw3IEBA
IElETF9CSU5ESU5HUyArPSBcCiAJV2ViY29yZS9kb20vQ3VzdG9tRXZlbnQuaWRsIFwKIAlXZWJD
b3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbCBcCiAJV2ViQ29yZS9kb20vRE9NSW1wbGVtZW50
YXRpb24uaWRsIFwKKwlXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCBcCiAJ
V2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50
LmlkbCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnRUeXBlLmlkbCBcCkBAIC03NjQsNiArNzY1LDgg
QEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmgg
XAogCVdlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcCBcCiAJV2ViQ29yZS9kb20vRE9N
SW1wbGVtZW50YXRpb24uaCBcCisJV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5j
cHAgXAorCVdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCiAJV2ViQ29yZS9k
b20vRG9jdW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVudC5oIFwKIAlXZWJDb3JlL2Rv
bS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUuZ3lwaQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUuZ3lwaQkocmV2aXNpb24gNTk2MDIpCisrKyBXZWJD
b3JlL1dlYkNvcmUuZ3lwaQkod29ya2luZyBjb3B5KQpAQCAtNDAsNiArNDAsNyBAQAogICAgICAg
ICAgICAgJ2RvbS9DdXN0b21FdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9ET01Db3JlRXhj
ZXB0aW9uLmlkbCcsCiAgICAgICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmlkbCcsCisg
ICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsJywKICAgICAgICAgICAg
ICdkb20vRG9jdW1lbnQuaWRsJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnRGcmFnbWVudC5p
ZGwnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudFR5cGUuaWRsJywKQEAgLTEwOTksNiArMTEw
MCw4IEBACiAgICAgICAgICAgICAnZG9tL0RPTUNvcmVFeGNlcHRpb24uaCcsCiAgICAgICAgICAg
ICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RPTUltcGxl
bWVudGF0aW9uLmgnLAorICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNw
cCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCcsCiAgICAgICAg
ICAgICAnZG9tL0RvY3VtZW50LmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50LmgnLAog
ICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCcsCkluZGV4OiBXZWJDb3JlL1dl
YkNvcmUucHJvCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS5wcm8JKHJldmlzaW9uIDU5
NjAyKQorKysgV2ViQ29yZS9XZWJDb3JlLnBybwkod29ya2luZyBjb3B5KQpAQCAtNDYyLDYgKzQ2
Miw3IEBAIFNPVVJDRVMgKz0gXAogICAgIGRvbS9Db250YWluZXJOb2RlLmNwcCBcCiAgICAgZG9t
L0NTU01hcHBlZEF0dHJpYnV0ZURlY2xhcmF0aW9uLmNwcCBcCiAgICAgZG9tL0N1c3RvbUV2ZW50
LmNwcCBcCisgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKICAgICBkb20vRG9j
dW1lbnQuY3BwIFwKICAgICBkb20vRG9jdW1lbnRGcmFnbWVudC5jcHAgXAogICAgIGRvbS9Eb2N1
bWVudFR5cGUuY3BwIFwKQEAgLTExODUsNiArMTE4Niw3IEBAIEhFQURFUlMgKz0gXAogICAgIGRv
bS9DU1NNYXBwZWRBdHRyaWJ1dGVEZWNsYXJhdGlvbi5oIFwKICAgICBkb20vQ3VzdG9tRXZlbnQu
aCBcCiAgICAgZG9tL2RlZmF1bHQvUGxhdGZvcm1NZXNzYWdlUG9ydENoYW5uZWwuaCBcCisgICAg
ZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50RnJhZ21lbnQu
aCBcCiAgICAgZG9tL0RvY3VtZW50LmggXAogICAgIGRvbS9Eb2N1bWVudFR5cGUuaCBcCkluZGV4
OiBXZWJDb3JlL2NvbmZpZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvY29uZmlnLmgJKHJldmlz
aW9uIDU5NjAyKQorKysgV2ViQ29yZS9jb25maWcuaAkod29ya2luZyBjb3B5KQpAQCAtMTA2LDYg
KzEwNiw3IEBACiAjdW5kZWYgRU5BQkxFX0lOU1BFQ1RPUiAgLy8gRW5hYmxlZCBieSBkZWZhdWx0
IGluIFBsYXRmb3JtLmgKICNkZWZpbmUgRU5BQkxFX0lOU1BFQ1RPUiAwCiAjZGVmaW5lIEVOQUJM
RV9FVkVOVF9TT1VSQ0UgMAorI2RlZmluZSBFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIDEKICNl
bmRpZiAvKiBQTEFURk9STShBTkRST0lEKSAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKSW5kZXg6
IFdlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkocmV2
aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC00Nyw2ICs0Nyw3IEBAIEVOQUJMRV9DTElFTlRfQkFT
RURfR0VPTE9DQVRJT04gPSBFTkFCTEUKIEVOQUJMRV9EQVRBQkFTRSA9IEVOQUJMRV9EQVRBQkFT
RTsKIEVOQUJMRV9EQVRBR1JJRCA9IDsKIEVOQUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElT
VDsKK0VOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfRE9NX1NUT1JBR0UgPSBF
TkFCTEVfRE9NX1NUT1JBR0U7CiBFTkFCTEVfRVZFTlRTT1VSQ0UgPSBFTkFCTEVfRVZFTlRTT1VS
Q0U7CiBFTkFCTEVfRklMVEVSUyA9IEVOQUJMRV9GSUxURVJTOwpAQCAtNzgsNCArNzksNCBAQCBF
TkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJMRV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9Y
U0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZB
UykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9D
SEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVO
QUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVO
QUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMp
ICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVfR0VP
TE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFT
RSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJM
RV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5B
QkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChFTkFC
TEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikg
JChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQo
RU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9T
VkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dN
TCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgpICQo
RU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVO
QUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxf
TUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RB
VEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RF
VklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09V
UkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVfRklM
RV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQo
RU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9X
RUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkpICQo
RU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQo
RU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZH
X0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JF
SUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dF
Ql9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1M
TVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFdlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA1OTYwMikKKysrIFdlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xMTY1
LDYgKzExNjUsMTAgQEAKIAkJNTk2MjI5NzgxMTMzRUZENzAwREM0Q0JCIC8qIEdlb2xvY2F0aW9u
UG9zaXRpb25DYWNoZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1OTYyMjk3NzExMzNFRkQ3MDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNh
Y2hlLmNwcCAqLzsgfTsKIAkJNTk2MjI5N0ExMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xvY2F0aW9u
UG9zaXRpb25DYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTk2MjI5NzkxMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25DYWNo
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTU5
OUU3NTkwMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlk
Z2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1
OUE4NUVBMjExOUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMTExOUQ2
OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi87IH07CisJCTU5QTg1
RUE0MTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMzExOUQ2OEVDMDBE
RUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovOyB9OworCQk1OUE4NjAwNjExOURB
RjdGMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTg2MDA1MTE5REFGN0YwMERFRjFF
RiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovOyB9OworCQk1OUE4NjAwODExOURB
RkExMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NjAwNzExOURBRkExMDBERUYxRUYg
LyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi87IH07CiAJCTU5QTlFN0IwMTEwNDc1ODgw
MERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTlBOUU3QUYxMTA0NzU4ODAwREZCNEMxIC8qIEphdmFJbnN0
YW5jZUpTQy5jcHAgKi87IH07CiAJCTU5QTlFN0IyMTEwNDc1OTQwMERGQjRDMSAvKiBKYXZhSW5z
dGFuY2VKU0MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDU5QTlFN0IxMTEwNDc1OTQwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuaCAqLzsgfTsKIAkJ
NTlCNTk3NzMxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUI1OTc3MjExMDg2NTZCMDA3MTU5RTgg
LyogQnJpZGdlSlNDLmNwcCAqLzsgfTsKQEAgLTY3NjMsNiArNjc2NywxMSBAQAogCQk1OTYyMjk3
NzExMzNFRkQ3MDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdlb2xvY2F0aW9uUG9zaXRpb25DYWNoZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5NjIyOTc5MTEzM0VGRTIwMERDNENC
QiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQnJpZGdlLmg7IHBhdGggPSBicmlkZ2UvQnJpZGdlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUExMTE5RDY4RDkwMERFRjFFRiAv
KiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25F
dmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlv
bkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUFBMTE5RDdCNkUw
MERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTlBODYwMDUxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RldmljZU9yaWVu
dGF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUE4NjAwNzEx
OURBRkExMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1OUE5RTdBRjExMDQ3NTg4MDBERkI0QzEgLyogSmF2YUlu
c3RhbmNlSlNDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEphdmFJ
bnN0YW5jZUpTQy5jcHA7IHBhdGggPSBqc2MvSmF2YUluc3RhbmNlSlNDLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlBOUU3QjExMTA0NzU5NDAwREZCNEMxIC8qIEphdmFJbnN0
YW5jZUpTQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKYXZhSW5zdGFuY2VK
U0MuaDsgcGF0aCA9IGpzYy9KYXZhSW5zdGFuY2VKU0MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTlCNTk3NzIxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBCcmlkZ2VKU0MuY3BwOyBwYXRoID0gYnJp
ZGdlL2pzYy9CcmlkZ2VKU0MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQx
OTksNiArMTQyMDgsOCBAQAogCQlBODNCNzkxMDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAqLyA9
IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNTlBODYwMDcxMTlE
QUZBMTAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovLAorCQkJCTU5QTg2
MDA1MTE5REFGN0YwMERFRjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovLAog
CQkJCTY1REYzMUQ4MDlEMUMxMjIwMDBCRTMyNSAvKiBKU0F0dHIuY3BwICovLAogCQkJCTY1REYz
MUQ5MDlEMUMxMjMwMDBCRTMyNSAvKiBKU0F0dHIuaCAqLywKIAkJCQk5M0Y5Qjc5RTBCQTYwMzI2
MDA4NTQwNjQgLyogSlNDREFUQVNlY3Rpb24uY3BwICovLApAQCAtMTYzOTEsNiArMTY0MDIsOSBA
QAogCQlGNTIzRDMyNDAyREU0NDc4MDE4NjM1Q0EgLyogZG9tICovID0gewogCQkJaXNhID0gUEJY
R3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYgLyog
RGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwgKi8sCisJCQkJNTlBODVFQTMxMTlENjhFQzAwREVG
MUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKKwkJCQk1OUE4NUVBMTExOUQ2OEQ5
MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8sCiAJCQkJRTFDNERFNkQw
RUE3NUM2NTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5jcHAgKi8sCiAJCQkJRTFDNERFNjgw
RUE3NUMxRTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5oICovLAogCQkJCUE4QzRBN0ZDMDlE
NTYzMjcwMDAzQUM4RCAvKiBBdHRyLmNwcCAqLywKQEAgLTE5MjUxLDYgKzE5MjY1LDggQEAKIAkJ
CQlDNTZDOTFBMTExOUQ5MTgxMDBERTRDRDkgLyogSlNJREJFcnJvckV2ZW50LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlDNTZDOTFBMzExOUQ5MTgxMDBERTRDRDkgLyogSlNJREJFdmVudC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQzU2QzkxQTcxMTlEOTE4NzAwREU0Q0Q5IC8qIEpTSURCU3VjY2Vzc0V2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1OUE4NUVBNDExOUQ2OEVDMDBERUYxRUYgLyogRGV2
aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTlBODYwMDgxMTlEQUZB
MTAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBA
IC0yMTUzMSw2ICsyMTU0Nyw4IEBACiAJCQkJQzU2QzkxQTAxMTlEOTE4MTAwREU0Q0Q5IC8qIEpT
SURCRXJyb3JFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNTZDOTFBMjExOUQ5MTgxMDBE
RTRDRDkgLyogSlNJREJFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNTZDOTFBNjExOUQ5
MTg3MDBERTRDRDkgLyogSlNJREJTdWNjZXNzRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTlBODVFQTIxMTlENjhEOTAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTlBODYwMDYxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVw
bG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3Mv
anMvSlNFdmVudEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0V2ZW50Q3VzdG9tLmNwcAkocmV2aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRXZlbnRDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiwxMSArMzIsMTMgQEAKICNp
bmNsdWRlICJDbGlwYm9hcmQuaCIKICNpbmNsdWRlICJDb21wb3NpdGlvbkV2ZW50LmgiCiAjaW5j
bHVkZSAiQ3VzdG9tRXZlbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmgi
CiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJKU0JlZm9yZUxvYWRFdmVudC5oIgogI2lu
Y2x1ZGUgIkpTQ2xpcGJvYXJkLmgiCiAjaW5jbHVkZSAiSlNDdXN0b21FdmVudC5oIgogI2luY2x1
ZGUgIkpTQ29tcG9zaXRpb25FdmVudC5oIgorI2luY2x1ZGUgIkpTRGV2aWNlT3JpZW50YXRpb25F
dmVudC5oIgogI2luY2x1ZGUgIkpTRXJyb3JFdmVudC5oIgogI2luY2x1ZGUgIkpTSURCRXJyb3JF
dmVudC5oIgogI2luY2x1ZGUgIkpTSURCU3VjY2Vzc0V2ZW50LmgiCkBAIC0xNjcsNiArMTY5LDEw
IEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmEKICAgICAgICAgd3Jh
cHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBQb3BT
dGF0ZUV2ZW50LCBldmVudCk7CiAgICAgZWxzZSBpZiAoZXZlbnQtPmlzQ3VzdG9tRXZlbnQoKSkK
ICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFs
T2JqZWN0LCBDdXN0b21FdmVudCwgZXZlbnQpOworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJ
T04pCisgICAgZWxzZSBpZiAoZXZlbnQtPmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpKQorICAg
ICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmpl
Y3QsIERldmljZU9yaWVudGF0aW9uRXZlbnQsIGV2ZW50KTsKKyNlbmRpZgogICAgIGVsc2UKICAg
ICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2Jq
ZWN0LCBFdmVudCwgZXZlbnQpOwogCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OEV2ZW50Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOEV2ZW50Q3VzdG9tLmNwcAkocmV2aXNpb24gNTk2MDIpCisrKyBXZWJDb3JlL2JpbmRpbmdz
L3Y4L2N1c3RvbS9WOEV2ZW50Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDAsNiArNDAs
NyBAQAogI2luY2x1ZGUgIlY4Q2xpcGJvYXJkLmgiCiAjaW5jbHVkZSAiVjhDb21wb3NpdGlvbkV2
ZW50LmgiCiAjaW5jbHVkZSAiVjhDdXN0b21FdmVudC5oIgorI2luY2x1ZGUgIlY4RGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5oIgogI2luY2x1ZGUgIlY4RXJyb3JFdmVudC5oIgogI2luY2x1ZGUgIlY4
SURCRXJyb3JFdmVudC5oIgogI2luY2x1ZGUgIlY4SURCU3VjY2Vzc0V2ZW50LmgiCkBAIC0xNTMs
NiArMTU0LDEwIEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4KEV2ZW50KiBpbXBsKQogI2Vu
ZGlmCiAgICAgaWYgKGltcGwtPmlzQmVmb3JlTG9hZEV2ZW50KCkpCiAgICAgICAgIHJldHVybiB0
b1Y4KHN0YXRpY19jYXN0PEJlZm9yZUxvYWRFdmVudCo+KGltcGwpKTsKKyNpZiBFTkFCTEUoREVW
SUNFX09SSUVOVEFUSU9OKQorICAgIGlmIChpbXBsLT5pc0RldmljZU9yaWVudGF0aW9uRXZlbnQo
KSkKKyAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8RGV2aWNlT3JpZW50YXRpb25FdmVu
dCo+KGltcGwpKTsKKyNlbmRpZgogICAgIGlmIChpbXBsLT5pc0N1c3RvbUV2ZW50KCkpCiAgICAg
ICAgIHJldHVybiB0b1Y4KHN0YXRpY19jYXN0PEN1c3RvbUV2ZW50Kj4oaW1wbCkpOwogICAgIHJl
dHVybiBWOEV2ZW50Ojp3cmFwKGltcGwpOwpJbmRleDogV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50
YXRpb25FdmVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b25FdmVudC5jcHAJKHJldmlzaW9uIDApCisrKyBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlv
bkV2ZW50LmNwcAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2MiBAQAorLyoKKyAqIENvcHlyaWdo
dCAyMDEwLCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
ICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKKworI2lmIEVO
QUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworRGV2aWNl
T3JpZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudCgpCisgICAgOiBtX2FscGhh
KDApCisgICAgLCBtX2JldGEoMCkKKyAgICAsIG1fZ2FtbWEoMCkKK3sKK30KKworRGV2aWNlT3Jp
ZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcm
IGV2ZW50VHlwZSwgZG91YmxlIGFscGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdhbW1hKQorICAg
IDogRXZlbnQoZXZlbnRUeXBlLCBmYWxzZSwgZmFsc2UpIC8vIENhbid0IGJ1YmJsZSwgbm90IGNh
bmNlbGFibGUKKyAgICAsIG1fYWxwaGEoYWxwaGEpCisgICAgLCBtX2JldGEoYmV0YSkKKyAgICAs
IG1fZ2FtbWEoZ2FtbWEpCit7Cit9CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5p
dERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGJv
b2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEs
IGRvdWJsZSBnYW1tYSkKK3sKKyAgICBpZiAoZGlzcGF0Y2hlZCgpKQorICAgICAgICByZXR1cm47
CisKKyAgICBpbml0RXZlbnQoZXZlbnRUeXBlLCBjYW5CdWJibGUsIGNhbmNlbGFibGUpOworCisg
ICAgbV9hbHBoYSA9IGFscGhhOworICAgIG1fYmV0YSA9IGJldGE7CisgICAgbV9nYW1tYSA9IGdh
bW1hOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoREVW
SUNFX09SSUVOVEFUSU9OKQpJbmRleDogV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAko
cmV2aXNpb24gMCkKKysrIFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAyMDEwLCBUaGUgQW5k
cm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlv
bkV2ZW50X2gKKyNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25FdmVudF9oCisKKyNpbmNsdWRlICJE
T01XaW5kb3cuaCIKKyNpbmNsdWRlICJFdmVudC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K2NsYXNzIERldmljZU9yaWVudGF0aW9uRXZlbnQgOiBwdWJsaWMgRXZlbnQgeworcHVibGljOgor
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZSgpCisg
ICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uRXZlbnQp
OworICAgIH0KKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBj
cmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGRvdWJsZSBhbHBoYSwgZG91Ymxl
IGJldGEsIGRvdWJsZSBnYW1tYSkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcg
RGV2aWNlT3JpZW50YXRpb25FdmVudChldmVudFR5cGUsIGFscGhhLCBiZXRhLCBnYW1tYSkpOwor
ICAgIH0KKworICAgIHZvaWQgaW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWlj
U3RyaW5nJiBldmVudFR5cGUsIGJvb2wgY2FuQnViYmxlLCBib29sIGNhbmNlbGFibGUsIGRvdWJs
ZSBhbHBoYSwgZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSk7CisgICAgZG91YmxlIGFscGhhKCkg
eyByZXR1cm4gbV9hbHBoYTsgfQorICAgIGRvdWJsZSBiZXRhKCkgeyByZXR1cm4gbV9iZXRhOyB9
CisgICAgZG91YmxlIGdhbW1hKCkgeyByZXR1cm4gbV9nYW1tYTsgfQorCisgICAgdmlydHVhbCBi
b29sIGlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKwor
cHJpdmF0ZToKKyAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCk7CisgICAgRGV2aWNlT3JpZW50
YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgZG91YmxlIGFscGhhLCBk
b3VibGUgYmV0YSwgZG91YmxlIGdhbW1hKTsKKworICAgIGRvdWJsZSBtX2FscGhhOworICAgIGRv
dWJsZSBtX2JldGE7CisgICAgZG91YmxlIG1fZ2FtbWE7Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCisKKyNlbmRpZiAvLyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50X2gKSW5kZXg6IFdlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzcg
QEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxMCwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVj
dAorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKK21vZHVsZSBjb3JlIHsKKworICAgIGludGVyZmFjZSBbCisgICAgICAgIENvbmRp
dGlvbmFsPURFVklDRV9PUklFTlRBVElPTgorICAgIF0gRGV2aWNlT3JpZW50YXRpb25FdmVudCA6
IEV2ZW50IHsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGRvdWJsZSBhbHBoYTsKKyAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIGRvdWJsZSBiZXRhOworICAgICAgICByZWFkb25seSBhdHRy
aWJ1dGUgZG91YmxlIGdhbW1hOworICAgICAgICB2b2lkIGluaXREZXZpY2VPcmllbnRhdGlvbkV2
ZW50KGluIERPTVN0cmluZyB0eXBlQXJnLCBpbiBib29sZWFuIGNhbkJ1YmJsZUFyZywgaW4gYm9v
bGVhbiBjYW5jZWxhYmxlQXJnLCBpbiBkb3VibGUgYWxwaGEsIGluIGRvdWJsZSBiZXRhLCBpbiBk
b3VibGUgZ2FtbWEpOworICAgIH07CisKK30KSW5kZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9FdmVudC5jcHAJKHJldmlzaW9uIDU5NjAyKQorKysg
V2ViQ29yZS9kb20vRXZlbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMTIsNiArMjEyLDEzIEBA
IGJvb2wgRXZlbnQ6OmlzVG91Y2hFdmVudCgpIGNvbnN0CiB9CiAjZW5kaWYKIAorI2lmIEVOQUJM
RShERVZJQ0VfT1JJRU5UQVRJT04pCitib29sIEV2ZW50Ojppc0RldmljZU9yaWVudGF0aW9uRXZl
bnQoKSBjb25zdAoreworICAgIHJldHVybiBmYWxzZTsKK30KKyNlbmRpZgorCiBib29sIEV2ZW50
Ojpmcm9tVXNlckdlc3R1cmUoKQogewogICAgIGlmICghVXNlckdlc3R1cmVJbmRpY2F0b3I6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQpJbmRleDogV2ViQ29yZS9kb20vRXZlbnQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2RvbS9FdmVudC5oCShyZXZpc2lvbiA1OTYwMikKKysrIFdlYkNvcmUv
ZG9tL0V2ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTEzOSw2ICsxMzksOSBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICAgICAgdmlydHVhbCBib29s
IGlzVG91Y2hFdmVudCgpIGNvbnN0OwogI2VuZGlmCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRB
VElPTikKKyAgICAgICAgdmlydHVhbCBib29sIGlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpIGNv
bnN0OworI2VuZGlmCiAgICAgICAgIGJvb2wgZnJvbVVzZXJHZXN0dXJlKCk7CiAgICAgICAgIAog
ICAgICAgICBib29sIHByb3BhZ2F0aW9uU3RvcHBlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvcGFn
YXRpb25TdG9wcGVkIHx8IG1faW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOyB9CkluZGV4OiBX
ZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRXZlbnRO
YW1lcy5oCShyZXZpc2lvbiA1OTYwMikKKysrIFdlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAkod29y
a2luZyBjb3B5KQpAQCAtNDksNiArNDksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgbWFj
cm8oY29weSkgXAogICAgIG1hY3JvKGN1dCkgXAogICAgIG1hY3JvKGRibGNsaWNrKSBcCisgICAg
bWFjcm8oZGV2aWNlb3JpZW50YXRpb24pIFwKICAgICBtYWNybyhkaXNwbGF5KSBcCiAgICAgbWFj
cm8oZG93bmxvYWRpbmcpIFwKICAgICBtYWNybyhkcmFnKSBcCkluZGV4OiBXZWJDb3JlL3BhZ2Uv
RE9NV2luZG93LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCShyZXZp
c2lvbiA1OTYwMikKKysrIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkod29ya2luZyBjb3B5KQpA
QCAtMzI1LDYgKzMyNSwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIERFRklORV9B
VFRSSUJVVEVfRVZFTlRfTElTVEVORVIob3JpZW50YXRpb25jaGFuZ2UpOwogI2VuZGlmCiAKKyNp
ZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VW
RU5UX0xJU1RFTkVSKGRldmljZW9yaWVudGF0aW9uKTsKKyNlbmRpZgorCiAgICAgICAgIERFRklO
RV9NQVBQRURfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHdlYmtpdGFuaW1hdGlvbnN0YXJ0LCB3
ZWJraXRBbmltYXRpb25TdGFydCk7CiAgICAgICAgIERFRklORV9NQVBQRURfQVRUUklCVVRFX0VW
RU5UX0xJU1RFTkVSKHdlYmtpdGFuaW1hdGlvbml0ZXJhdGlvbiwgd2Via2l0QW5pbWF0aW9uSXRl
cmF0aW9uKTsKICAgICAgICAgREVGSU5FX01BUFBFRF9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIo
d2Via2l0YW5pbWF0aW9uZW5kLCB3ZWJraXRBbmltYXRpb25FbmQpOwpJbmRleDogV2ViQ29yZS9w
YWdlL0RPTVdpbmRvdy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5p
ZGwJKHJldmlzaW9uIDU5NjAyKQorKysgV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHdvcmtp
bmcgY29weSkKQEAgLTI5OSw2ICsyOTksOCBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAgYXR0
cmlidXRlIFtEb250RW51bSxDb25kaXRpb25hbD1UT1VDSF9FVkVOVFMsRW5hYmxlZEF0UnVudGlt
ZV0gRXZlbnRMaXN0ZW5lciBvbnRvdWNoZW5kOwogICAgICAgICBhdHRyaWJ1dGUgW0RvbnRFbnVt
LENvbmRpdGlvbmFsPVRPVUNIX0VWRU5UUyxFbmFibGVkQXRSdW50aW1lXSBFdmVudExpc3RlbmVy
IG9udG91Y2hjYW5jZWw7CiAKKyAgICAgICAgYXR0cmlidXRlIFtDb25kaXRpb25hbD1ERVZJQ0Vf
T1JJRU5UQVRJT05dIEV2ZW50TGlzdGVuZXIgb25kZXZpY2VvcmllbnRhdGlvbjsKKwogICAgICAg
ICAvLyBFdmVudFRhcmdldCBpbnRlcmZhY2UKICAgICAgICAgW0N1c3RvbV0gdm9pZCBhZGRFdmVu
dExpc3RlbmVyKGluIERPTVN0cmluZyB0eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbiBFdmVudExpc3RlbmVyIGxpc3RlbmVyLApJbmRleDogV2ViS2l0L21hYy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5
NjAyKQorKysgV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
NCBAQAorMjAxMC0wNS0xNyAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBi
aW5kaW5ncyBmb3IgRGV2aWNlT3JpZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MjEwCisKKyAgICAgICAgQWRkcyBFTkFCTEVfREVWSUNF
X09SSUVOVEFUSU9OIHRvIFhDb2RlIHByb2plY3QgZmlsZSwgYWx3YXlzIGRpc2FibGVkLgorCisg
ICAgICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTAt
MDUtMTQgIFN0ZXBoYW5pZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CiAKICAgICAgICAgUnVi
YmVyLXN0YW1wZWQgYnkgTWFyayBSb3dlLgpJbmRleDogV2ViS2l0L21hYy9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiA1OTYwMikKKysrIFdl
YktpdC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcg
Y29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAgRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTiA9
IEVOQUJMRQogRU5BQkxFX0RBVEFCQVNFID0gRU5BQkxFX0RBVEFCQVNFOwogRU5BQkxFX0RBVEFH
UklEID0gOwogRU5BQkxFX0RBVEFMSVNUID0gRU5BQkxFX0RBVEFMSVNUOworRU5BQkxFX0RFVklD
RV9PUklFTlRBVElPTiA9IDsKIEVOQUJMRV9ET01fU1RPUkFHRSA9IEVOQUJMRV9ET01fU1RPUkFH
RTsKIEVOQUJMRV9FVkVOVFNPVVJDRSA9IEVOQUJMRV9FVkVOVFNPVVJDRTsKIEVOQUJMRV9GSUxU
RVJTID0gRU5BQkxFX0ZJTFRFUlM7CkBAIC03OCw0ICs3OSw0IEBAIEVOQUJMRV9YSFRNTE1QID0g
OwogRU5BQkxFX1hQQVRIID0gRU5BQkxFX1hQQVRIOwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNM
VDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9S
RU5ERVJJTkcpICQoRU5BQkxFX0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAk
KEVOQUJMRV9EQVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RPTV9TVE9SQUdF
KSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRklMRV9S
RUFERVIpICQoRU5BQkxFX0ZJTEVfV1JJVEVSKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFC
TEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9KQVZB
U0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX05PVElGSUNBVElPTlMp
ICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUFJPR1JFU1NfVEFH
KSAkKEVOQUJMRV9SVUJZKSAkKEVOQUJMRV9TQU5EQk9YKSAkKEVOQUJMRV9TSEFSRURfV09SS0VS
UykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNf
SU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRT
KSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxF
X1ZJREVPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV01MKSAkKEVOQUJMRV9XT1JL
RVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVfWFNMVCk7CitG
RUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9DQU5WQVMpICQoRU5BQkxFXzNEX1JFTkRFUklO
RykgJChFTkFCTEVfQkxPQl9TTElDRSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5B
QkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxF
X0RBVEFHUklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9O
KSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJ
TFRFUlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikgJChFTkFC
TEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9E
QVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFUSE1MKSAk
KEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMp
ICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FOREJPWCkg
JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1B
VElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElO
R1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVO
QUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5B
QkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFCTEVfWFBB
VEgpICQoRU5BQkxFX1hTTFQpOwpJbmRleDogV2ViS2l0TGlicmFyaWVzL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXRMaWJyYXJpZXMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1OTYwMikKKysr
IFdlYktpdExpYnJhcmllcy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBA
QAorMjAxMC0wNS0xNyAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBiaW5k
aW5ncyBmb3IgRGV2aWNlT3JpZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM5MjEwCisKKyAgICAgICAgQWRkcyBFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OIHRvIFZpc3VhbFN0dWRpbyBwcm9qZWN0IGZpbGVzLCBhbHdheXMgZGlzYWJsZWQu
CisKKyAgICAgICAgKiB3aW4vdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy52c3Byb3BzOgor
ICAgICAgICAqIHdpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8udnNwcm9wczoK
KwogMjAxMC0wNC0wOSAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBNYWNpZWogU3RhY2hvd2lhay4KSW5kZXg6IFdlYktpdExpYnJhcmll
cy93aW4vdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy52c3Byb3BzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy52c3Byb3Bz
CShyZXZpc2lvbiA1OTYwMikKKysrIFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9G
ZWF0dXJlRGVmaW5lcy52c3Byb3BzCSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzksNyBAQAogCT4K
ICAgPFRvb2wKIAkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJUHJlcHJvY2Vzc29yRGVmaW5p
dGlvbnM9IiQoRU5BQkxFXzNEX0NBTlZBUyk7JChFTkFCTEVfM0RfUkVOREVSSU5HKTskKEVOQUJM
RV9CTE9CX1NMSUNFKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ0xJRU5U
X0JBU0VEX0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9EQVRBQkFTRSk7JChFTkFCTEVfREFUQUdSSUQp
OyQoRU5BQkxFX0RBVEFMSVNUKTskKEVOQUJMRV9ET01fU1RPUkFHRSk7JChFTkFCTEVfRVZFTlRT
T1VSQ0UpOyQoRU5BQkxFX0ZJTFRFUlMpOyQoRU5BQkxFX0ZJTEVfUkVBREVSKTskKEVOQUJMRV9G
SUxFX1dSSVRFUik7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0lDT05EQVRBQkFTRSk7
JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk7JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUik7
JChFTkFCTEVfTUFUSE1MKTskKEVOQUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9PRkZMSU5F
X1dFQl9BUFBMSUNBVElPTlMpOyQoRU5BQkxFX1JVQlkpOyQoRU5BQkxFX1NBTkRCT1gpOyQoRU5B
QkxFX1NIQVJFRF9XT1JLRVJTKTskKEVOQUJMRV9TVkcpOyQoRU5BQkxFX1NWR19BTklNQVRJT04p
OyQoRU5BQkxFX1NWR19BU19JTUFHRSk7JChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTsk
KEVOQUJMRV9TVkdfRk9OVFMpOyQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCk7JChFTkFCTEVf
U1ZHX1VTRSk7JChFTkFCTEVfVklERU8pOyQoRU5BQkxFX1dFQl9TT0NLRVRTKTskKEVOQUJMRV9X
TUwpOyQoRU5BQkxFX1dPUktFUlMpOyQoRU5BQkxFX1hIVE1MTVApOyQoRU5BQkxFX1hQQVRIKTsk
KEVOQUJMRV9YU0xUKSIKKwkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IiQoRU5BQkxFXzNEX0NB
TlZBUyk7JChFTkFCTEVfM0RfUkVOREVSSU5HKTskKEVOQUJMRV9CTE9CX1NMSUNFKTskKEVOQUJM
RV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKTsk
KEVOQUJMRV9EQVRBQkFTRSk7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5BQkxFX0RBVEFMSVNUKTsk
KEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pOyQoRU5BQkxFX0RPTV9TVE9SQUdFKTskKEVOQUJM
RV9FVkVOVFNPVVJDRSk7JChFTkFCTEVfRklMVEVSUyk7JChFTkFCTEVfRklMRV9SRUFERVIpOyQo
RU5BQkxFX0ZJTEVfV1JJVEVSKTskKEVOQUJMRV9HRU9MT0NBVElPTik7JChFTkFCTEVfSUNPTkRB
VEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9KQVZBU0NSSVBUX0RF
QlVHR0VSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX05PVElGSUNBVElPTlMpOyQoRU5BQkxF
X09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUyk7JChFTkFCTEVfUlVCWSk7JChFTkFCTEVfU0FOREJP
WCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX1NWRyk7JChFTkFCTEVfU1ZHX0FO
SU1BVElPTik7JChFTkFCTEVfU1ZHX0FTX0lNQUdFKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklO
RElOR1MpOyQoRU5BQkxFX1NWR19GT05UUyk7JChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKTsk
KEVOQUJMRV9TVkdfVVNFKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX1NPQ0tFVFMpOyQo
RU5BQkxFX1dNTCk7JChFTkFCTEVfV09SS0VSUyk7JChFTkFCTEVfWEhUTUxNUCk7JChFTkFCTEVf
WFBBVEgpOyQoRU5BQkxFX1hTTFQpIgogCS8+CiAgIDxVc2VyTWFjcm8KIAkJTmFtZT0iRU5BQkxF
XzNEX0NBTlZBUyIKQEAgLTUyLDYgKzUyLDExIEBACiAJCVBlcmZvcm1FbnZpcm9ubWVudFNldD0i
dHJ1ZSIKIAkvPgogICA8VXNlck1hY3JvCisJCU5hbWU9IkVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJ
T04iCisJCVZhbHVlPSIiCisJCVBlcmZvcm1FbnZpcm9ubWVudFNldD0idHJ1ZSIKKwkvPgorICA8
VXNlck1hY3JvCiAJCU5hbWU9IkVOQUJMRV9ET01fU1RPUkFHRSIKIAkJVmFsdWU9IkVOQUJMRV9E
T01fU1RPUkFHRSIKIAkJUGVyZm9ybUVudmlyb25tZW50U2V0PSJ0cnVlIgpJbmRleDogV2ViS2l0
TGlicmFyaWVzL3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8udnNwcm9wcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURl
ZmluZXNDYWlyby52c3Byb3BzCShyZXZpc2lvbiA1OTYwMikKKysrIFdlYktpdExpYnJhcmllcy93
aW4vdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0NhaXJvLnZzcHJvcHMJKHdvcmtpbmcgY29w
eSkKQEAgLTksNyArOSw3IEBACiAJPgogICA8VG9vbAogCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29s
IgotCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVOQUJM
RV8zRF9SRU5ERVJJTkcpOyQoRU5BQkxFX0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKTskKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RBVEFC
QVNFKTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RPTV9T
VE9SQUdFKTskKEVOQUJMRV9FVkVOVFNPVVJDRSk7JChFTkFCTEVfRklMVEVSUyk7JChFTkFCTEVf
RklMRV9SRUFERVIpOyQoRU5BQkxFX0ZJTEVfV1JJVEVSKTskKEVOQUJMRV9HRU9MT0NBVElPTik7
JChFTkFCTEVfSUNPTkRBVEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJM
RV9KQVZBU0NSSVBUX0RFQlVHR0VSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX05PVElGSUNB
VElPTlMpOyQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUyk7JChFTkFCTEVfU0hBUkVE
X1dPUktFUlMpOyQoRU5BQkxFX1NWRyk7JChFTkFCTEVfU1ZHX0FOSU1BVElPTik7JChFTkFCTEVf
U1ZHX0FTX0lNQUdFKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1NW
R19GT05UUyk7JChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKTskKEVOQUJMRV9TVkdfVVNFKTsk
KEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX1NPQ0tFVFMpOyQoRU5BQkxFX1dNTCk7JChFTkFC
TEVfV09SS0VSUyk7JChFTkFCTEVfWEhUTUxNUCk7JChFTkFCTEVfWFBBVEgpOyQoRU5BQkxFX1hT
TFQpIgorCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVO
QUJMRV8zRF9SRU5ERVJJTkcpOyQoRU5BQkxFX0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxf
TUVTU0FHSU5HKTskKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RB
VEFCQVNFKTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RF
VklDRV9PUklFTlRBVElPTik7JChFTkFCTEVfRE9NX1NUT1JBR0UpOyQoRU5BQkxFX0VWRU5UU09V
UkNFKTskKEVOQUJMRV9GSUxURVJTKTskKEVOQUJMRV9GSUxFX1JFQURFUik7JChFTkFCTEVfRklM
RV9XUklURVIpOyQoRU5BQkxFX0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9JQ09OREFUQUJBU0UpOyQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0UpOyQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpOyQo
RU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTk9USUZJQ0FUSU9OUyk7JChFTkFCTEVfT0ZGTElORV9X
RUJfQVBQTElDQVRJT05TKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfU1ZHKTsk
KEVOQUJMRV9TVkdfQU5JTUFUSU9OKTskKEVOQUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5BQkxFX1NW
R19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9TVkdfRk9S
RUlHTl9PQkpFQ1QpOyQoRU5BQkxFX1NWR19VU0UpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9X
RUJfU09DS0VUUyk7JChFTkFCTEVfV01MKTskKEVOQUJMRV9XT1JLRVJTKTskKEVOQUJMRV9YSFRN
TE1QKTskKEVOQUJMRV9YUEFUSCk7JChFTkFCTEVfWFNMVCkiCiAJLz4KICAgPFVzZXJNYWNybwog
CQlOYW1lPSJFTkFCTEVfM0RfQ0FOVkFTIgpAQCAtNTIsNiArNTIsMTEgQEAKIAkJUGVyZm9ybUVu
dmlyb25tZW50U2V0PSJ0cnVlIgogCS8+CiAgIDxVc2VyTWFjcm8KKwkJTmFtZT0iRU5BQkxFX0RF
VklDRV9PUklFTlRBVElPTiIKKwkJVmFsdWU9IiIKKwkJUGVyZm9ybUVudmlyb25tZW50U2V0PSJ0
cnVlIgorCS8+CisgIDxVc2VyTWFjcm8KIAkJTmFtZT0iRU5BQkxFX0RPTV9TVE9SQUdFIgogCQlW
YWx1ZT0iRU5BQkxFX0RPTV9TVE9SQUdFIgogCQlQZXJmb3JtRW52aXJvbm1lbnRTZXQ9InRydWUi
CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCShyZXZpc2lvbiA1OTYwMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBACisyMDEwLTA1LTE3ICBTdGV2ZSBCbG9jayAgPHN0
ZXZlYmxvY2tAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcm92aWRlIGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKworICAg
ICAgICBNb2RpZmllcyBleGlzdGluZyBmYXN0L2RvbS9XaW5kb3cgdGVzdHMgdG8gc2tpcCB3aW5k
b3cub25kZXZpY2VvcmllbnRhdGlvbiB1bnRpbAorICAgICAgICBpdCBpcyB3aWRlbHkgc3VwcG9y
dGVkLgorICAgICAgICBBZGRzIG5ldyBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
b24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwgdG8gdGVzdAorICAgICAgICB0eXBlIGFuZCBwcmVz
ZW5jZSBvZiB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbi4KKyAgICAgICAgQWRkcyBuZXcgZmFz
dC9kb20vRGV2aWNlT3JpZW50YXRpb24gZGlyZWN0b3J5IGFuZCBpbml0aWFsIHRlc3QuCisgICAg
ICAgIEFkZHMgYWxsIERldmljZU9yaWVudGF0aW9uIHRlc3RzIHRvIGFsbCBza2lwcGVkIGxpc3Rz
LgorCisgICAgICAgICogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb246IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0czogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10
ZXN0cy93aW5kb3ctcHJvcGVydHkuanM6IEFkZGVkLgorICAgICAgICAoaGFzT25EZXZpY2VPcmll
bnRhdGlvblByb3BlcnR5KToKKyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93
aW5kb3ctcHJvcGVydHktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9E
ZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHkuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMu
anM6CisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmlj
ZS1vcmllbnRhdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbDogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWw6CisgICAg
ICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgorICAgICAgICAq
IHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9Ta2lwcGVkOgor
ICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vd2luL1Nr
aXBwZWQ6CisKIDIwMTAtMDUtMTQgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTmF0ZSBDaGFwaW4uCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHktZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRv
dy1wcm9wZXJ0eS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHktZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACitUZXN0cyB0aGF0IHRoZSB3aW5kb3cub25kZXZpY2Vv
cmllbnRhdGlvbiBwcm9wZXJ0eSBpcyBwcmVzZW50LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworUEFTUyB0eXBlb2Ygd2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gPT0gJ29iamVj
dCcgaXMgdHJ1ZQorUEFTUyBoYXNPbkRldmljZU9yaWVudGF0aW9uUHJvcGVydHkoKSBpcyB0cnVl
CitQQVNTICdvbmRldmljZW9yaWVudGF0aW9uJyBpbiB3aW5kb3cgaXMgdHJ1ZQorUEFTUyB3aW5k
b3cuaGFzT3duUHJvcGVydHkoJ29uZGV2aWNlb3JpZW50YXRpb24nKSBpcyB0cnVlCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93
LXByb3BlcnR5Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZp
Y2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHkuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwxMiBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlw
dCBzcmM9InNjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHkuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRp
b24vc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3Jp
cHQtdGVzdHMvVEVNUExBVEUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMiBAQAorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9IllPVVJf
SlNfRklMRV9IRVJFIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ctcHJv
cGVydHkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50
YXRpb24vc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS5qcwkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ct
cHJvcGVydHkuanMJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTggQEAKK2Rlc2NyaXB0aW9uKCJU
ZXN0cyB0aGF0IHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiBwcm9wZXJ0eSBpcyBwcmVz
ZW50LiIpOworCitmdW5jdGlvbiBoYXNPbkRldmljZU9yaWVudGF0aW9uUHJvcGVydHkoKQorewor
ICAgIGZvciAodmFyIHByb3BlcnR5IGluIHdpbmRvdykgeworICAgICAgICBpZiAocHJvcGVydHkg
PT0gIm9uZGV2aWNlb3JpZW50YXRpb24iKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
fQorICAgIHJldHVybiBmYWxzZTsKK30KKworc2hvdWxkQmVUcnVlKCJ0eXBlb2Ygd2luZG93Lm9u
ZGV2aWNlb3JpZW50YXRpb24gPT0gJ29iamVjdCciKTsKK3Nob3VsZEJlVHJ1ZSgiaGFzT25EZXZp
Y2VPcmllbnRhdGlvblByb3BlcnR5KCkiKTsKK3Nob3VsZEJlVHJ1ZSgiJ29uZGV2aWNlb3JpZW50
YXRpb24nIGluIHdpbmRvdyIpOworc2hvdWxkQmVUcnVlKCJ3aW5kb3cuaGFzT3duUHJvcGVydHko
J29uZGV2aWNlb3JpZW50YXRpb24nKSIpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IGZhbHNl
Oword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1v
bi1kZXZpY2Utb3JpZW50YXRpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDQgQEAKK1RoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVh
Y2hhYmxlIGZyb20gdGhlIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uIG9iamVjdCwgYWxvbmcg
d2l0aCB0aGVpciB0eXBlcy4KKword2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gW251bGxdCisK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1k
ZXZpY2Utb3JpZW50YXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsOTQg
QEAKKzxwPlRoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVh
Y2hhYmxlIGZyb20gdGhlIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uCitvYmplY3QsIGFsb25n
IHdpdGggdGhlaXIgdHlwZXMuPC9wPgorPGhyPgorPHByZSBpZD0icHJlIj48L3ByZT4KKworPHNj
cmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgIAordmFyIGxvZ0J1ZmZlciA9IFtdOworZnVuY3Rp
b24gbG9nKHMpCit7CisgICAgbG9nQnVmZmVyLnB1c2gocyk7Cit9CisKK3ZhciBwcmUgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgncHJlJyk7CitmdW5jdGlvbiBmbHVzaExvZygpCit7CisgICAg
dmFyIGxvZ01lc3NhZ2UgPSBsb2dCdWZmZXIuam9pbigiIik7CisgICAgcHJlLmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGxvZ01lc3NhZ2UpKTsKK30KKworZnVuY3Rpb24gdHJ5
RXZhbChzdHJpbmcpCit7CisgICAgdHJ5IHsKKyAgICAgICAgcmV0dXJuIGV2YWwoc3RyaW5nKTsK
KyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIHJldHVybiBuZXcgU3RyaW5nKCJDYXVnaHQgZXhj
ZXB0aW9uOiAiICsgZSk7CisgICAgfQorfQorCitmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFs
dWUpCit7CisgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxs
KSAvLzsKKyAgICAgICAgcmV0dXJuICJudWxsIjsKKyAgICByZXR1cm4gdHlwZW9mIHZhbHVlOwor
fQorCitmdW5jdGlvbiB0eXBlU3RyaW5nTnVsbEF3YXJlKHZhbHVlKQoreworICAgIHZhciB2YWx1
ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworICAgIHJldHVybiB2YWx1ZVR5cGUgPT0g
Im9iamVjdCIKKyAgICAgICAgPyBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUp
CisgICAgICAgIDogIlsiICsgdmFsdWVUeXBlICsgIl0iOworfQorCitmdW5jdGlvbiBsb2dWYWx1
ZSh2YWx1ZU5hbWUpCit7CisgICAgdmFyIHZhbHVlID0gdHJ5RXZhbCh2YWx1ZU5hbWUpOworICAg
IHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworCisgICAgLy8gRG9uJ3Qg
dGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHZhcmlhYmxlcworICAgIGlmICh2YWx1ZSA9PSBs
b2dCdWZmZXIgfHwgdmFsdWUgPT0gcHJlKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBEb24n
dCB0YWludCB0aGUgdGVzdCB3aXRoIG91ciBvd24gcHJvcGVydGllcworICAgIGlmICgvX192aXNp
dGVkQnlMb2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkgfHwgL19fbmFtZVdoZW5WaXNpdGVkQnlM
b2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdv
cmsgYXJvdW5kIEZpcmVmb3ggaW5maW5pdGUgcmVjdXJzaW9uCisgICAgaWYgKC9cLlswLTldLy50
ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIEF2b2lkIGluZmluaXRl
IHJlY3Vyc2lvbgorICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNp
dGVkQnlMb2dWYWx1ZV9fKSB7IC8vOworICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRl
ZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxu
Iik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2codmFsdWVOYW1lICsgIiAiICsg
dHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKworICAgIGlmICh2YWx1ZVR5cGUg
PT0gIm9iamVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fID0gdHJ1
ZTsKKyAgICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB2YWx1ZU5h
bWU7CisgICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVlTmFtZSk7CisgICAgfQorfQor
CitmdW5jdGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0TmFtZSkKK3sKKyAgICB2YXIg
YXJyYXkgPSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KSB7Cisg
ICAgICAgIGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAgICBhcnJheS5zb3J0KCk7Cisg
ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgeworICAgICAgICB2YXIg
cHJvcGVydHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUob2JqZWN0TmFtZSArICIuIiAr
IHByb3BlcnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5kb3cub25kZXZpY2VvcmllbnRh
dGlvbicpOworZmx1c2hMb2coKTsKKzwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwJKHJldmlzaW9uIDU5NjAy
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDggQEAgdmFyIF9fc2tpcF9fID0gewogICAgICJ3
aW5kb3cuY2xpZW50SW5mb3JtYXRpb24uZ2VvbG9jYXRpb24iIDogMSwKICAgICAid2luZG93LkJs
b2IucHJvdG90eXBlLnNsaWNlIiA6IDEsCiAgICAgIndpbmRvdy5GaWxlRXJyb3IiIDogMSwKLSAg
ICAid2luZG93LkZpbGVSZWFkZXIiIDogMQorICAgICJ3aW5kb3cuRmlsZVJlYWRlciIgOiAxLAor
ICAgICJ3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiIgOiAxCiB9OwogCiBmdW5jdGlvbiBsb2dW
YWx1ZSh2YWx1ZU5hbWUpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0
LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNj
cmlwdG9ycy5qcwkocmV2aXNpb24gNTk2MDIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5k
b3cvc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcwkod29ya2luZyBj
b3B5KQpAQCAtMzcsNiArMzcsNyBAQCB2YXIgX19za2lwX18gPSB7CiAgICAgIkZsb2F0QXJyYXki
IDogMSwKICAgICAiRmlsZUVycm9yIiA6IDEsCiAgICAgIkZpbGVSZWFkZXIiIDogMSwKKyAgICAi
b25kZXZpY2VvcmllbnRhdGlvbiIgOiAxLAogICAgIC8vIElnbm9yZSB0aGlzIHByb3BlcnR5IGJl
Y2F1c2UgaXQgb25seSBhcHBlYXJzIGluIGRlYnVnIGJ1aWxkcyBhbmQgbm90IGluIHJlbGVhc2Uu
CiAgICAgImpzY3ByaW50IiA6IDEKIH07CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJv
bWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CShyZXZpc2lvbiA1OTYwMikKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMjgzOCwzICsyODM4LDcgQEAgQlVHV0szOTEwNSBXSU4gTElOVVggOiBl
ZGl0aW5nL3NwZWxsaW5nLwogCiAvLyBGbGFreSB0ZXN0cwogQlVHNDQyMjkgV0lOIExJTlVYIDog
ZmFzdC9sb2FkZXIvcmVjdXJzaXZlLWJlZm9yZS11bmxvYWQtY3Jhc2guaHRtbCA9IFBBU1MgVEVY
VAorCisvLyBEZXZpY2VPcmllbnRhdGlvbiBBUEkgbm90IHlldCBpbXBsZW1lbnRlZC4KK0RFRkVS
IFNLSVAgOiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbiA9IFRFWFQKK0RFRkVSIFNLSVAgOiBm
YXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0
bWwgPSBURVhUCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkocmV2aXNpb24gNTk2MDIp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAt
MTE3OSw2ICsxMTc5LDcgQEAgZmFzdC9kb20vY2xpZW50LXdpZHRoLWhlaWdodC1xdWlya3MuaHRt
bAogZmFzdC9kb20vY2xpZW50LXdpZHRoLWhlaWdodC5odG1sCiBmYXN0L2RvbS9jc3NUYXJnZXQt
Y3Jhc2guaHRtbAogZmFzdC9kb20vZnJhbWUtbG9hZGluZy12aWEtZG9jdW1lbnQtd3JpdGUuaHRt
bAorZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwKIGZhc3Qv
ZG9tL0dlb2xvY2F0aW9uL2NhbGxiYWNrLWV4Y2VwdGlvbi5odG1sCiBmYXN0L2RvbS9HZW9sb2Nh
dGlvbi9lcnJvci5odG1sCiBmYXN0L2RvbS9HZW9sb2NhdGlvbi9wZXJtaXNzaW9uLWRlbmllZC1h
bHJlYWR5LWNsZWFyLXdhdGNoLmh0bWwKQEAgLTEyMDQsNiArMTIwNSw3IEBAIGZhc3QvZG9tL1Nl
bGVjdG9yQVBJL3Jlc2lnLVNlbGVjdG9yc0FQSS0KIGZhc3QvZG9tL1dpbmRvdy9uZXctd2luZG93
LW9wZW5lci5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2Via2l0Q29udmVydFBvaW50Lmh0bWwKIGZh
c3QvZG9tL1dpbmRvdy93aW5kb3ctb25Gb2N1cy5odG1sCitmYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwKIGZhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcmVzaXplLWFuZC1tb3ZlLWFyZ3VtZW50cy5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXJlc2l6ZS5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXh5LXByb3BlcnRpZXMuaHRt
bApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHJldmlzaW9uIDU5NjAyKQorKysgTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTE4OCwzICsx
ODgsNyBAQCBzY3JvbGxiYXJzL3Njcm9sbGJhci1jbGljay1kb2VzLW5vdC1ibHVyCiAKICMgSW5k
ZXhlZERCIGlzIG5vdCB5ZXQgZW5hYmxlZC4KIHN0b3JhZ2UvaW5kZXhlZGRiCisKKyMgVGhpcyBw
b3J0IGRvZXNuJ3Qgc3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbi4KK2Zhc3QvZG9tL0RldmljZU9y
aWVudGF0aW9uCitmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9y
aWVudGF0aW9uLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2aXNpb24gNTk2
MDIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBA
IC01MDk3LDMgKzUwOTcsNyBAQCBlZGl0aW5nL3NwZWxsaW5nL2NvbnRleHQtbWVudS1zdWdnZXN0
aW9uCiAKICMgSW5kZXhlZERCIGlzIG5vdCB5ZXQgZW5hYmxlZC4KIHN0b3JhZ2UvaW5kZXhlZGRi
CisKKyMgVGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbi4KK2Zhc3Qv
ZG9tL0RldmljZU9yaWVudGF0aW9uCitmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
b24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3dp
bi9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVk
CShyZXZpc2lvbiA1OTYwMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCSh3
b3JraW5nIGNvcHkpCkBAIC04ODMsMyArODgzLDcgQEAgZWRpdGluZy9zcGVsbGluZy9jb250ZXh0
LW1lbnUtc3VnZ2VzdGlvbgogCiAjIEluZGV4ZWREQiBpcyBub3QgeWV0IGVuYWJsZWQuCiBzdG9y
YWdlL2luZGV4ZWRkYgorCisjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgRGV2aWNlT3JpZW50
YXRpb24uCitmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbgorZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56480</attachid>
            <date>2010-05-19 04:30:01 -0700</date>
            <delta_ts>2010-05-19 08:30:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39210-20100519122958.patch</filename>
            <type>text/plain</type>
            <size>52436</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NzU4KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIx
MAorCisgICAgICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9q
ZWN0IGZpbGUsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDEwLTA1LTE4ICBHYXZpbiBCYXJyYWNsb3VnaCAg
PGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZiBHYXJl
bi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiA1OTc1OCkKKysrIEphdmFTY3JpcHRDb3JlL0Nv
bmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC00
Nyw2ICs0Nyw3IEBAIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04gPSBFTkFCTEUKIEVO
QUJMRV9EQVRBQkFTRSA9IEVOQUJMRV9EQVRBQkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IDsKIEVO
QUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElTVDsKK0VOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJ
T04gPSA7CiBFTkFCTEVfRE9NX1NUT1JBR0UgPSBFTkFCTEVfRE9NX1NUT1JBR0U7CiBFTkFCTEVf
RVZFTlRTT1VSQ0UgPSBFTkFCTEVfRVZFTlRTT1VSQ0U7CiBFTkFCTEVfRklMVEVSUyA9IEVOQUJM
RV9GSUxURVJTOwpAQCAtNzgsNCArNzksNCBAQCBFTkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJMRV9Y
UEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRV
UkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAk
KEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVf
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFU
QUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVf
RVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVO
QUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRB
QkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJV
R0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9P
RkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVf
UlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxF
X1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVO
QUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVf
U1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChF
TkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFC
TEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJ
TkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxF
X0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkg
JChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVf
RE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVO
QUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FU
SU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9Q
Uk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NI
QVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5B
QkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJM
RV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VT
RSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQo
RU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJM
RV9YU0xUKTsKSW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJsb2NrICA8c3RldmVi
bG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9uCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAorCisgICAgICAg
IFRlc3RzOiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHkuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmlj
ZS1vcmllbnRhdGlvbi5odG1sCisKKyAgICAgICAgQWRkcyBiaW5kaW5ncyBmb3IgRGV2aWNlT3Jp
ZW50YXRpb24gYXMgZGVmaW5lZCBpbgorICAgICAgICBodHRwOi8vZGV2LnczLm9yZy9nZW8vYXBp
L3NwZWMtc291cmNlLW9yaWVudGF0aW9uLmh0bWwKKyAgICAgICAgVGhpcyBpcyBndWFyZGVkIGJ5
IEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pIHdoaWNoIGlzIGN1cnJlbnRseSBkaXNhYmxlZCBv
bgorICAgICAgICBhbGwgcGxhdGZvcm1zIGJ1dCBBbmRyb2lkLgorCisgICAgICAgICogQW5kcm9p
ZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgorICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC52OGJp
bmRpbmdzLm1rOgorICAgICAgICAqIEFuZHJvaWQubWs6CisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3Bw
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR05VbWFrZWZpbGUu
YW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUucHJvOgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAg
ICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OnRvVjgpOgorICAgICAgICAqIGNvbmZpZy5oOgorICAgICAgICAqIGRvbS9EZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmll
bnRhdGlvbkV2ZW50OjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAg
ICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOiBBZGRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjphbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50OjpiZXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVu
dGF0aW9uRXZlbnQ6OmdhbW1hKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RXZlbnQ6OmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAgICogZG9tL0RldmljZU9y
aWVudGF0aW9uRXZlbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RXZlbnQ6OmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAg
ICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50TmFtZXMuaDoKKyAgICAgICAgKiBw
YWdlL0RPTVdpbmRvdy5oOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoKKwogMjAxMC0w
NS0xOSAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgTmF0ZSBDaGFwaW4uCkluZGV4OiBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2Ni
aW5kaW5ncy5tawo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5k
aW5ncy5tawkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2Ni
aW5kaW5ncy5tawkod29ya2luZyBjb3B5KQpAQCAtNDksNyArNDksNyBAQCBqc19iaW5kaW5nX3Nj
cmlwdHMgOj0gJChhZGRwcmVmaXggJChMT0NBCiAJCQliaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRl
LWJpbmRpbmdzLnBsIFwKIAkJKQogCi1GRUFUVVJFX0RFRklORVMgOj0gQU5EUk9JRF9PUklFTlRB
VElPTl9TVVBQT1JUIEVOQUJMRV9UT1VDSF9FVkVOVFM9MSBFTkFCTEVfREFUQUJBU0U9MSBFTkFC
TEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TPTEgRU5BQkxFX0RPTV9TVE9SQUdFPTEgRU5BQkxF
X1ZJREVPPTEgRU5BQkxFX1dPUktFUlM9MSBFTkFCTEVfR0VPTE9DQVRJT049MSBFTkFCTEVfQ0hB
Tk5FTF9NRVNTQUdJTkc9MQorRkVBVFVSRV9ERUZJTkVTIDo9IEFORFJPSURfT1JJRU5UQVRJT05f
U1VQUE9SVCBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgRU5BQkxFX0RBVEFCQVNFPTEgRU5BQkxFX09G
RkxJTkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFHRT0xIEVOQUJMRV9WSURF
Tz0xIEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEgRU5BQkxFX0NIQU5ORUxf
TUVTU0FHSU5HPTEgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTj0xCiAKICMgQ1NTCiBHRU4gOj0g
XApAQCAtMTAzLDYgKzEwMyw3IEBAIEdFTiA6PSBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9kb20v
SlNDb21tZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRE9NQ29yZUV4Y2VwdGlv
bi5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RPTUltcGxlbWVudGF0aW9uLmggXAor
ICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKICAg
ICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RvY3VtZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRl
cykvZG9tL0pTRG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9K
U0RvY3VtZW50VHlwZS5oIFwKSW5kZXg6IFdlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLnY4YmluZGlu
Z3MubWsKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9BbmRyb2lkLmRlcml2ZWQudjhiaW5kaW5ncy5t
awkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC52OGJpbmRpbmdz
Lm1rCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw4IEBAIGpzX2JpbmRpbmdfc2NyaXB0cyA6
PSBcCiAJJChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL0lETFN0cnVjdHVyZS5wbSBcCiAJ
JChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBsCiAKLUZF
QVRVUkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFUSU9OX1NVUFBPUlQgRU5BQkxFX1RPVUNI
X0VWRU5UUz0xIFY4X0JJTkRJTkcgRU5BQkxFX0RBVEFCQVNFPTEgRU5BQkxFX09GRkxJTkVfV0VC
X0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFHRT0xIEVOQUJMRV9WSURFTz0xIEVOQUJM
RV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEKK0ZFQVRVUkVfREVGSU5FUyA6PSBBTkRS
T0lEX09SSUVOVEFUSU9OX1NVUFBPUlQgRU5BQkxFX1RPVUNIX0VWRU5UUz0xIEVOQUJMRV9EQVRB
QkFTRT0xIEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlM9MSBFTkFCTEVfRE9NX1NUT1JB
R0U9MSBFTkFCTEVfVklERU89MSBFTkFCTEVfV09SS0VSUz0xIEVOQUJMRV9HRU9MT0NBVElPTj0x
IEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT049MQorRkVBVFVSRV9ERUZJTkVTICs9IFY4X0JJTkRJ
TkcKIAogIyBDU1MKIEdFTiA6PSBcCkBAIC04NCw2ICs4NSw3IEBAIEdFTiA6PSBcCiAgICAgJChp
bnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOENvbW1lbnQuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVz
KS9iaW5kaW5ncy9WOERPTUNvcmVFeGNlcHRpb24uaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9i
aW5kaW5ncy9WOERPTUltcGxlbWVudGF0aW9uLmggXAorICAgICQoaW50ZXJtZWRpYXRlcykvYmlu
ZGluZ3MvVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykv
YmluZGluZ3MvVjhEb2N1bWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4
RG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RG9j
dW1lbnRUeXBlLmggXApJbmRleDogV2ViQ29yZS9BbmRyb2lkLm1rCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvQW5kcm9pZC5tawkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL0FuZHJvaWQubWsJ
KHdvcmtpbmcgY29weSkKQEAgLTE0NSw2ICsxNDUsNyBAQCBMT0NBTF9TUkNfRklMRVMgOj0gJChM
T0NBTF9TUkNfRklMRVMpIFwKIAlkb20vTm90YXRpb24uY3BwIFwKIAlkb20vT3B0aW9uRWxlbWVu
dC5jcHAgXAogCWRvbS9PcHRpb25Hcm91cEVsZW1lbnQuY3BwIFwKKwlkb20vRGV2aWNlT3JpZW50
YXRpb25FdmVudC5jcHAgXAogCWRvbS9PdmVyZmxvd0V2ZW50LmNwcCBcCiAJZG9tL1BhZ2VUcmFu
c2l0aW9uRXZlbnQuY3BwIFwKIAlkb20vUG9zaXRpb24uY3BwIFwKSW5kZXg6IFdlYkNvcmUvRGVy
aXZlZFNvdXJjZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3Bw
CShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC02OSw2ICs2OSw3IEBACiAjaW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbi5jcHAi
CiAjaW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbkxpc3QuY3BwIgogI2luY2x1ZGUgIkpTRGVkaWNh
dGVkV29ya2VyQ29udGV4dC5jcHAiCisjaW5jbHVkZSAiSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50
LmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50LmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50RnJh
Z21lbnQuY3BwIgogI2luY2x1ZGUgIkpTRG9jdW1lbnRUeXBlLmNwcCIKSW5kZXg6IFdlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3
b3JraW5nIGNvcHkpCkBAIC0xMTcsNiArMTE3LDcgQEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgRGF0
YWJhc2UgXAogICAgIERhdGFiYXNlQ2FsbGJhY2sgXAogICAgIERhdGFiYXNlU3luYyBcCisgICAg
RGV2aWNlT3JpZW50YXRpb25FdmVudCBcCiAgICAgRG9jdW1lbnQgXAogICAgIERvY3VtZW50RnJh
Z21lbnQgXAogICAgIERvY3VtZW50VHlwZSBcCkluZGV4OiBXZWJDb3JlL0dOVW1ha2VmaWxlLmFt
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvR05VbWFrZWZpbGUuYW0JKHJldmlzaW9uIDU5NzU4KQor
KysgV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkod29ya2luZyBjb3B5KQpAQCAtMTM4LDYgKzEzOCw3
IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViY29yZS9kb20vQ3VzdG9tRXZlbnQuaWRsIFwKIAlX
ZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbCBcCiAJV2ViQ29yZS9kb20vRE9NSW1wbGVt
ZW50YXRpb24uaWRsIFwKKwlXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCBc
CiAJV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdt
ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnRUeXBlLmlkbCBcCkBAIC03NjUsNiArNzY2
LDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9u
LmggXAogCVdlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcCBcCiAJV2ViQ29yZS9kb20v
RE9NSW1wbGVtZW50YXRpb24uaCBcCisJV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5jcHAgXAorCVdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCiAJV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVudC5oIFwKIAlXZWJDb3Jl
L2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUuZ3lwaQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUuZ3lwaQkocmV2aXNpb24gNTk3NTgpCisrKyBX
ZWJDb3JlL1dlYkNvcmUuZ3lwaQkod29ya2luZyBjb3B5KQpAQCAtNDAsNiArNDAsNyBAQAogICAg
ICAgICAgICAgJ2RvbS9DdXN0b21FdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9ET01Db3Jl
RXhjZXB0aW9uLmlkbCcsCiAgICAgICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmlkbCcs
CisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsJywKICAgICAgICAg
ICAgICdkb20vRG9jdW1lbnQuaWRsJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnRGcmFnbWVu
dC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudFR5cGUuaWRsJywKQEAgLTEwOTksNiAr
MTEwMCw4IEBACiAgICAgICAgICAgICAnZG9tL0RPTUNvcmVFeGNlcHRpb24uaCcsCiAgICAgICAg
ICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RPTUlt
cGxlbWVudGF0aW9uLmgnLAorICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50
LmNwcCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCcsCiAgICAg
ICAgICAgICAnZG9tL0RvY3VtZW50LmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50Lmgn
LAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCcsCkluZGV4OiBXZWJDb3Jl
L1dlYkNvcmUucHJvCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS5wcm8JKHJldmlzaW9u
IDU5NzU4KQorKysgV2ViQ29yZS9XZWJDb3JlLnBybwkod29ya2luZyBjb3B5KQpAQCAtNDYyLDYg
KzQ2Miw3IEBAIFNPVVJDRVMgKz0gXAogICAgIGRvbS9Db250YWluZXJOb2RlLmNwcCBcCiAgICAg
ZG9tL0NTU01hcHBlZEF0dHJpYnV0ZURlY2xhcmF0aW9uLmNwcCBcCiAgICAgZG9tL0N1c3RvbUV2
ZW50LmNwcCBcCisgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKICAgICBkb20v
RG9jdW1lbnQuY3BwIFwKICAgICBkb20vRG9jdW1lbnRGcmFnbWVudC5jcHAgXAogICAgIGRvbS9E
b2N1bWVudFR5cGUuY3BwIFwKQEAgLTExODcsNiArMTE4OCw3IEBAIEhFQURFUlMgKz0gXAogICAg
IGRvbS9DU1NNYXBwZWRBdHRyaWJ1dGVEZWNsYXJhdGlvbi5oIFwKICAgICBkb20vQ3VzdG9tRXZl
bnQuaCBcCiAgICAgZG9tL2RlZmF1bHQvUGxhdGZvcm1NZXNzYWdlUG9ydENoYW5uZWwuaCBcCisg
ICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50RnJhZ21l
bnQuaCBcCiAgICAgZG9tL0RvY3VtZW50LmggXAogICAgIGRvbS9Eb2N1bWVudFR5cGUuaCBcCklu
ZGV4OiBXZWJDb3JlL2NvbmZpZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvY29uZmlnLmgJKHJl
dmlzaW9uIDU5NzU4KQorKysgV2ViQ29yZS9jb25maWcuaAkod29ya2luZyBjb3B5KQpAQCAtMTA2
LDYgKzEwNiw3IEBACiAjdW5kZWYgRU5BQkxFX0lOU1BFQ1RPUiAgLy8gRW5hYmxlZCBieSBkZWZh
dWx0IGluIFBsYXRmb3JtLmgKICNkZWZpbmUgRU5BQkxFX0lOU1BFQ1RPUiAwCiAjZGVmaW5lIEVO
QUJMRV9FVkVOVF9TT1VSQ0UgMAorI2RlZmluZSBFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIDEK
ICNlbmRpZiAvKiBQTEFURk9STShBTkRST0lEKSAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKSW5k
ZXg6IFdlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwko
cmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVz
LnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC00Nyw2ICs0Nyw3IEBAIEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04gPSBFTkFCTEUKIEVOQUJMRV9EQVRBQkFTRSA9IEVOQUJMRV9EQVRB
QkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IDsKIEVOQUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRB
TElTVDsKK0VOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfRE9NX1NUT1JBR0Ug
PSBFTkFCTEVfRE9NX1NUT1JBR0U7CiBFTkFCTEVfRVZFTlRTT1VSQ0UgPSBFTkFCTEVfRVZFTlRT
T1VSQ0U7CiBFTkFCTEVfRklMVEVSUyA9IEVOQUJMRV9GSUxURVJTOwpAQCAtNzgsNCArNzksNCBA
QCBFTkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJMRV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJM
RV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NB
TlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJM
RV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAk
KEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAk
KEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRF
UlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVf
R0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVO
QUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQo
RU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChF
TkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElP
TikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1Mp
ICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJM
RV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxF
X1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgp
ICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAk
KEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5O
RUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxF
X0RBVEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxF
X0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5U
U09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVf
RklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0Up
ICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIp
ICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElO
RV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkp
ICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcp
ICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVf
U1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19G
T1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxF
X1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hI
VE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFdlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0x
MTY3LDYgKzExNjcsMTAgQEAKIAkJNTk2MjI5NzgxMTMzRUZENzAwREM0Q0JCIC8qIEdlb2xvY2F0
aW9uUG9zaXRpb25DYWNoZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1OTYyMjk3NzExMzNFRkQ3MDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlv
bkNhY2hlLmNwcCAqLzsgfTsKIAkJNTk2MjI5N0ExMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xvY2F0
aW9uUG9zaXRpb25DYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTk2MjI5NzkxMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25D
YWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTU5OUU3NTkwMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBC
cmlkZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk1OUE4NUVBMjExOUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMTEx
OUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi87IH07CisJCTU5
QTg1RUE0MTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMzExOUQ2OEVD
MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovOyB9OworCQk1OUE4NjAwNjEx
OURBRjdGMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTg2MDA1MTE5REFGN0YwMERF
RjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovOyB9OworCQk1OUE4NjAwODEx
OURBRkExMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NjAwNzExOURBRkExMDBERUYx
RUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi87IH07CiAJCTU5QTlFN0IwMTEwNDc1
ODgwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlBOUU3QUYxMTA0NzU4ODAwREZCNEMxIC8qIEphdmFJ
bnN0YW5jZUpTQy5jcHAgKi87IH07CiAJCTU5QTlFN0IyMTEwNDc1OTQwMERGQjRDMSAvKiBKYXZh
SW5zdGFuY2VKU0MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDU5QTlFN0IxMTEwNDc1OTQwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuaCAqLzsgfTsK
IAkJNTlCNTk3NzMxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUI1OTc3MjExMDg2NTZCMDA3MTU5
RTggLyogQnJpZGdlSlNDLmNwcCAqLzsgfTsKQEAgLTY3NzAsNiArNjc3NCwxMSBAQAogCQk1OTYy
Mjk3NzExMzNFRkQ3MDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdlb2xvY2F0aW9uUG9zaXRpb25DYWNo
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5NjIyOTc5MTEzM0VGRTIwMERD
NENCQiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQnJpZGdlLmg7IHBhdGggPSBicmlkZ2UvQnJpZGdl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUExMTE5RDY4RDkwMERFRjFF
RiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRp
b25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUFBMTE5RDdC
NkUwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTlBODYwMDUxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25F
dmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RldmljZU9y
aWVudGF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUE4NjAw
NzExOURBRkExMDBERUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OUE5RTdBRjExMDQ3NTg4MDBERkI0QzEgLyogSmF2
YUluc3RhbmNlSlNDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEph
dmFJbnN0YW5jZUpTQy5jcHA7IHBhdGggPSBqc2MvSmF2YUluc3RhbmNlSlNDLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlBOUU3QjExMTA0NzU5NDAwREZCNEMxIC8qIEphdmFJ
bnN0YW5jZUpTQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKYXZhSW5zdGFu
Y2VKU0MuaDsgcGF0aCA9IGpzYy9KYXZhSW5zdGFuY2VKU0MuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTlCNTk3NzIxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBCcmlkZ2VKU0MuY3BwOyBwYXRoID0g
YnJpZGdlL2pzYy9CcmlkZ2VKU0MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MTQyMTQsNiArMTQyMjMsOCBAQAogCQlBODNCNzkxMDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAq
LyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNTlBODYwMDcx
MTlEQUZBMTAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovLAorCQkJCTU5
QTg2MDA1MTE5REFGN0YwMERFRjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICov
LAogCQkJCTY1REYzMUQ4MDlEMUMxMjIwMDBCRTMyNSAvKiBKU0F0dHIuY3BwICovLAogCQkJCTY1
REYzMUQ5MDlEMUMxMjMwMDBCRTMyNSAvKiBKU0F0dHIuaCAqLywKIAkJCQk5M0Y5Qjc5RTBCQTYw
MzI2MDA4NTQwNjQgLyogSlNDREFUQVNlY3Rpb24uY3BwICovLApAQCAtMTY0MDgsNiArMTY0MTks
OSBAQAogCQlGNTIzRDMyNDAyREU0NDc4MDE4NjM1Q0EgLyogZG9tICovID0gewogCQkJaXNhID0g
UEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYg
LyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwgKi8sCisJCQkJNTlBODVFQTMxMTlENjhFQzAw
REVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKKwkJCQk1OUE4NUVBMTExOUQ2
OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8sCiAJCQkJRTFDNERF
NkQwRUE3NUM2NTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5jcHAgKi8sCiAJCQkJRTFDNERF
NjgwRUE3NUMxRTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5oICovLAogCQkJCUE4QzRBN0ZD
MDlENTYzMjcwMDAzQUM4RCAvKiBBdHRyLmNwcCAqLywKQEAgLTE5MjY5LDYgKzE5MjgzLDggQEAK
IAkJCQk5N0U4QjNDMzExQTI4OTA4MDAxNjk0MDkgLyogSFRNTDVUb2tlbi5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTg3MTAzOEIxMUEyOTQ3MDAwREJENTBFIC8qIEhUTUw1VG9rZW5pemVyLmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MTMyN0Q2MDExQTMzQTJCMDA0RjlENjUgLyogU2lua0RvY3VtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1OUE4NUVBNDExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNl
T3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTlBODYwMDgxMTlEQUZBMTAw
REVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkp
OwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC0y
MTU1MSw2ICsyMTU2Nyw4IEBACiAJCQkJOTdFOEIzNTYxMUEyM0NFMjAwMTY5NDA5IC8qIEhUTUw1
TGV4ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTg3MTAzOEExMUEyOTQ3MDAwREJENTBFIC8q
IEhUTUw1VG9rZW5pemVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxMzI3RDYxMTFBMzNBMkIw
MDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTlBODVFQTIx
MTlENjhEOTAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMg
Ki8sCisJCQkJNTlBODYwMDYxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25F
dmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBv
c3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVu
dEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3Vz
dG9tLmNwcAkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRD
dXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiwxMSArMzIsMTMgQEAKICNpbmNsdWRlICJD
bGlwYm9hcmQuaCIKICNpbmNsdWRlICJDb21wb3NpdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiQ3Vz
dG9tRXZlbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVk
ZSAiRXZlbnQuaCIKICNpbmNsdWRlICJKU0JlZm9yZUxvYWRFdmVudC5oIgogI2luY2x1ZGUgIkpT
Q2xpcGJvYXJkLmgiCiAjaW5jbHVkZSAiSlNDdXN0b21FdmVudC5oIgogI2luY2x1ZGUgIkpTQ29t
cG9zaXRpb25FdmVudC5oIgorI2luY2x1ZGUgIkpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgog
I2luY2x1ZGUgIkpTRXJyb3JFdmVudC5oIgogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQog
I2luY2x1ZGUgIkpTSURCRXJyb3JFdmVudC5oIgpAQCAtMTcxLDYgKzE3MywxMCBAQCBKU1ZhbHVl
IHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhCiAgICAgICAgIHdyYXBwZXIgPSBDUkVB
VEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgUG9wU3RhdGVFdmVudCwg
ZXZlbnQpOwogICAgIGVsc2UgaWYgKGV2ZW50LT5pc0N1c3RvbUV2ZW50KCkpCiAgICAgICAgIHdy
YXBwZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgQ3Vz
dG9tRXZlbnQsIGV2ZW50KTsKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgIGVs
c2UgaWYgKGV2ZW50LT5pc0RldmljZU9yaWVudGF0aW9uRXZlbnQoKSkKKyAgICAgICAgd3JhcHBl
ciA9IENSRUFURV9ET01fT0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LCBldmVudCk7CisjZW5kaWYKICAgICBlbHNlCiAgICAgICAgIHdyYXBw
ZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgRXZlbnQs
IGV2ZW50KTsKIApJbmRleDogV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3Rv
bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1
c3RvbS5jcHAJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhFdmVudEN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDcgQEAKICNpbmNs
dWRlICJWOENsaXBib2FyZC5oIgogI2luY2x1ZGUgIlY4Q29tcG9zaXRpb25FdmVudC5oIgogI2lu
Y2x1ZGUgIlY4Q3VzdG9tRXZlbnQuaCIKKyNpbmNsdWRlICJWOERldmljZU9yaWVudGF0aW9uRXZl
bnQuaCIKICNpbmNsdWRlICJWOEVycm9yRXZlbnQuaCIKICNpbmNsdWRlICJWOElEQkVycm9yRXZl
bnQuaCIKICNpbmNsdWRlICJWOElEQlN1Y2Nlc3NFdmVudC5oIgpAQCAtMTUzLDYgKzE1NCwxMCBA
QCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOChFdmVudCogaW1wbCkKICNlbmRpZgogICAgIGlm
IChpbXBsLT5pc0JlZm9yZUxvYWRFdmVudCgpKQogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNf
Y2FzdDxCZWZvcmVMb2FkRXZlbnQqPihpbXBsKSk7CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRB
VElPTikKKyAgICBpZiAoaW1wbC0+aXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkpCisgICAgICAg
IHJldHVybiB0b1Y4KHN0YXRpY19jYXN0PERldmljZU9yaWVudGF0aW9uRXZlbnQqPihpbXBsKSk7
CisjZW5kaWYKICAgICBpZiAoaW1wbC0+aXNDdXN0b21FdmVudCgpKQogICAgICAgICByZXR1cm4g
dG9WOChzdGF0aWNfY2FzdDxDdXN0b21FdmVudCo+KGltcGwpKTsKICAgICByZXR1cm4gVjhFdmVu
dDo6d3JhcChpbXBsKTsKSW5kZXg6IFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3Bw
CShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxMCwgVGhl
IEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
CisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCisKKyNpZiBFTkFCTEUoREVWSUNF
X09SSUVOVEFUSU9OKQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0RldmljZU9yaWVudGF0aW9u
RXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQoKQorICAgIDogbV9hbHBoYSgwKQorICAgICwg
bV9iZXRhKDApCisgICAgLCBtX2dhbW1hKDApCit7Cit9CisKK0RldmljZU9yaWVudGF0aW9uRXZl
bnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUs
IGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSkKKyAgICA6IEV2ZW50KGV2
ZW50VHlwZSwgZmFsc2UsIGZhbHNlKSAvLyBDYW4ndCBidWJibGUsIG5vdCBjYW5jZWxhYmxlCisg
ICAgLCBtX2FscGhhKGFscGhhKQorICAgICwgbV9iZXRhKGJldGEpCisgICAgLCBtX2dhbW1hKGdh
bW1hKQoreworfQorCit2b2lkIERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmll
bnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJs
ZSwgYm9vbCBjYW5jZWxhYmxlLCBkb3VibGUgYWxwaGEsIGRvdWJsZSBiZXRhLCBkb3VibGUgZ2Ft
bWEpCit7CisgICAgaWYgKGRpc3BhdGNoZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW5p
dEV2ZW50KGV2ZW50VHlwZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKTsKKworICAgIG1fYWxwaGEg
PSBhbHBoYTsKKyAgICBtX2JldGEgPSBiZXRhOworICAgIG1fZ2FtbWEgPSBnYW1tYTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKERFVklDRV9PUklFTlRB
VElPTikKSW5kZXg6IFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgJKHJldmlzaW9uIDAp
CisrKyBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxMCwgVGhlIEFuZHJvaWQgT3BlbiBT
b3VyY2UgUHJvamVjdAorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQor
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25FdmVudF9oCisj
ZGVmaW5lIERldmljZU9yaWVudGF0aW9uRXZlbnRfaAorCisjaW5jbHVkZSAiRE9NV2luZG93Lmgi
CisjaW5jbHVkZSAiRXZlbnQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50IDogcHVibGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
UGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBjcmVhdGUoKQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KTsKKyAgICB9Cisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gY3JlYXRlKGNvbnN0
IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBkb3VibGUgYWxwaGEsIGRvdWJsZSBiZXRhLCBkb3Vi
bGUgZ2FtbWEpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVu
dGF0aW9uRXZlbnQoZXZlbnRUeXBlLCBhbHBoYSwgYmV0YSwgZ2FtbWEpKTsKKyAgICB9CisKKyAg
ICB2b2lkIGluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZl
bnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlLCBkb3VibGUgYWxwaGEsIGRv
dWJsZSBiZXRhLCBkb3VibGUgZ2FtbWEpOworICAgIGRvdWJsZSBhbHBoYSgpIHsgcmV0dXJuIG1f
YWxwaGE7IH0KKyAgICBkb3VibGUgYmV0YSgpIHsgcmV0dXJuIG1fYmV0YTsgfQorICAgIGRvdWJs
ZSBnYW1tYSgpIHsgcmV0dXJuIG1fZ2FtbWE7IH0KKworICAgIHZpcnR1YWwgYm9vbCBpc0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisKK3ByaXZhdGU6Cisg
ICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCgpOworICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEs
IGRvdWJsZSBnYW1tYSk7CisKKyAgICBkb3VibGUgbV9hbHBoYTsKKyAgICBkb3VibGUgbV9iZXRh
OworICAgIGRvdWJsZSBtX2dhbW1hOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYgLy8gRGV2aWNlT3JpZW50YXRpb25FdmVudF9oCkluZGV4OiBXZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmlkbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUvZG9tL0RldmljZU9y
aWVudGF0aW9uRXZlbnQuaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACisvKgorICog
Q29weXJpZ2h0IDIwMTAsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIg
T1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitt
b2R1bGUgY29yZSB7CisKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1ERVZJ
Q0VfT1JJRU5UQVRJT04KKyAgICBdIERldmljZU9yaWVudGF0aW9uRXZlbnQgOiBFdmVudCB7Cisg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBkb3VibGUgYWxwaGE7CisgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBkb3VibGUgYmV0YTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGRvdWJs
ZSBnYW1tYTsKKyAgICAgICAgdm9pZCBpbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChpbiBET01T
dHJpbmcgdHlwZUFyZywgaW4gYm9vbGVhbiBjYW5CdWJibGVBcmcsIGluIGJvb2xlYW4gY2FuY2Vs
YWJsZUFyZywgaW4gZG91YmxlIGFscGhhLCBpbiBkb3VibGUgYmV0YSwgaW4gZG91YmxlIGdhbW1h
KTsKKyAgICB9OworCit9CkluZGV4OiBXZWJDb3JlL2RvbS9FdmVudC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9kb20vRXZlbnQuY3BwCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvZG9t
L0V2ZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjEyLDYgKzIxMiwxMyBAQCBib29sIEV2ZW50
Ojppc1RvdWNoRXZlbnQoKSBjb25zdAogfQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoREVWSUNFX09S
SUVOVEFUSU9OKQorYm9vbCBFdmVudDo6aXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkgY29uc3QK
K3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisjZW5kaWYKKwogYm9vbCBFdmVudDo6ZnJvbVVzZXJH
ZXN0dXJlKCkKIHsKICAgICBpZiAoIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNl
ckdlc3R1cmUoKSkKSW5kZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9kb20vRXZlbnQuaAkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL2RvbS9FdmVudC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xMzksNiArMTM5LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
I2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc1RvdWNoRXZl
bnQoKSBjb25zdDsKICNlbmRpZgorI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAg
ICAgIHZpcnR1YWwgYm9vbCBpc0RldmljZU9yaWVudGF0aW9uRXZlbnQoKSBjb25zdDsKKyNlbmRp
ZgogICAgICAgICBib29sIGZyb21Vc2VyR2VzdHVyZSgpOwogICAgICAgICAKICAgICAgICAgYm9v
bCBwcm9wYWdhdGlvblN0b3BwZWQoKSBjb25zdCB7IHJldHVybiBtX3Byb3BhZ2F0aW9uU3RvcHBl
ZCB8fCBtX2ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDsgfQpJbmRleDogV2ViQ29yZS9kb20v
RXZlbnROYW1lcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAkocmV2
aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ5LDYgKzQ5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKGNvcHkpIFwK
ICAgICBtYWNybyhjdXQpIFwKICAgICBtYWNybyhkYmxjbGljaykgXAorICAgIG1hY3JvKGRldmlj
ZW9yaWVudGF0aW9uKSBcCiAgICAgbWFjcm8oZGlzcGxheSkgXAogICAgIG1hY3JvKGRvd25sb2Fk
aW5nKSBcCiAgICAgbWFjcm8oZHJhZykgXApJbmRleDogV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkocmV2aXNpb24gNTk3NTgp
CisrKyBXZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgJKHdvcmtpbmcgY29weSkKQEAgLTMyNSw2ICsz
MjUsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VW
RU5UX0xJU1RFTkVSKG9yaWVudGF0aW9uY2hhbmdlKTsKICNlbmRpZgogCisjaWYgRU5BQkxFKERF
VklDRV9PUklFTlRBVElPTikKKyAgICAgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5F
UihkZXZpY2VvcmllbnRhdGlvbik7CisjZW5kaWYKKwogICAgICAgICBERUZJTkVfTUFQUEVEX0FU
VFJJQlVURV9FVkVOVF9MSVNURU5FUih3ZWJraXRhbmltYXRpb25zdGFydCwgd2Via2l0QW5pbWF0
aW9uU3RhcnQpOwogICAgICAgICBERUZJTkVfTUFQUEVEX0FUVFJJQlVURV9FVkVOVF9MSVNURU5F
Uih3ZWJraXRhbmltYXRpb25pdGVyYXRpb24sIHdlYmtpdEFuaW1hdGlvbkl0ZXJhdGlvbik7CiAg
ICAgICAgIERFRklORV9NQVBQRURfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHdlYmtpdGFuaW1h
dGlvbmVuZCwgd2Via2l0QW5pbWF0aW9uRW5kKTsKSW5kZXg6IFdlYkNvcmUvcGFnZS9ET01XaW5k
b3cuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCShyZXZpc2lv
biA1OTc1OCkKKysrIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCSh3b3JraW5nIGNvcHkpCkBA
IC0yOTksNiArMjk5LDggQEAgbW9kdWxlIHdpbmRvdyB7CiAgICAgICAgIGF0dHJpYnV0ZSBbQ29u
ZGl0aW9uYWw9VE9VQ0hfRVZFTlRTLEVuYWJsZWRBdFJ1bnRpbWVdIEV2ZW50TGlzdGVuZXIgb250
b3VjaGVuZDsKICAgICAgICAgYXR0cmlidXRlIFtDb25kaXRpb25hbD1UT1VDSF9FVkVOVFMsRW5h
YmxlZEF0UnVudGltZV0gRXZlbnRMaXN0ZW5lciBvbnRvdWNoY2FuY2VsOwogCisgICAgICAgIGF0
dHJpYnV0ZSBbQ29uZGl0aW9uYWw9REVWSUNFX09SSUVOVEFUSU9OXSBFdmVudExpc3RlbmVyIG9u
ZGV2aWNlb3JpZW50YXRpb247CisKICAgICAgICAgLy8gRXZlbnRUYXJnZXQgaW50ZXJmYWNlCiAg
ICAgICAgIFtDdXN0b21dIHZvaWQgYWRkRXZlbnRMaXN0ZW5lcihpbiBET01TdHJpbmcgdHlwZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRXZlbnRMaXN0ZW5lciBs
aXN0ZW5lciwKSW5kZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktp
dC9tYWMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJsb2Nr
ICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAor
CisgICAgICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9qZWN0
IGZpbGUsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDEwLTA1LTE4ICBUb255IENoYW5nICA8dG9ueUBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCkluZGV4OiBXZWJL
aXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYktpdC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHJl
dmlzaW9uIDU5NzU4KQorKysgV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNDcsNiArNDcsNyBAQCBFTkFCTEVfQ0xJRU5U
X0JBU0VEX0dFT0xPQ0FUSU9OID0gRU5BQkxFCiBFTkFCTEVfREFUQUJBU0UgPSBFTkFCTEVfREFU
QUJBU0U7CiBFTkFCTEVfREFUQUdSSUQgPSA7CiBFTkFCTEVfREFUQUxJU1QgPSBFTkFCTEVfREFU
QUxJU1Q7CitFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OID0gOwogRU5BQkxFX0RPTV9TVE9SQUdF
ID0gRU5BQkxFX0RPTV9TVE9SQUdFOwogRU5BQkxFX0VWRU5UU09VUkNFID0gRU5BQkxFX0VWRU5U
U09VUkNFOwogRU5BQkxFX0ZJTFRFUlMgPSBFTkFCTEVfRklMVEVSUzsKQEAgLTc4LDQgKzc5LDQg
QEAgRU5BQkxFX1hIVE1MTVAgPSA7CiBFTkFCTEVfWFBBVEggPSBFTkFCTEVfWFBBVEg7CiBFTkFC
TEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9D
QU5WQVMpICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQkxPQl9TTElDRSkgJChFTkFC
TEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikg
JChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFHUklEKSAkKEVOQUJMRV9EQVRBTElTVCkg
JChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxU
RVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxF
X0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFU
QUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChF
TkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAk
KEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJ
T04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdT
KSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFC
TEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJM
RV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRI
KSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykg
JChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFO
TkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJM
RV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJM
RV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVO
VFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRklMRV9SRUFERVIpICQoRU5BQkxF
X0ZJTEVfV1JJVEVSKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNF
KSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VS
KSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09GRkxJ
TkVfV0VCX0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVOQUJMRV9SVUJZ
KSAkKEVOQUJMRV9TQU5EQk9YKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZH
KSAkKEVOQUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxF
X1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdf
Rk9SRUlHTl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV01MKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9Y
SFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVfWFNMVCk7CkluZGV4OiBXZWJLaXRMaWJy
YXJpZXMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdExpYnJhcmllcy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDU5NzU4KQorKysgV2ViS2l0TGlicmFyaWVzL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDEwLTA1LTE5ICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxv
Y2tAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBQcm92aWRlIGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKworICAgICAgICBB
ZGRzIEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04gdG8gVmlzdWFsU3R1ZGlvIHByb2plY3QgZmls
ZXMsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIHdpbi90b29scy92c3Byb3BzL0ZlYXR1
cmVEZWZpbmVzLnZzcHJvcHM6CisgICAgICAgICogd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURl
ZmluZXNDYWlyby52c3Byb3BzOgorCiAyMDEwLTA0LTA5ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8
YXBAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrLgpJ
bmRleDogV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnZz
cHJvcHMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy92c3Byb3BzL0Zl
YXR1cmVEZWZpbmVzLnZzcHJvcHMJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViS2l0TGlicmFyaWVz
L3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnZzcHJvcHMJKHdvcmtpbmcgY29weSkK
QEAgLTksNyArOSw3IEBACiAJPgogICA8VG9vbAogCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgot
CQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVOQUJMRV8z
RF9SRU5ERVJJTkcpOyQoRU5BQkxFX0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxfTUVTU0FH
SU5HKTskKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RBVEFCQVNF
KTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RPTV9TVE9S
QUdFKTskKEVOQUJMRV9FVkVOVFNPVVJDRSk7JChFTkFCTEVfRklMVEVSUyk7JChFTkFCTEVfRklM
RV9SRUFERVIpOyQoRU5BQkxFX0ZJTEVfV1JJVEVSKTskKEVOQUJMRV9HRU9MT0NBVElPTik7JChF
TkFCTEVfSUNPTkRBVEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9K
QVZBU0NSSVBUX0RFQlVHR0VSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX05PVElGSUNBVElP
TlMpOyQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUyk7JChFTkFCTEVfUlVCWSk7JChF
TkFCTEVfU0FOREJPWCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX1NWRyk7JChF
TkFCTEVfU1ZHX0FOSU1BVElPTik7JChFTkFCTEVfU1ZHX0FTX0lNQUdFKTskKEVOQUJMRV9TVkdf
RE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1NWR19GT05UUyk7JChFTkFCTEVfU1ZHX0ZPUkVJ
R05fT0JKRUNUKTskKEVOQUJMRV9TVkdfVVNFKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VC
X1NPQ0tFVFMpOyQoRU5BQkxFX1dNTCk7JChFTkFCTEVfV09SS0VSUyk7JChFTkFCTEVfWEhUTUxN
UCk7JChFTkFCTEVfWFBBVEgpOyQoRU5BQkxFX1hTTFQpIgorCQlQcmVwcm9jZXNzb3JEZWZpbml0
aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVOQUJMRV8zRF9SRU5ERVJJTkcpOyQoRU5BQkxF
X0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RBVEFCQVNFKTskKEVOQUJMRV9EQVRBR1JJRCk7
JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVf
RE9NX1NUT1JBR0UpOyQoRU5BQkxFX0VWRU5UU09VUkNFKTskKEVOQUJMRV9GSUxURVJTKTskKEVO
QUJMRV9GSUxFX1JFQURFUik7JChFTkFCTEVfRklMRV9XUklURVIpOyQoRU5BQkxFX0dFT0xPQ0FU
SU9OKTskKEVOQUJMRV9JQ09OREFUQUJBU0UpOyQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpOyQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTk9U
SUZJQ0FUSU9OUyk7JChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKTskKEVOQUJMRV9S
VUJZKTskKEVOQUJMRV9TQU5EQk9YKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVf
U1ZHKTskKEVOQUJMRV9TVkdfQU5JTUFUSU9OKTskKEVOQUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5B
QkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9T
VkdfRk9SRUlHTl9PQkpFQ1QpOyQoRU5BQkxFX1NWR19VU0UpOyQoRU5BQkxFX1ZJREVPKTskKEVO
QUJMRV9XRUJfU09DS0VUUyk7JChFTkFCTEVfV01MKTskKEVOQUJMRV9XT1JLRVJTKTskKEVOQUJM
RV9YSFRNTE1QKTskKEVOQUJMRV9YUEFUSCk7JChFTkFCTEVfWFNMVCkiCiAJLz4KICAgPFVzZXJN
YWNybwogCQlOYW1lPSJFTkFCTEVfM0RfQ0FOVkFTIgpAQCAtNTIsNiArNTIsMTEgQEAKIAkJUGVy
Zm9ybUVudmlyb25tZW50U2V0PSJ0cnVlIgogCS8+CiAgIDxVc2VyTWFjcm8KKwkJTmFtZT0iRU5B
QkxFX0RFVklDRV9PUklFTlRBVElPTiIKKwkJVmFsdWU9IiIKKwkJUGVyZm9ybUVudmlyb25tZW50
U2V0PSJ0cnVlIgorCS8+CisgIDxVc2VyTWFjcm8KIAkJTmFtZT0iRU5BQkxFX0RPTV9TVE9SQUdF
IgogCQlWYWx1ZT0iRU5BQkxFX0RPTV9TVE9SQUdFIgogCQlQZXJmb3JtRW52aXJvbm1lbnRTZXQ9
InRydWUiCkluZGV4OiBXZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURl
ZmluZXNDYWlyby52c3Byb3BzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdExpYnJhcmllcy93aW4vdG9v
bHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0NhaXJvLnZzcHJvcHMJKHJldmlzaW9uIDU5NzU4KQor
KysgV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8u
dnNwcm9wcwkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKIAk+CiAgIDxUb29sCiAJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSIkKEVOQUJM
RV8zRF9DQU5WQVMpOyQoRU5BQkxFXzNEX1JFTkRFUklORyk7JChFTkFCTEVfQkxPQl9TTElDRSk7
JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NB
VElPTik7JChFTkFCTEVfREFUQUJBU0UpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRB
TElTVCk7JChFTkFCTEVfRE9NX1NUT1JBR0UpOyQoRU5BQkxFX0VWRU5UU09VUkNFKTskKEVOQUJM
RV9GSUxURVJTKTskKEVOQUJMRV9GSUxFX1JFQURFUik7JChFTkFCTEVfRklMRV9XUklURVIpOyQo
RU5BQkxFX0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9JQ09OREFUQUJBU0UpOyQoRU5BQkxFX0lOREVY
RURfREFUQUJBU0UpOyQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpOyQoRU5BQkxFX01BVEhN
TCk7JChFTkFCTEVfTk9USUZJQ0FUSU9OUyk7JChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJ
T05TKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfU1ZHKTskKEVOQUJMRV9TVkdf
QU5JTUFUSU9OKTskKEVOQUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5BQkxFX1NWR19ET01fT0JKQ19C
SU5ESU5HUyk7JChFTkFCTEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1Qp
OyQoRU5BQkxFX1NWR19VU0UpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfU09DS0VUUyk7
JChFTkFCTEVfV01MKTskKEVOQUJMRV9XT1JLRVJTKTskKEVOQUJMRV9YSFRNTE1QKTskKEVOQUJM
RV9YUEFUSCk7JChFTkFCTEVfWFNMVCkiCisJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSIkKEVO
QUJMRV8zRF9DQU5WQVMpOyQoRU5BQkxFXzNEX1JFTkRFUklORyk7JChFTkFCTEVfQkxPQl9TTElD
RSk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTik7JChFTkFCTEVfREFUQUJBU0UpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9E
QVRBTElTVCk7JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKTskKEVOQUJMRV9ET01fU1RPUkFH
RSk7JChFTkFCTEVfRVZFTlRTT1VSQ0UpOyQoRU5BQkxFX0ZJTFRFUlMpOyQoRU5BQkxFX0ZJTEVf
UkVBREVSKTskKEVOQUJMRV9GSUxFX1dSSVRFUik7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5B
QkxFX0lDT05EQVRBQkFTRSk7JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk7JChFTkFCTEVfSkFW
QVNDUklQVF9ERUJVR0dFUik7JChFTkFCTEVfTUFUSE1MKTskKEVOQUJMRV9OT1RJRklDQVRJT05T
KTskKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpOyQoRU5BQkxFX1NIQVJFRF9XT1JL
RVJTKTskKEVOQUJMRV9TVkcpOyQoRU5BQkxFX1NWR19BTklNQVRJT04pOyQoRU5BQkxFX1NWR19B
U19JTUFHRSk7JChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9TVkdfRk9O
VFMpOyQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCk7JChFTkFCTEVfU1ZHX1VTRSk7JChFTkFC
TEVfVklERU8pOyQoRU5BQkxFX1dFQl9TT0NLRVRTKTskKEVOQUJMRV9XTUwpOyQoRU5BQkxFX1dP
UktFUlMpOyQoRU5BQkxFX1hIVE1MTVApOyQoRU5BQkxFX1hQQVRIKTskKEVOQUJMRV9YU0xUKSIK
IAkvPgogICA8VXNlck1hY3JvCiAJCU5hbWU9IkVOQUJMRV8zRF9DQU5WQVMiCkBAIC01Miw2ICs1
MiwxMSBAQAogCQlQZXJmb3JtRW52aXJvbm1lbnRTZXQ9InRydWUiCiAJLz4KICAgPFVzZXJNYWNy
bworCQlOYW1lPSJFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIgorCQlWYWx1ZT0iIgorCQlQZXJm
b3JtRW52aXJvbm1lbnRTZXQ9InRydWUiCisJLz4KKyAgPFVzZXJNYWNybwogCQlOYW1lPSJFTkFC
TEVfRE9NX1NUT1JBR0UiCiAJCVZhbHVlPSJFTkFCTEVfRE9NX1NUT1JBR0UiCiAJCVBlcmZvcm1F
bnZpcm9ubWVudFNldD0idHJ1ZSIKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NzU4KQorKysgTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTAtMDUt
MTkgIFN0ZXZlIEJsb2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERl
dmljZU9yaWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zOTIxMAorCisgICAgICAgIE1vZGlmaWVzIGV4aXN0aW5nIGZhc3QvZG9tL1dpbmRv
dyB0ZXN0cyB0byBza2lwIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uIHVudGlsCisgICAgICAg
IGl0IGlzIHdpZGVseSBzdXBwb3J0ZWQuCisgICAgICAgIEFkZHMgbmV3IGZhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbCB0byB0ZXN0Cisg
ICAgICAgIHR5cGUgYW5kIHByZXNlbmNlIG9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uLgor
ICAgICAgICBBZGRzIG5ldyBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbiBkaXJlY3RvcnkgYW5k
IGluaXRpYWwgdGVzdC4KKyAgICAgICAgQWRkcyBhbGwgRGV2aWNlT3JpZW50YXRpb24gdGVzdHMg
dG8gYWxsIHNraXBwZWQgbGlzdHMuCisKKyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRh
dGlvbjogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2NyaXB0
LXRlc3RzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3Jp
cHQtdGVzdHMvVEVNUExBVEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vRGV2aWNl
T3JpZW50YXRpb24vc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS5qczogQWRkZWQuCisgICAg
ICAgIChoYXNPbkRldmljZU9yaWVudGF0aW9uUHJvcGVydHkpOgorICAgICAgICAqIGZhc3QvZG9t
L0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3dpbmRvdy1w
cm9wZXJ0eS1kZXNjcmlwdG9ycy5qczoKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmll
bnRhdGlvbi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0
aW9ucy50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisgICAgICAgICogcGxh
dGZvcm0vbWFjL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDoKKwogMjAxMC0wNS0xOSAgWmhlbnlhbyBNbyAgPHpt
b0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmll
bnRhdGlvbi93aW5kb3ctcHJvcGVydHktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBAQAorVGVzdHMgdGhhdCB0aGUgd2lu
ZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gcHJvcGVydHkgaXMgcHJlc2VudC4KKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHlwZW9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0
aW9uID09ICdvYmplY3QnIGlzIHRydWUKK1BBU1MgaGFzT25EZXZpY2VPcmllbnRhdGlvblByb3Bl
cnR5KCkgaXMgdHJ1ZQorUEFTUyAnb25kZXZpY2VvcmllbnRhdGlvbicgaW4gd2luZG93IGlzIHRy
dWUKK1BBU1Mgd2luZG93Lmhhc093blByb3BlcnR5KCdvbmRldmljZW9yaWVudGF0aW9uJykgaXMg
dHJ1ZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9w
ZXJ0eS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVu
dGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0Rl
dmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy9URU1Q
TEFURS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3Jp
ZW50YXRpb24vc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVz
dHMvd2luZG93LXByb3BlcnR5LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9t
L0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHkuanMJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQt
dGVzdHMvd2luZG93LXByb3BlcnR5LmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE4IEBACitk
ZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gcHJv
cGVydHkgaXMgcHJlc2VudC4iKTsKKworZnVuY3Rpb24gaGFzT25EZXZpY2VPcmllbnRhdGlvblBy
b3BlcnR5KCkKK3sKKyAgICBmb3IgKHZhciBwcm9wZXJ0eSBpbiB3aW5kb3cpIHsKKyAgICAgICAg
aWYgKHByb3BlcnR5ID09ICJvbmRldmljZW9yaWVudGF0aW9uIikKKyAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3Nob3VsZEJlVHJ1ZSgidHlw
ZW9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uID09ICdvYmplY3QnIik7CitzaG91bGRCZVRy
dWUoImhhc09uRGV2aWNlT3JpZW50YXRpb25Qcm9wZXJ0eSgpIik7CitzaG91bGRCZVRydWUoIidv
bmRldmljZW9yaWVudGF0aW9uJyBpbiB3aW5kb3ciKTsKK3Nob3VsZEJlVHJ1ZSgid2luZG93Lmhh
c093blByb3BlcnR5KCdvbmRldmljZW9yaWVudGF0aW9uJykiKTsKKword2luZG93LmpzVGVzdElz
QXN5bmMgPSBmYWxzZTsKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1v
cmllbnRhdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw0IEBACitUaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVz
IHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiBv
YmplY3QsIGFsb25nIHdpdGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5vbmRldmljZW9yaWVudGF0
aW9uIFtudWxsXQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRh
dGlvbi5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDk0IEBACis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVz
IHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbgor
b2JqZWN0LCBhbG9uZyB3aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+
PC9wcmU+CisKKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAKK3ZhciBsb2dCdWZmZXIg
PSBbXTsKK2Z1bmN0aW9uIGxvZyhzKQoreworICAgIGxvZ0J1ZmZlci5wdXNoKHMpOworfQorCit2
YXIgcHJlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ByZScpOworZnVuY3Rpb24gZmx1c2hM
b2coKQoreworICAgIHZhciBsb2dNZXNzYWdlID0gbG9nQnVmZmVyLmpvaW4oIiIpOworICAgIHBy
ZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShsb2dNZXNzYWdlKSk7Cit9CisK
K2Z1bmN0aW9uIHRyeUV2YWwoc3RyaW5nKQoreworICAgIHRyeSB7CisgICAgICAgIHJldHVybiBl
dmFsKHN0cmluZyk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICByZXR1cm4gbmV3IFN0cmlu
ZygiQ2F1Z2h0IGV4Y2VwdGlvbjogIiArIGUpOworICAgIH0KK30KKworZnVuY3Rpb24gdHlwZU9m
TnVsbEF3YXJlKHZhbHVlKQoreworICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIgJiYg
dmFsdWUgPT0gbnVsbCkgLy87CisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5
cGVvZiB2YWx1ZTsKK30KKworZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sK
KyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4g
dmFsdWVUeXBlID09ICJvYmplY3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmlu
Zy5jYWxsKHZhbHVlKQorICAgICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVu
Y3Rpb24gbG9nVmFsdWUodmFsdWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFs
dWVOYW1lKTsKKyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKwor
ICAgIC8vIERvbid0IHRhaW50IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBp
ZiAodmFsdWUgPT0gbG9nQnVmZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAg
ICBpZiAoL19fdmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVX
aGVuVmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47
CisKKyAgICAvLyBXb3JrIGFyb3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlm
ICgvXC5bMC05XS8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBB
dm9pZCBpbmZpbml0ZSByZWN1cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYm
IHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICAgICAgbG9nKHZhbHVlTmFt
ZSArICIgW3ByaW50ZWQgYWJvdmUgYXMgIiArIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dW
YWx1ZV9fICsgIl1cbiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbG9nKHZhbHVl
TmFtZSArICIgIiArIHR5cGVTdHJpbmdOdWxsQXdhcmUodmFsdWUpICsgIlxuIik7CisKKyAgICBp
ZiAodmFsdWVUeXBlID09ICJvYmplY3QiKSB7CisgICAgICAgIHZhbHVlLl9fdmlzaXRlZEJ5TG9n
VmFsdWVfXyA9IHRydWU7CisgICAgICAgIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1
ZV9fID0gdmFsdWVOYW1lOworICAgICAgICBsb2dQcm9wZXJ0aWVzKHZhbHVlLCB2YWx1ZU5hbWUp
OworICAgIH0KK30KKworZnVuY3Rpb24gbG9nUHJvcGVydGllcyhvYmplY3QsIG9iamVjdE5hbWUp
Cit7CisgICAgdmFyIGFycmF5ID0gbmV3IEFycmF5OworICAgIGZvciAodmFyIHByb3BlcnR5IGlu
IG9iamVjdCkgeworICAgICAgICBhcnJheS5wdXNoKHByb3BlcnR5KTsKKyAgICB9CisgICAgYXJy
YXkuc29ydCgpOworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHsK
KyAgICAgICAgdmFyIHByb3BlcnR5ID0gYXJyYXlbaV07CisgICAgICAgIGxvZ1ZhbHVlKG9iamVj
dE5hbWUgKyAiLiIgKyBwcm9wZXJ0eSk7CisgICAgfQorfQorCitsb2dWYWx1ZSgnd2luZG93Lm9u
ZGV2aWNlb3JpZW50YXRpb24nKTsKK2ZsdXNoTG9nKCk7Cis8L3NjcmlwdD4KSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCShy
ZXZpc2lvbiA1OTc1OCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydGllcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4Miw4IEBAIHZhciBfX3NraXBf
XyA9IHsKICAgICAid2luZG93LmNsaWVudEluZm9ybWF0aW9uLmdlb2xvY2F0aW9uIiA6IDEsCiAg
ICAgIndpbmRvdy5CbG9iLnByb3RvdHlwZS5zbGljZSIgOiAxLAogICAgICJ3aW5kb3cuRmlsZUVy
cm9yIiA6IDEsCi0gICAgIndpbmRvdy5GaWxlUmVhZGVyIiA6IDEKKyAgICAid2luZG93LkZpbGVS
ZWFkZXIiIDogMSwKKyAgICAid2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24iIDogMQogfTsKIAog
ZnVuY3Rpb24gbG9nVmFsdWUodmFsdWVOYW1lKQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20v
V2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ct
cHJvcGVydHktZGVzY3JpcHRvcnMuanMJKHJldmlzaW9uIDU5NzU4KQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMu
anMJKHdvcmtpbmcgY29weSkKQEAgLTM3LDYgKzM3LDcgQEAgdmFyIF9fc2tpcF9fID0gewogICAg
ICJGbG9hdEFycmF5IiA6IDEsCiAgICAgIkZpbGVFcnJvciIgOiAxLAogICAgICJGaWxlUmVhZGVy
IiA6IDEsCisgICAgIm9uZGV2aWNlb3JpZW50YXRpb24iIDogMSwKICAgICAvLyBJZ25vcmUgdGhp
cyBwcm9wZXJ0eSBiZWNhdXNlIGl0IG9ubHkgYXBwZWFycyBpbiBkZWJ1ZyBidWlsZHMgYW5kIG5v
dCBpbiByZWxlYXNlLgogICAgICJqc2NwcmludCIgOiAxCiB9OwpJbmRleDogTGF5b3V0VGVzdHMv
cGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkocmV2aXNp
b24gNTk3NTgpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0
aW9ucy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTI4MzgsMyArMjgzOCw3IEBAIEJVR1dLMzkxMDUg
V0lOIExJTlVYIDogZWRpdGluZy9zcGVsbGluZy8KIAogLy8gRmxha3kgdGVzdHMKIEJVRzQ0MjI5
IFdJTiBMSU5VWCA6IGZhc3QvbG9hZGVyL3JlY3Vyc2l2ZS1iZWZvcmUtdW5sb2FkLWNyYXNoLmh0
bWwgPSBQQVNTIFRFWFQKKworLy8gRGV2aWNlT3JpZW50YXRpb24gQVBJIG5vdCB5ZXQgaW1wbGVt
ZW50ZWQuCitERUZFUiBTS0lQIDogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24gPSBURVhUCitE
RUZFUiBTS0lQIDogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1v
cmllbnRhdGlvbi5odG1sID0gVEVYVApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Nr
aXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHJl
dmlzaW9uIDU5NzU4KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHdvcmtp
bmcgY29weSkKQEAgLTExNzksNiArMTE3OSw3IEBAIGZhc3QvZG9tL2NsaWVudC13aWR0aC1oZWln
aHQtcXVpcmtzLmh0bWwKIGZhc3QvZG9tL2NsaWVudC13aWR0aC1oZWlnaHQuaHRtbAogZmFzdC9k
b20vY3NzVGFyZ2V0LWNyYXNoLmh0bWwKIGZhc3QvZG9tL2ZyYW1lLWxvYWRpbmctdmlhLWRvY3Vt
ZW50LXdyaXRlLmh0bWwKK2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0
eS5odG1sCiBmYXN0L2RvbS9HZW9sb2NhdGlvbi9jYWxsYmFjay1leGNlcHRpb24uaHRtbAogZmFz
dC9kb20vR2VvbG9jYXRpb24vZXJyb3IuaHRtbAogZmFzdC9kb20vR2VvbG9jYXRpb24vcGVybWlz
c2lvbi1kZW5pZWQtYWxyZWFkeS1jbGVhci13YXRjaC5odG1sCkBAIC0xMjA0LDYgKzEyMDUsNyBA
QCBmYXN0L2RvbS9TZWxlY3RvckFQSS9yZXNpZy1TZWxlY3RvcnNBUEktCiBmYXN0L2RvbS9XaW5k
b3cvbmV3LXdpbmRvdy1vcGVuZXIuaHRtbAogZmFzdC9kb20vV2luZG93L3dlYmtpdENvbnZlcnRQ
b2ludC5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LW9uRm9jdXMuaHRtbAorZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LXJlc2l6ZS1hbmQtbW92ZS1hcmd1bWVudHMuaHRtbAogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1yZXNpemUuaHRtbAogZmFzdC9kb20vV2luZG93L3dpbmRvdy14eS1w
cm9wZXJ0aWVzLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCShyZXZpc2lvbiA1
OTc1OCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCSh3b3JraW5nIGNvcHkp
CkBAIC0xODgsMyArMTg4LDcgQEAgc2Nyb2xsYmFycy9zY3JvbGxiYXItY2xpY2stZG9lcy1ub3Qt
Ymx1cgogCiAjIEluZGV4ZWREQiBpcyBub3QgeWV0IGVuYWJsZWQuCiBzdG9yYWdlL2luZGV4ZWRk
YgorCisjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgRGV2aWNlT3JpZW50YXRpb24uCitmYXN0
L2RvbS9EZXZpY2VPcmllbnRhdGlvbgorZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVz
LW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJ
KHJldmlzaW9uIDU5NzU4KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkod29y
a2luZyBjb3B5KQpAQCAtNTA4OCwzICs1MDg4LDcgQEAgZWRpdGluZy9zcGVsbGluZy9jb250ZXh0
LW1lbnUtc3VnZ2VzdGlvbgogCiAjIEluZGV4ZWREQiBpcyBub3QgeWV0IGVuYWJsZWQuCiBzdG9y
YWdlL2luZGV4ZWRkYgorCisjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgRGV2aWNlT3JpZW50
YXRpb24uCitmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbgorZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCkluZGV4OiBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vU2tpcHBlZAkocmV2aXNpb24gNTk3NTgpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAtODgzLDMgKzg4Myw3IEBAIGVkaXRpbmcvc3Bl
bGxpbmcvY29udGV4dC1tZW51LXN1Z2dlc3Rpb24KIAogIyBJbmRleGVkREIgaXMgbm90IHlldCBl
bmFibGVkLgogc3RvcmFnZS9pbmRleGVkZGIKKworIyBUaGlzIHBvcnQgZG9lc24ndCBzdXBwb3J0
IERldmljZU9yaWVudGF0aW9uLgorZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24KK2Zhc3QvZG9t
L1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56492</attachid>
            <date>2010-05-19 08:30:38 -0700</date>
            <delta_ts>2010-05-20 09:43:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39210-20100519163036.patch</filename>
            <type>text/plain</type>
            <size>52877</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NzU4KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIx
MAorCisgICAgICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9q
ZWN0IGZpbGUsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDEwLTA1LTE4ICBHYXZpbiBCYXJyYWNsb3VnaCAg
PGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZiBHYXJl
bi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiA1OTc1OCkKKysrIEphdmFTY3JpcHRDb3JlL0Nv
bmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC00
Nyw2ICs0Nyw3IEBAIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04gPSBFTkFCTEUKIEVO
QUJMRV9EQVRBQkFTRSA9IEVOQUJMRV9EQVRBQkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IDsKIEVO
QUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElTVDsKK0VOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJ
T04gPSA7CiBFTkFCTEVfRE9NX1NUT1JBR0UgPSBFTkFCTEVfRE9NX1NUT1JBR0U7CiBFTkFCTEVf
RVZFTlRTT1VSQ0UgPSBFTkFCTEVfRVZFTlRTT1VSQ0U7CiBFTkFCTEVfRklMVEVSUyA9IEVOQUJM
RV9GSUxURVJTOwpAQCAtNzgsNCArNzksNCBAQCBFTkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJMRV9Y
UEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRV
UkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAk
KEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVf
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFU
QUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVf
RVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVO
QUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRB
QkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJV
R0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9P
RkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVf
UlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxF
X1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVO
QUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVf
U1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChF
TkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFC
TEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJ
TkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxF
X0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkg
JChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVf
RE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVO
QUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FU
SU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9Q
Uk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NI
QVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5B
QkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJM
RV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VT
RSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQo
RU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJM
RV9YU0xUKTsKSW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsNTEgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJsb2NrICA8c3RldmVi
bG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9uCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAorCisgICAgICAg
IFRlc3RzOiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHkuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmlj
ZS1vcmllbnRhdGlvbi5odG1sCisKKyAgICAgICAgQWRkcyBiaW5kaW5ncyBmb3IgRGV2aWNlT3Jp
ZW50YXRpb24gYXMgZGVmaW5lZCBpbgorICAgICAgICBodHRwOi8vZGV2LnczLm9yZy9nZW8vYXBp
L3NwZWMtc291cmNlLW9yaWVudGF0aW9uLmh0bWwKKyAgICAgICAgVGhpcyBpcyBndWFyZGVkIGJ5
IEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pIHdoaWNoIGlzIGN1cnJlbnRseSBkaXNhYmxlZCBv
bgorICAgICAgICBhbGwgcGxhdGZvcm1zIGJ1dCBBbmRyb2lkLgorCisgICAgICAgICogQW5kcm9p
ZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgorICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC52OGJp
bmRpbmdzLm1rOgorICAgICAgICAqIEFuZHJvaWQubWs6CisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3Bw
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR05VbWFrZWZpbGUu
YW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUucHJpOgorICAg
ICAgICAqIFdlYkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2ZW50
Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvVjgpOgorICAgICAgICAqIGNvbmZpZy5o
OgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpEZXZpY2VPcmllbnRhdGlvbkV2
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZp
Y2VPcmllbnRhdGlvbkV2ZW50KToKKyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjphbHBoYSk6
CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpiZXRhKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmdhbW1hKToKKyAgICAgICAgKFdl
YkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCk6
CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsOiBBZGRlZC4KKyAgICAg
ICAgKiBkb20vRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnQ6OmlzRGV2aWNlT3Jp
ZW50YXRpb25FdmVudCk6CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2
ZW50TmFtZXMuaDoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAgICAgICAqIHBhZ2Uv
RE9NV2luZG93LmlkbDoKKwogMjAxMC0wNS0xOSAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdv
b2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTmF0ZSBDaGFwaW4uCkluZGV4OiBXZWJD
b3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5kaW5ncy5tawo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5kaW5ncy5tawkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJD
b3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5kaW5ncy5tawkod29ya2luZyBjb3B5KQpAQCAtNDks
NyArNDksNyBAQCBqc19iaW5kaW5nX3NjcmlwdHMgOj0gJChhZGRwcmVmaXggJChMT0NBCiAJCQli
aW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBsIFwKIAkJKQogCi1GRUFUVVJFX0RF
RklORVMgOj0gQU5EUk9JRF9PUklFTlRBVElPTl9TVVBQT1JUIEVOQUJMRV9UT1VDSF9FVkVOVFM9
MSBFTkFCTEVfREFUQUJBU0U9MSBFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TPTEgRU5B
QkxFX0RPTV9TVE9SQUdFPTEgRU5BQkxFX1ZJREVPPTEgRU5BQkxFX1dPUktFUlM9MSBFTkFCTEVf
R0VPTE9DQVRJT049MSBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkc9MQorRkVBVFVSRV9ERUZJTkVT
IDo9IEFORFJPSURfT1JJRU5UQVRJT05fU1VQUE9SVCBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgRU5B
QkxFX0RBVEFCQVNFPTEgRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9E
T01fU1RPUkFHRT0xIEVOQUJMRV9WSURFTz0xIEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xP
Q0FUSU9OPTEgRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HPTEgRU5BQkxFX0RFVklDRV9PUklFTlRB
VElPTj0xCiAKICMgQ1NTCiBHRU4gOj0gXApAQCAtMTAzLDYgKzEwMyw3IEBAIEdFTiA6PSBcCiAg
ICAgJChpbnRlcm1lZGlhdGVzKS9kb20vSlNDb21tZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRl
cykvZG9tL0pTRE9NQ29yZUV4Y2VwdGlvbi5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9K
U0RPTUltcGxlbWVudGF0aW9uLmggXAorICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRGV2aWNl
T3JpZW50YXRpb25FdmVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RvY3VtZW50
LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRG9jdW1lbnRGcmFnbWVudC5oIFwKICAg
ICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RvY3VtZW50VHlwZS5oIFwKSW5kZXg6IFdlYkNvcmUv
QW5kcm9pZC5kZXJpdmVkLnY4YmluZGluZ3MubWsKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9BbmRy
b2lkLmRlcml2ZWQudjhiaW5kaW5ncy5tawkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL0Fu
ZHJvaWQuZGVyaXZlZC52OGJpbmRpbmdzLm1rCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw4
IEBAIGpzX2JpbmRpbmdfc2NyaXB0cyA6PSBcCiAJJChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3Jp
cHRzL0lETFN0cnVjdHVyZS5wbSBcCiAJJChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL2dl
bmVyYXRlLWJpbmRpbmdzLnBsCiAKLUZFQVRVUkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFU
SU9OX1NVUFBPUlQgRU5BQkxFX1RPVUNIX0VWRU5UUz0xIFY4X0JJTkRJTkcgRU5BQkxFX0RBVEFC
QVNFPTEgRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFH
RT0xIEVOQUJMRV9WSURFTz0xIEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEK
K0ZFQVRVUkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFUSU9OX1NVUFBPUlQgRU5BQkxFX1RP
VUNIX0VWRU5UUz0xIEVOQUJMRV9EQVRBQkFTRT0xIEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNB
VElPTlM9MSBFTkFCTEVfRE9NX1NUT1JBR0U9MSBFTkFCTEVfVklERU89MSBFTkFCTEVfV09SS0VS
Uz0xIEVOQUJMRV9HRU9MT0NBVElPTj0xIEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT049MQorRkVB
VFVSRV9ERUZJTkVTICs9IFY4X0JJTkRJTkcKIAogIyBDU1MKIEdFTiA6PSBcCkBAIC04NCw2ICs4
NSw3IEBAIEdFTiA6PSBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOENvbW1lbnQu
aCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOERPTUNvcmVFeGNlcHRpb24uaCBc
CiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOERPTUltcGxlbWVudGF0aW9uLmggXAor
ICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmgg
XAogICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEb2N1bWVudC5oIFwKICAgICAkKGlu
dGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGludGVy
bWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RG9jdW1lbnRUeXBlLmggXApJbmRleDogV2ViQ29yZS9BbmRy
b2lkLm1rCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQW5kcm9pZC5tawkocmV2aXNpb24gNTk3NTgp
CisrKyBXZWJDb3JlL0FuZHJvaWQubWsJKHdvcmtpbmcgY29weSkKQEAgLTE0NSw2ICsxNDUsNyBA
QCBMT0NBTF9TUkNfRklMRVMgOj0gJChMT0NBTF9TUkNfRklMRVMpIFwKIAlkb20vTm90YXRpb24u
Y3BwIFwKIAlkb20vT3B0aW9uRWxlbWVudC5jcHAgXAogCWRvbS9PcHRpb25Hcm91cEVsZW1lbnQu
Y3BwIFwKKwlkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogCWRvbS9PdmVyZmxvd0V2
ZW50LmNwcCBcCiAJZG9tL1BhZ2VUcmFuc2l0aW9uRXZlbnQuY3BwIFwKIAlkb20vUG9zaXRpb24u
Y3BwIFwKSW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvRGVy
aXZlZFNvdXJjZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02OSw2ICs2OSw3IEBACiAjaW5jbHVk
ZSAiSlNEYXRhR3JpZENvbHVtbi5jcHAiCiAjaW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbkxpc3Qu
Y3BwIgogI2luY2x1ZGUgIkpTRGVkaWNhdGVkV29ya2VyQ29udGV4dC5jcHAiCisjaW5jbHVkZSAi
SlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50LmNwcCIK
ICNpbmNsdWRlICJKU0RvY3VtZW50RnJhZ21lbnQuY3BwIgogI2luY2x1ZGUgIkpTRG9jdW1lbnRU
eXBlLmNwcCIKSW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xMTcsNiArMTE3LDcgQEAg
RE9NX0NMQVNTRVMgPSBcCiAgICAgRGF0YWJhc2UgXAogICAgIERhdGFiYXNlQ2FsbGJhY2sgXAog
ICAgIERhdGFiYXNlU3luYyBcCisgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCBcCiAgICAgRG9j
dW1lbnQgXAogICAgIERvY3VtZW50RnJhZ21lbnQgXAogICAgIERvY3VtZW50VHlwZSBcCkluZGV4
OiBXZWJDb3JlL0dOVW1ha2VmaWxlLmFtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvR05VbWFrZWZp
bGUuYW0JKHJldmlzaW9uIDU5NzU4KQorKysgV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkod29ya2lu
ZyBjb3B5KQpAQCAtMTM4LDYgKzEzOCw3IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViY29yZS9k
b20vQ3VzdG9tRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbCBc
CiAJV2ViQ29yZS9kb20vRE9NSW1wbGVtZW50YXRpb24uaWRsIFwKKwlXZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsIFwKIAlX
ZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnRU
eXBlLmlkbCBcCkBAIC03NjUsNiArNzY2LDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJD
b3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmggXAogCVdlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0
aW9uLmNwcCBcCiAJV2ViQ29yZS9kb20vRE9NSW1wbGVtZW50YXRpb24uaCBcCisJV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAorCVdlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uRXZlbnQuaCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIFwKIAlXZWJDb3JlL2Rv
bS9Eb2N1bWVudC5oIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCkluZGV4
OiBXZWJDb3JlL1dlYkNvcmUuZ3lwaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUuZ3lw
aQkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL1dlYkNvcmUuZ3lwaQkod29ya2luZyBjb3B5
KQpAQCAtNDAsNiArNDAsNyBAQAogICAgICAgICAgICAgJ2RvbS9DdXN0b21FdmVudC5pZGwnLAog
ICAgICAgICAgICAgJ2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbCcsCiAgICAgICAgICAgICAnZG9t
L0RPTUltcGxlbWVudGF0aW9uLmlkbCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuaWRsJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnQuaWRsJywKICAgICAgICAg
ICAgICdkb20vRG9jdW1lbnRGcmFnbWVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVu
dFR5cGUuaWRsJywKQEAgLTEwOTksNiArMTEwMCw4IEBACiAgICAgICAgICAgICAnZG9tL0RPTUNv
cmVFeGNlcHRpb24uaCcsCiAgICAgICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcCcs
CiAgICAgICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmgnLAorICAgICAgICAgICAgJ2Rv
bS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9y
aWVudGF0aW9uRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50LmNwcCcsCiAgICAg
ICAgICAgICAnZG9tL0RvY3VtZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudEZyYWdt
ZW50LmNwcCcsCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUucHJpCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvV2ViQ29yZS5wcmkJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViQ29yZS9XZWJDb3JlLnByaQko
d29ya2luZyBjb3B5KQpAQCAtMjYwLDYgKzI2MCw3IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAg
ZG9tL0NvbW1lbnQuaWRsIFwKICAgICBkb20vQ29tcG9zaXRpb25FdmVudC5pZGwgXAogICAgIGRv
bS9DdXN0b21FdmVudC5pZGwgXAorICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCBc
CiAgICAgZG9tL0RvY3VtZW50RnJhZ21lbnQuaWRsIFwKICAgICBkb20vRG9jdW1lbnQuaWRsIFwK
ICAgICBkb20vRG9jdW1lbnRUeXBlLmlkbCBcCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUucHJvCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS5wcm8JKHJldmlzaW9uIDU5NzU4KQorKysgV2Vi
Q29yZS9XZWJDb3JlLnBybwkod29ya2luZyBjb3B5KQpAQCAtNDYyLDYgKzQ2Miw3IEBAIFNPVVJD
RVMgKz0gXAogICAgIGRvbS9Db250YWluZXJOb2RlLmNwcCBcCiAgICAgZG9tL0NTU01hcHBlZEF0
dHJpYnV0ZURlY2xhcmF0aW9uLmNwcCBcCiAgICAgZG9tL0N1c3RvbUV2ZW50LmNwcCBcCisgICAg
ZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKICAgICBkb20vRG9jdW1lbnQuY3BwIFwK
ICAgICBkb20vRG9jdW1lbnRGcmFnbWVudC5jcHAgXAogICAgIGRvbS9Eb2N1bWVudFR5cGUuY3Bw
IFwKQEAgLTExODcsNiArMTE4OCw3IEBAIEhFQURFUlMgKz0gXAogICAgIGRvbS9DU1NNYXBwZWRB
dHRyaWJ1dGVEZWNsYXJhdGlvbi5oIFwKICAgICBkb20vQ3VzdG9tRXZlbnQuaCBcCiAgICAgZG9t
L2RlZmF1bHQvUGxhdGZvcm1NZXNzYWdlUG9ydENoYW5uZWwuaCBcCisgICAgZG9tL0RldmljZU9y
aWVudGF0aW9uRXZlbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50RnJhZ21lbnQuaCBcCiAgICAgZG9t
L0RvY3VtZW50LmggXAogICAgIGRvbS9Eb2N1bWVudFR5cGUuaCBcCkluZGV4OiBXZWJDb3JlL2Nv
bmZpZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvY29uZmlnLmgJKHJldmlzaW9uIDU5NzU4KQor
KysgV2ViQ29yZS9jb25maWcuaAkod29ya2luZyBjb3B5KQpAQCAtMTA2LDYgKzEwNiw3IEBACiAj
dW5kZWYgRU5BQkxFX0lOU1BFQ1RPUiAgLy8gRW5hYmxlZCBieSBkZWZhdWx0IGluIFBsYXRmb3Jt
LmgKICNkZWZpbmUgRU5BQkxFX0lOU1BFQ1RPUiAwCiAjZGVmaW5lIEVOQUJMRV9FVkVOVF9TT1VS
Q0UgMAorI2RlZmluZSBFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIDEKICNlbmRpZiAvKiBQTEFU
Rk9STShBTkRST0lEKSAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKSW5kZXg6IFdlYkNvcmUvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gNTk3NTgp
CisrKyBXZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3Jr
aW5nIGNvcHkpCkBAIC00Nyw2ICs0Nyw3IEBAIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJ
T04gPSBFTkFCTEUKIEVOQUJMRV9EQVRBQkFTRSA9IEVOQUJMRV9EQVRBQkFTRTsKIEVOQUJMRV9E
QVRBR1JJRCA9IDsKIEVOQUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElTVDsKK0VOQUJMRV9E
RVZJQ0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfRE9NX1NUT1JBR0UgPSBFTkFCTEVfRE9NX1NU
T1JBR0U7CiBFTkFCTEVfRVZFTlRTT1VSQ0UgPSBFTkFCTEVfRVZFTlRTT1VSQ0U7CiBFTkFCTEVf
RklMVEVSUyA9IEVOQUJMRV9GSUxURVJTOwpAQCAtNzgsNCArNzksNCBAQCBFTkFCTEVfWEhUTUxN
UCA9IDsKIEVOQUJMRV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxF
X1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVf
M0RfUkVOREVSSU5HKSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NB
R0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFT
RSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ET01fU1RP
UkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJ
TEVfUkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVfR0VPTE9DQVRJT04pICQo
RU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVf
SkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9OT1RJRklDQVRJ
T05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BST0dSRVNT
X1RBRykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChFTkFCTEVfU0hBUkVEX1dP
UktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZH
X0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19G
T05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVO
QUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVf
V09SS0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQp
OworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9SRU5E
RVJJTkcpICQoRU5BQkxFX0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAk
KEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVO
QUJMRV9EQVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RFVklDRV9PUklFTlRB
VElPTikgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJM
RV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQo
RU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVY
RURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhN
TCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJ
T05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRC
T1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19B
TklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJ
TkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkg
JChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAk
KEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxF
X1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xMTY3LDYgKzExNjcsMTAg
QEAKIAkJNTk2MjI5NzgxMTMzRUZENzAwREM0Q0JCIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25DYWNo
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTYy
Mjk3NzExMzNFRkQ3MDBEQzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmNwcCAqLzsg
fTsKIAkJNTk2MjI5N0ExMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25DYWNo
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTk2MjI5
NzkxMTMzRUZFMjAwREM0Q0JCIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25DYWNoZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTU5OUU3NTkwMTEwNTVB
MUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1OUE4NUVBMjExOUQ2
OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMTExOUQ2OEQ5MDBERUYxRUYg
LyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi87IH07CisJCTU5QTg1RUE0MTE5RDY4RUMw
MERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2
aWNlT3JpZW50YXRpb25FdmVudC5oICovOyB9OworCQk1OUE4NjAwNjExOURBRjdGMDBERUYxRUYg
LyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTg2MDA1MTE5REFGN0YwMERFRjFFRiAvKiBKU0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuY3BwICovOyB9OworCQk1OUE4NjAwODExOURBRkExMDBERUYxRUYg
LyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NjAwNzExOURBRkExMDBERUYxRUYgLyogSlNEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmggKi87IH07CiAJCTU5QTlFN0IwMTEwNDc1ODgwMERGQjRDMSAvKiBK
YXZhSW5zdGFuY2VKU0MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTlBOUU3QUYxMTA0NzU4ODAwREZCNEMxIC8qIEphdmFJbnN0YW5jZUpTQy5jcHAg
Ki87IH07CiAJCTU5QTlFN0IyMTEwNDc1OTQwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QTlFN0IxMTEw
NDc1OTQwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuaCAqLzsgfTsKIAkJNTlCNTk3NzMxMTA4
NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OUI1OTc3MjExMDg2NTZCMDA3MTU5RTggLyogQnJpZGdlSlND
LmNwcCAqLzsgfTsKQEAgLTY3NzAsNiArNjc3NCwxMSBAQAogCQk1OTYyMjk3NzExMzNFRkQ3MDBE
QzRDQkIgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEdlb2xvY2F0aW9uUG9zaXRpb25DYWNoZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5NjIyOTc5MTEzM0VGRTIwMERDNENCQiAvKiBHZW9sb2Nh
dGlvblBvc2l0aW9uQ2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2Vv
bG9jYXRpb25Qb3NpdGlvbkNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5
OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gQnJpZGdlLmg7IHBhdGggPSBicmlkZ2UvQnJpZGdlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUExMTE5RDY4RDkwMERFRjFFRiAvKiBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERl
dmljZU9yaWVudGF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUFBMTE5RDdCNkUwMERFRjFFRiAvKiBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlBODYw
MDUxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUE4NjAwNzExOURBRkExMDBERUYx
RUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1OUE5RTdBRjExMDQ3NTg4MDBERkI0QzEgLyogSmF2YUluc3RhbmNlSlNDLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEphdmFJbnN0YW5jZUpTQy5j
cHA7IHBhdGggPSBqc2MvSmF2YUluc3RhbmNlSlNDLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNTlBOUU3QjExMTA0NzU5NDAwREZCNEMxIC8qIEphdmFJbnN0YW5jZUpTQy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKYXZhSW5zdGFuY2VKU0MuaDsgcGF0aCA9
IGpzYy9KYXZhSW5zdGFuY2VKU0MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlC
NTk3NzIxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBCcmlkZ2VKU0MuY3BwOyBwYXRoID0gYnJpZGdlL2pzYy9Ccmlk
Z2VKU0MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQyMTQsNiArMTQyMjMs
OCBAQAogCQlBODNCNzkxMDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAqLyA9IHsKIAkJCWlzYSA9
IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNTlBODYwMDcxMTlEQUZBMTAwREVGMUVG
IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovLAorCQkJCTU5QTg2MDA1MTE5REFGN0Yw
MERFRjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovLAogCQkJCTY1REYzMUQ4
MDlEMUMxMjIwMDBCRTMyNSAvKiBKU0F0dHIuY3BwICovLAogCQkJCTY1REYzMUQ5MDlEMUMxMjMw
MDBCRTMyNSAvKiBKU0F0dHIuaCAqLywKIAkJCQk5M0Y5Qjc5RTBCQTYwMzI2MDA4NTQwNjQgLyog
SlNDREFUQVNlY3Rpb24uY3BwICovLApAQCAtMTY0MDgsNiArMTY0MTksOSBAQAogCQlGNTIzRDMy
NDAyREU0NDc4MDE4NjM1Q0EgLyogZG9tICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKKwkJCQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYgLyogRGV2aWNlT3JpZW50
YXRpb25FdmVudC5pZGwgKi8sCisJCQkJNTlBODVFQTMxMTlENjhFQzAwREVGMUVGIC8qIERldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKKwkJCQk1OUE4NUVBMTExOUQ2OEQ5MDBERUYxRUYgLyog
RGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8sCiAJCQkJRTFDNERFNkQwRUE3NUM2NTAwMjND
Q0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5jcHAgKi8sCiAJCQkJRTFDNERFNjgwRUE3NUMxRTAwMjND
Q0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5oICovLAogCQkJCUE4QzRBN0ZDMDlENTYzMjcwMDAzQUM4
RCAvKiBBdHRyLmNwcCAqLywKQEAgLTE5MjY5LDYgKzE5MjgzLDggQEAKIAkJCQk5N0U4QjNDMzEx
QTI4OTA4MDAxNjk0MDkgLyogSFRNTDVUb2tlbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MTAz
OEIxMUEyOTQ3MDAwREJENTBFIC8qIEhUTUw1VG9rZW5pemVyLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk1MTMyN0Q2MDExQTMzQTJCMDA0RjlENjUgLyogU2lua0RvY3VtZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQk1OUE4NUVBNDExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTlBODYwMDgxMTlEQUZBMTAwREVGMUVGIC8qIEpTRGV2
aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZv
ckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC0yMTU1MSw2ICsyMTU2Nyw4
IEBACiAJCQkJOTdFOEIzNTYxMUEyM0NFMjAwMTY5NDA5IC8qIEhUTUw1TGV4ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTg3MTAzOEExMUEyOTQ3MDAwREJENTBFIC8qIEhUTUw1VG9rZW5pemVy
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxMzI3RDYxMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5r
RG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTlBODVFQTIxMTlENjhEOTAwREVGMUVG
IC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTlBODYw
MDYxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0g
MDsKIAkJfTsKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAkocmV2aXNp
b24gNTk3NTgpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMiwxMSArMzIsMTMgQEAKICNpbmNsdWRlICJDbGlwYm9hcmQuaCIKICNp
bmNsdWRlICJDb21wb3NpdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiQ3VzdG9tRXZlbnQuaCIKKyNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNp
bmNsdWRlICJKU0JlZm9yZUxvYWRFdmVudC5oIgogI2luY2x1ZGUgIkpTQ2xpcGJvYXJkLmgiCiAj
aW5jbHVkZSAiSlNDdXN0b21FdmVudC5oIgogI2luY2x1ZGUgIkpTQ29tcG9zaXRpb25FdmVudC5o
IgorI2luY2x1ZGUgIkpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogI2luY2x1ZGUgIkpTRXJy
b3JFdmVudC5oIgogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogI2luY2x1ZGUgIkpTSURC
RXJyb3JFdmVudC5oIgpAQCAtMTcxLDYgKzE3MywxMCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRl
KiBleGVjLCBKU0RPTUdsb2JhCiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX09CSkVDVF9X
UkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgUG9wU3RhdGVFdmVudCwgZXZlbnQpOwogICAgIGVs
c2UgaWYgKGV2ZW50LT5pc0N1c3RvbUV2ZW50KCkpCiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVf
RE9NX09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgQ3VzdG9tRXZlbnQsIGV2ZW50
KTsKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgIGVsc2UgaWYgKGV2ZW50LT5p
c0RldmljZU9yaWVudGF0aW9uRXZlbnQoKSkKKyAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01f
T0JKRUNUX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
LCBldmVudCk7CisjZW5kaWYKICAgICBlbHNlCiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9N
X09CSkVDVF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgRXZlbnQsIGV2ZW50KTsKIApJbmRl
eDogV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5jcHAJKHJldmlz
aW9uIDU5NzU4KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3RvbS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDcgQEAKICNpbmNsdWRlICJWOENsaXBib2Fy
ZC5oIgogI2luY2x1ZGUgIlY4Q29tcG9zaXRpb25FdmVudC5oIgogI2luY2x1ZGUgIlY4Q3VzdG9t
RXZlbnQuaCIKKyNpbmNsdWRlICJWOERldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRl
ICJWOEVycm9yRXZlbnQuaCIKICNpbmNsdWRlICJWOElEQkVycm9yRXZlbnQuaCIKICNpbmNsdWRl
ICJWOElEQlN1Y2Nlc3NFdmVudC5oIgpAQCAtMTUzLDYgKzE1NCwxMCBAQCB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gdG9WOChFdmVudCogaW1wbCkKICNlbmRpZgogICAgIGlmIChpbXBsLT5pc0JlZm9y
ZUxvYWRFdmVudCgpKQogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNfY2FzdDxCZWZvcmVMb2Fk
RXZlbnQqPihpbXBsKSk7CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAo
aW1wbC0+aXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkpCisgICAgICAgIHJldHVybiB0b1Y4KHN0
YXRpY19jYXN0PERldmljZU9yaWVudGF0aW9uRXZlbnQqPihpbXBsKSk7CisjZW5kaWYKICAgICBp
ZiAoaW1wbC0+aXNDdXN0b21FdmVudCgpKQogICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNfY2Fz
dDxDdXN0b21FdmVudCo+KGltcGwpKTsKICAgICByZXR1cm4gVjhFdmVudDo6d3JhcChpbXBsKTsK
SW5kZXg6IFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwCShyZXZpc2lvbiAwKQor
KysgV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNjIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxMCwgVGhlIEFuZHJvaWQgT3BlbiBT
b3VyY2UgUHJvamVjdAorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQor
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmgiCisKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0RldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9y
aWVudGF0aW9uRXZlbnQoKQorICAgIDogbV9hbHBoYSgwKQorICAgICwgbV9iZXRhKDApCisgICAg
LCBtX2dhbW1hKDApCit7Cit9CisKK0RldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVu
dGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGRvdWJsZSBhbHBoYSwg
ZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSkKKyAgICA6IEV2ZW50KGV2ZW50VHlwZSwgZmFsc2Us
IGZhbHNlKSAvLyBDYW4ndCBidWJibGUsIG5vdCBjYW5jZWxhYmxlCisgICAgLCBtX2FscGhhKGFs
cGhhKQorICAgICwgbV9iZXRhKGJldGEpCisgICAgLCBtX2dhbW1hKGdhbW1hKQoreworfQorCit2
b2lkIERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNv
bnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZSwgYm9vbCBjYW5jZWxh
YmxlLCBkb3VibGUgYWxwaGEsIGRvdWJsZSBiZXRhLCBkb3VibGUgZ2FtbWEpCit7CisgICAgaWYg
KGRpc3BhdGNoZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW5pdEV2ZW50KGV2ZW50VHlw
ZSwgY2FuQnViYmxlLCBjYW5jZWxhYmxlKTsKKworICAgIG1fYWxwaGEgPSBhbHBoYTsKKyAgICBt
X2JldGEgPSBiZXRhOworICAgIG1fZ2FtbWEgPSBnYW1tYTsKK30KKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKSW5kZXg6IFdl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgJKHJldmlzaW9uIDApCisrKyBXZWJDb3JlL2Rv
bS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjMgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgMjAxMCwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
KyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25FdmVudF9oCisjZGVmaW5lIERldmljZU9y
aWVudGF0aW9uRXZlbnRfaAorCisjaW5jbHVkZSAiRE9NV2luZG93LmgiCisjaW5jbHVkZSAiRXZl
bnQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkV2
ZW50IDogcHVibGljIEV2ZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50PiBjcmVhdGUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KTsKKyAgICB9CisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gY3JlYXRlKGNvbnN0IEF0b21pY1N0cmluZyYg
ZXZlbnRUeXBlLCBkb3VibGUgYWxwaGEsIGRvdWJsZSBiZXRhLCBkb3VibGUgZ2FtbWEpCisgICAg
eworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uRXZlbnQoZXZl
bnRUeXBlLCBhbHBoYSwgYmV0YSwgZ2FtbWEpKTsKKyAgICB9CisKKyAgICB2b2lkIGluaXREZXZp
Y2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNh
bkJ1YmJsZSwgYm9vbCBjYW5jZWxhYmxlLCBkb3VibGUgYWxwaGEsIGRvdWJsZSBiZXRhLCBkb3Vi
bGUgZ2FtbWEpOworICAgIGRvdWJsZSBhbHBoYSgpIHsgcmV0dXJuIG1fYWxwaGE7IH0KKyAgICBk
b3VibGUgYmV0YSgpIHsgcmV0dXJuIG1fYmV0YTsgfQorICAgIGRvdWJsZSBnYW1tYSgpIHsgcmV0
dXJuIG1fZ2FtbWE7IH0KKworICAgIHZpcnR1YWwgYm9vbCBpc0RldmljZU9yaWVudGF0aW9uRXZl
bnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisKK3ByaXZhdGU6CisgICAgRGV2aWNlT3JpZW50
YXRpb25FdmVudCgpOworICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudFR5cGUsIGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSk7
CisKKyAgICBkb3VibGUgbV9hbHBoYTsKKyAgICBkb3VibGUgbV9iZXRhOworICAgIGRvdWJsZSBt
X2dhbW1hOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRGV2aWNl
T3JpZW50YXRpb25FdmVudF9oCkluZGV4OiBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2
ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50
LmlkbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQu
aWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACisvKgorICogQ29weXJpZ2h0IDIwMTAs
IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCittb2R1bGUgY29yZSB7CisK
KyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1ERVZJQ0VfT1JJRU5UQVRJT04K
KyAgICBdIERldmljZU9yaWVudGF0aW9uRXZlbnQgOiBFdmVudCB7CisgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBkb3VibGUgYWxwaGE7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBkb3Vi
bGUgYmV0YTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGRvdWJsZSBnYW1tYTsKKyAgICAg
ICAgdm9pZCBpbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChpbiBET01TdHJpbmcgdHlwZUFyZywg
aW4gYm9vbGVhbiBjYW5CdWJibGVBcmcsIGluIGJvb2xlYW4gY2FuY2VsYWJsZUFyZywgaW4gZG91
YmxlIGFscGhhLCBpbiBkb3VibGUgYmV0YSwgaW4gZG91YmxlIGdhbW1hKTsKKyAgICB9OworCit9
CkluZGV4OiBXZWJDb3JlL2RvbS9FdmVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20v
RXZlbnQuY3BwCShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYkNvcmUvZG9tL0V2ZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjEyLDYgKzIxMiwxMyBAQCBib29sIEV2ZW50Ojppc1RvdWNoRXZlbnQo
KSBjb25zdAogfQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorYm9v
bCBFdmVudDo6aXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4g
ZmFsc2U7Cit9CisjZW5kaWYKKwogYm9vbCBFdmVudDo6ZnJvbVVzZXJHZXN0dXJlKCkKIHsKICAg
ICBpZiAoIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKSW5k
ZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRXZlbnQu
aAkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL2RvbS9FdmVudC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0xMzksNiArMTM5LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIEVOQUJMRShUT1VD
SF9FVkVOVFMpCiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc1RvdWNoRXZlbnQoKSBjb25zdDsKICNl
bmRpZgorI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgICAgIHZpcnR1YWwgYm9v
bCBpc0RldmljZU9yaWVudGF0aW9uRXZlbnQoKSBjb25zdDsKKyNlbmRpZgogICAgICAgICBib29s
IGZyb21Vc2VyR2VzdHVyZSgpOwogICAgICAgICAKICAgICAgICAgYm9vbCBwcm9wYWdhdGlvblN0
b3BwZWQoKSBjb25zdCB7IHJldHVybiBtX3Byb3BhZ2F0aW9uU3RvcHBlZCB8fCBtX2ltbWVkaWF0
ZVByb3BhZ2F0aW9uU3RvcHBlZDsgfQpJbmRleDogV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAkocmV2aXNpb24gNTk3NTgpCisr
KyBXZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDYgKzQ5LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKGNvcHkpIFwKICAgICBtYWNybyhjdXQp
IFwKICAgICBtYWNybyhkYmxjbGljaykgXAorICAgIG1hY3JvKGRldmljZW9yaWVudGF0aW9uKSBc
CiAgICAgbWFjcm8oZGlzcGxheSkgXAogICAgIG1hY3JvKGRvd25sb2FkaW5nKSBcCiAgICAgbWFj
cm8oZHJhZykgXApJbmRleDogV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkocmV2aXNpb24gNTk3NTgpCisrKyBXZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmgJKHdvcmtpbmcgY29weSkKQEAgLTMyNSw2ICszMjUsMTAgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKG9y
aWVudGF0aW9uY2hhbmdlKTsKICNlbmRpZgogCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElP
TikKKyAgICAgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihkZXZpY2VvcmllbnRh
dGlvbik7CisjZW5kaWYKKwogICAgICAgICBERUZJTkVfTUFQUEVEX0FUVFJJQlVURV9FVkVOVF9M
SVNURU5FUih3ZWJraXRhbmltYXRpb25zdGFydCwgd2Via2l0QW5pbWF0aW9uU3RhcnQpOwogICAg
ICAgICBERUZJTkVfTUFQUEVEX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUih3ZWJraXRhbmltYXRp
b25pdGVyYXRpb24sIHdlYmtpdEFuaW1hdGlvbkl0ZXJhdGlvbik7CiAgICAgICAgIERFRklORV9N
QVBQRURfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKHdlYmtpdGFuaW1hdGlvbmVuZCwgd2Via2l0
QW5pbWF0aW9uRW5kKTsKSW5kZXg6IFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCShyZXZpc2lvbiA1OTc1OCkKKysrIFdl
YkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yOTksNiArMjk5LDgg
QEAgbW9kdWxlIHdpbmRvdyB7CiAgICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0aW9uYWw9VE9VQ0hf
RVZFTlRTLEVuYWJsZWRBdFJ1bnRpbWVdIEV2ZW50TGlzdGVuZXIgb250b3VjaGVuZDsKICAgICAg
ICAgYXR0cmlidXRlIFtDb25kaXRpb25hbD1UT1VDSF9FVkVOVFMsRW5hYmxlZEF0UnVudGltZV0g
RXZlbnRMaXN0ZW5lciBvbnRvdWNoY2FuY2VsOwogCisgICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0
aW9uYWw9REVWSUNFX09SSUVOVEFUSU9OXSBFdmVudExpc3RlbmVyIG9uZGV2aWNlb3JpZW50YXRp
b247CisKICAgICAgICAgLy8gRXZlbnRUYXJnZXQgaW50ZXJmYWNlCiAgICAgICAgIFtDdXN0b21d
IHZvaWQgYWRkRXZlbnRMaXN0ZW5lcihpbiBET01TdHJpbmcgdHlwZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW4gRXZlbnRMaXN0ZW5lciBsaXN0ZW5lciwKSW5kZXg6
IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1OTc1OCkKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJsb2NrICA8c3RldmVibG9ja0Bn
b29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9uCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAorCisgICAgICAgIEFkZHMg
RU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9qZWN0IGZpbGUsIGFsd2F5cyBk
aXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnOgorCiAyMDEwLTA1LTE4ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCkluZGV4OiBXZWJLaXQvbWFjL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMv
Q29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDU5NzU4KQor
KysgV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29y
a2luZyBjb3B5KQpAQCAtNDcsNiArNDcsNyBAQCBFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FU
SU9OID0gRU5BQkxFCiBFTkFCTEVfREFUQUJBU0UgPSBFTkFCTEVfREFUQUJBU0U7CiBFTkFCTEVf
REFUQUdSSUQgPSA7CiBFTkFCTEVfREFUQUxJU1QgPSBFTkFCTEVfREFUQUxJU1Q7CitFTkFCTEVf
REVWSUNFX09SSUVOVEFUSU9OID0gOwogRU5BQkxFX0RPTV9TVE9SQUdFID0gRU5BQkxFX0RPTV9T
VE9SQUdFOwogRU5BQkxFX0VWRU5UU09VUkNFID0gRU5BQkxFX0VWRU5UU09VUkNFOwogRU5BQkxF
X0ZJTFRFUlMgPSBFTkFCTEVfRklMVEVSUzsKQEAgLTc4LDQgKzc5LDQgQEAgRU5BQkxFX1hIVE1M
TVAgPSA7CiBFTkFCTEVfWFBBVEggPSBFTkFCTEVfWFBBVEg7CiBFTkFCTEVfWFNMVCA9IEVOQUJM
RV9YU0xUOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9DQU5WQVMpICQoRU5BQkxF
XzNEX1JFTkRFUklORykgJChFTkFCTEVfQkxPQl9TTElDRSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNT
QUdJTkcpICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJB
U0UpICQoRU5BQkxFX0RBVEFHUklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfRE9NX1NU
T1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9G
SUxFX1JFQURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAk
KEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxF
X0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVT
U19UQUcpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9X
T1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NW
R19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdf
Rk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChF
TkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxF
X1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xU
KTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVO
REVSSU5HKSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykg
JChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChF
TkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5U
QVRJT04pICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFC
TEVfRklMVEVSUykgJChFTkFCTEVfRklMRV9SRUFERVIpICQoRU5BQkxFX0ZJTEVfV1JJVEVSKSAk
KEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRI
TUwpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FU
SU9OUykgJChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVOQUJMRV9SVUJZKSAkKEVOQUJMRV9TQU5E
Qk9YKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdf
QU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19C
SU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1Qp
ICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykg
JChFTkFCTEVfV01MKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJM
RV9YUEFUSCkgJChFTkFCTEVfWFNMVCk7CkluZGV4OiBXZWJLaXRMaWJyYXJpZXMvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYktpdExpYnJhcmllcy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NzU4
KQorKysgV2ViS2l0TGlicmFyaWVzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDE1IEBACisyMDEwLTA1LTE5ICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxvY2tAZ29vZ2xlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcm92aWRl
IGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKworICAgICAgICBBZGRzIEVOQUJMRV9ERVZJ
Q0VfT1JJRU5UQVRJT04gdG8gVmlzdWFsU3R1ZGlvIHByb2plY3QgZmlsZXMsIGFsd2F5cyBkaXNh
YmxlZC4KKworICAgICAgICAqIHdpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnZzcHJv
cHM6CisgICAgICAgICogd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXNDYWlyby52c3By
b3BzOgorCiAyMDEwLTA0LTA5ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrLgpJbmRleDogV2ViS2l0TGli
cmFyaWVzL3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnZzcHJvcHMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnZz
cHJvcHMJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy92c3By
b3BzL0ZlYXR1cmVEZWZpbmVzLnZzcHJvcHMJKHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBA
CiAJPgogICA8VG9vbAogCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQlQcmVwcm9jZXNzb3JE
ZWZpbml0aW9ucz0iJChFTkFCTEVfM0RfQ0FOVkFTKTskKEVOQUJMRV8zRF9SRU5ERVJJTkcpOyQo
RU5BQkxFX0JMT0JfU0xJQ0UpOyQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9D
TElFTlRfQkFTRURfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0RBVEFCQVNFKTskKEVOQUJMRV9EQVRB
R1JJRCk7JChFTkFCTEVfREFUQUxJU1QpOyQoRU5BQkxFX0RPTV9TVE9SQUdFKTskKEVOQUJMRV9F
VkVOVFNPVVJDRSk7JChFTkFCTEVfRklMVEVSUyk7JChFTkFCTEVfRklMRV9SRUFERVIpOyQoRU5B
QkxFX0ZJTEVfV1JJVEVSKTskKEVOQUJMRV9HRU9MT0NBVElPTik7JChFTkFCTEVfSUNPTkRBVEFC
QVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX05PVElGSUNBVElPTlMpOyQoRU5BQkxFX09G
RkxJTkVfV0VCX0FQUExJQ0FUSU9OUyk7JChFTkFCTEVfUlVCWSk7JChFTkFCTEVfU0FOREJPWCk7
JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX1NWRyk7JChFTkFCTEVfU1ZHX0FOSU1B
VElPTik7JChFTkFCTEVfU1ZHX0FTX0lNQUdFKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElO
R1MpOyQoRU5BQkxFX1NWR19GT05UUyk7JChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKTskKEVO
QUJMRV9TVkdfVVNFKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX1NPQ0tFVFMpOyQoRU5B
QkxFX1dNTCk7JChFTkFCTEVfV09SS0VSUyk7JChFTkFCTEVfWEhUTUxNUCk7JChFTkFCTEVfWFBB
VEgpOyQoRU5BQkxFX1hTTFQpIgorCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iJChFTkFCTEVf
M0RfQ0FOVkFTKTskKEVOQUJMRV8zRF9SRU5ERVJJTkcpOyQoRU5BQkxFX0JMT0JfU0xJQ0UpOyQo
RU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJ
T04pOyQoRU5BQkxFX0RBVEFCQVNFKTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJ
U1QpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVfRE9NX1NUT1JBR0UpOyQo
RU5BQkxFX0VWRU5UU09VUkNFKTskKEVOQUJMRV9GSUxURVJTKTskKEVOQUJMRV9GSUxFX1JFQURF
Uik7JChFTkFCTEVfRklMRV9XUklURVIpOyQoRU5BQkxFX0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9J
Q09OREFUQUJBU0UpOyQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpOyQoRU5BQkxFX0pBVkFTQ1JJ
UFRfREVCVUdHRVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTk9USUZJQ0FUSU9OUyk7JChF
TkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKTskKEVOQUJMRV9SVUJZKTskKEVOQUJMRV9T
QU5EQk9YKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfU1ZHKTskKEVOQUJMRV9T
VkdfQU5JTUFUSU9OKTskKEVOQUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5BQkxFX1NWR19ET01fT0JK
Q19CSU5ESU5HUyk7JChFTkFCTEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpF
Q1QpOyQoRU5BQkxFX1NWR19VU0UpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfU09DS0VU
Uyk7JChFTkFCTEVfV01MKTskKEVOQUJMRV9XT1JLRVJTKTskKEVOQUJMRV9YSFRNTE1QKTskKEVO
QUJMRV9YUEFUSCk7JChFTkFCTEVfWFNMVCkiCiAJLz4KICAgPFVzZXJNYWNybwogCQlOYW1lPSJF
TkFCTEVfM0RfQ0FOVkFTIgpAQCAtNTIsNiArNTIsMTEgQEAKIAkJUGVyZm9ybUVudmlyb25tZW50
U2V0PSJ0cnVlIgogCS8+CiAgIDxVc2VyTWFjcm8KKwkJTmFtZT0iRU5BQkxFX0RFVklDRV9PUklF
TlRBVElPTiIKKwkJVmFsdWU9IiIKKwkJUGVyZm9ybUVudmlyb25tZW50U2V0PSJ0cnVlIgorCS8+
CisgIDxVc2VyTWFjcm8KIAkJTmFtZT0iRU5BQkxFX0RPTV9TVE9SQUdFIgogCQlWYWx1ZT0iRU5B
QkxFX0RPTV9TVE9SQUdFIgogCQlQZXJmb3JtRW52aXJvbm1lbnRTZXQ9InRydWUiCkluZGV4OiBX
ZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXNDYWlyby52c3By
b3BzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9GZWF0
dXJlRGVmaW5lc0NhaXJvLnZzcHJvcHMJKHJldmlzaW9uIDU5NzU4KQorKysgV2ViS2l0TGlicmFy
aWVzL3dpbi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8udnNwcm9wcwkod29ya2lu
ZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKIAk+CiAgIDxUb29sCiAJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiCi0JCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSIkKEVOQUJMRV8zRF9DQU5WQVMpOyQo
RU5BQkxFXzNEX1JFTkRFUklORyk7JChFTkFCTEVfQkxPQl9TTElDRSk7JChFTkFCTEVfQ0hBTk5F
TF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTik7JChFTkFCTEVf
REFUQUJBU0UpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRBTElTVCk7JChFTkFCTEVf
RE9NX1NUT1JBR0UpOyQoRU5BQkxFX0VWRU5UU09VUkNFKTskKEVOQUJMRV9GSUxURVJTKTskKEVO
QUJMRV9GSUxFX1JFQURFUik7JChFTkFCTEVfRklMRV9XUklURVIpOyQoRU5BQkxFX0dFT0xPQ0FU
SU9OKTskKEVOQUJMRV9JQ09OREFUQUJBU0UpOyQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpOyQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTk9U
SUZJQ0FUSU9OUyk7JChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKTskKEVOQUJMRV9T
SEFSRURfV09SS0VSUyk7JChFTkFCTEVfU1ZHKTskKEVOQUJMRV9TVkdfQU5JTUFUSU9OKTskKEVO
QUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFC
TEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpOyQoRU5BQkxFX1NWR19V
U0UpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfU09DS0VUUyk7JChFTkFCTEVfV01MKTsk
KEVOQUJMRV9XT1JLRVJTKTskKEVOQUJMRV9YSFRNTE1QKTskKEVOQUJMRV9YUEFUSCk7JChFTkFC
TEVfWFNMVCkiCisJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSIkKEVOQUJMRV8zRF9DQU5WQVMp
OyQoRU5BQkxFXzNEX1JFTkRFUklORyk7JChFTkFCTEVfQkxPQl9TTElDRSk7JChFTkFCTEVfQ0hB
Tk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTik7JChFTkFC
TEVfREFUQUJBU0UpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRBTElTVCk7JChFTkFC
TEVfREVWSUNFX09SSUVOVEFUSU9OKTskKEVOQUJMRV9ET01fU1RPUkFHRSk7JChFTkFCTEVfRVZF
TlRTT1VSQ0UpOyQoRU5BQkxFX0ZJTFRFUlMpOyQoRU5BQkxFX0ZJTEVfUkVBREVSKTskKEVOQUJM
RV9GSUxFX1dSSVRFUik7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0lDT05EQVRBQkFT
RSk7JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk7JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dF
Uik7JChFTkFCTEVfTUFUSE1MKTskKEVOQUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9PRkZM
SU5FX1dFQl9BUFBMSUNBVElPTlMpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTskKEVOQUJMRV9T
VkcpOyQoRU5BQkxFX1NWR19BTklNQVRJT04pOyQoRU5BQkxFX1NWR19BU19JTUFHRSk7JChFTkFC
TEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9TVkdfRk9OVFMpOyQoRU5BQkxFX1NW
R19GT1JFSUdOX09CSkVDVCk7JChFTkFCTEVfU1ZHX1VTRSk7JChFTkFCTEVfVklERU8pOyQoRU5B
QkxFX1dFQl9TT0NLRVRTKTskKEVOQUJMRV9XTUwpOyQoRU5BQkxFX1dPUktFUlMpOyQoRU5BQkxF
X1hIVE1MTVApOyQoRU5BQkxFX1hQQVRIKTskKEVOQUJMRV9YU0xUKSIKIAkvPgogICA8VXNlck1h
Y3JvCiAJCU5hbWU9IkVOQUJMRV8zRF9DQU5WQVMiCkBAIC01Miw2ICs1MiwxMSBAQAogCQlQZXJm
b3JtRW52aXJvbm1lbnRTZXQ9InRydWUiCiAJLz4KICAgPFVzZXJNYWNybworCQlOYW1lPSJFTkFC
TEVfREVWSUNFX09SSUVOVEFUSU9OIgorCQlWYWx1ZT0iIgorCQlQZXJmb3JtRW52aXJvbm1lbnRT
ZXQ9InRydWUiCisJLz4KKyAgPFVzZXJNYWNybwogCQlOYW1lPSJFTkFCTEVfRE9NX1NUT1JBR0Ui
CiAJCVZhbHVlPSJFTkFCTEVfRE9NX1NUT1JBR0UiCiAJCVBlcmZvcm1FbnZpcm9ubWVudFNldD0i
dHJ1ZSIKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NzU4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTAtMDUtMTkgIFN0ZXZlIEJsb2Nr
ICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAor
CisgICAgICAgIE1vZGlmaWVzIGV4aXN0aW5nIGZhc3QvZG9tL1dpbmRvdyB0ZXN0cyB0byBza2lw
IHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uIHVudGlsCisgICAgICAgIGl0IGlzIHdpZGVseSBz
dXBwb3J0ZWQuCisgICAgICAgIEFkZHMgbmV3IGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVy
dGllcy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbCB0byB0ZXN0CisgICAgICAgIHR5cGUgYW5k
IHByZXNlbmNlIG9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uLgorICAgICAgICBBZGRzIG5l
dyBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbiBkaXJlY3RvcnkgYW5kIGluaXRpYWwgdGVzdC4K
KyAgICAgICAgQWRkcyBhbGwgRGV2aWNlT3JpZW50YXRpb24gdGVzdHMgdG8gYWxsIHNraXBwZWQg
bGlzdHMuCisKKyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbjogQWRkZWQuCisg
ICAgICAgICogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2NyaXB0LXRlc3RzOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVzdHMvVEVNUExB
VEUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2Ny
aXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS5qczogQWRkZWQuCisgICAgICAgIChoYXNPbkRldmlj
ZU9yaWVudGF0aW9uUHJvcGVydHkpOgorICAgICAgICAqIGZhc3QvZG9tL0RldmljZU9yaWVudGF0
aW9uL3dpbmRvdy1wcm9wZXJ0eS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlw
dG9ycy5qczoKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24t
ZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMuaHRtbDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6CisgICAg
ICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1NraXBw
ZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0Zm9ybS93
aW4vU2tpcHBlZDoKKwogMjAxMC0wNS0xOSAgWmhlbnlhbyBNbyAgPHptb0Bnb29nbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ct
cHJvcGVydHktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9k
b20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxMyBAQAorVGVzdHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2aWNlb3Jp
ZW50YXRpb24gcHJvcGVydHkgaXMgcHJlc2VudC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgdHlwZW9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uID09ICdvYmplY3Qn
IGlzIHRydWUKK1BBU1MgaGFzT25EZXZpY2VPcmllbnRhdGlvblByb3BlcnR5KCkgaXMgdHJ1ZQor
UEFTUyAnb25kZXZpY2VvcmllbnRhdGlvbicgaW4gd2luZG93IGlzIHRydWUKK1BBU1Mgd2luZG93
Lmhhc093blByb3BlcnR5KCdvbmRldmljZW9yaWVudGF0aW9uJykgaXMgdHJ1ZQorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1w
cm9wZXJ0eS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNl
T3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJzY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9u
L3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2NyaXB0
LXRlc3RzL1RFTVBMQVRFLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTIgQEAKKzxodG1s
PgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291cmNl
cy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0
aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZT1VSX0pT
X0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVzdHMvd2luZG93LXByb3Bl
cnR5LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0
aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHkuanMJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVzdHMvd2luZG93LXBy
b3BlcnR5LmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE4IEBACitkZXNjcmlwdGlvbigiVGVz
dHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gcHJvcGVydHkgaXMgcHJlc2Vu
dC4iKTsKKworZnVuY3Rpb24gaGFzT25EZXZpY2VPcmllbnRhdGlvblByb3BlcnR5KCkKK3sKKyAg
ICBmb3IgKHZhciBwcm9wZXJ0eSBpbiB3aW5kb3cpIHsKKyAgICAgICAgaWYgKHByb3BlcnR5ID09
ICJvbmRldmljZW9yaWVudGF0aW9uIikKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0K
KyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3Nob3VsZEJlVHJ1ZSgidHlwZW9mIHdpbmRvdy5vbmRl
dmljZW9yaWVudGF0aW9uID09ICdvYmplY3QnIik7CitzaG91bGRCZVRydWUoImhhc09uRGV2aWNl
T3JpZW50YXRpb25Qcm9wZXJ0eSgpIik7CitzaG91bGRCZVRydWUoIidvbmRldmljZW9yaWVudGF0
aW9uJyBpbiB3aW5kb3ciKTsKK3Nob3VsZEJlVHJ1ZSgid2luZG93Lmhhc093blByb3BlcnR5KCdv
bmRldmljZW9yaWVudGF0aW9uJykiKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSBmYWxzZTsK
K3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24t
ZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0
IEBACitUaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNo
YWJsZSBmcm9tIHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiBvYmplY3QsIGFsb25nIHdp
dGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uIFtudWxsXQorCklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2
aWNlLW9yaWVudGF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVz
LW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDk0IEBA
Cis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNo
YWJsZSBmcm9tIHRoZSB3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbgorb2JqZWN0LCBhbG9uZyB3
aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+PC9wcmU+CisKKzxzY3Jp
cHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAKK3ZhciBsb2dCdWZmZXIgPSBbXTsKK2Z1bmN0aW9u
IGxvZyhzKQoreworICAgIGxvZ0J1ZmZlci5wdXNoKHMpOworfQorCit2YXIgcHJlID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3ByZScpOworZnVuY3Rpb24gZmx1c2hMb2coKQoreworICAgIHZh
ciBsb2dNZXNzYWdlID0gbG9nQnVmZmVyLmpvaW4oIiIpOworICAgIHByZS5hcHBlbmRDaGlsZChk
b2N1bWVudC5jcmVhdGVUZXh0Tm9kZShsb2dNZXNzYWdlKSk7Cit9CisKK2Z1bmN0aW9uIHRyeUV2
YWwoc3RyaW5nKQoreworICAgIHRyeSB7CisgICAgICAgIHJldHVybiBldmFsKHN0cmluZyk7Cisg
ICAgfSBjYXRjaCAoZSkgeworICAgICAgICByZXR1cm4gbmV3IFN0cmluZygiQ2F1Z2h0IGV4Y2Vw
dGlvbjogIiArIGUpOworICAgIH0KK30KKworZnVuY3Rpb24gdHlwZU9mTnVsbEF3YXJlKHZhbHVl
KQoreworICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIgJiYgdmFsdWUgPT0gbnVsbCkg
Ly87CisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKK30K
KworZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIgdmFsdWVU
eXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBlID09ICJv
YmplY3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKQor
ICAgICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9nVmFsdWUo
dmFsdWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsKKyAgICB2
YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERvbid0IHRh
aW50IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUgPT0gbG9n
QnVmZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG9uJ3Qg
dGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19fdmlzaXRl
ZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRlZEJ5TG9n
VmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBXb3Jr
IGFyb3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05XS8udGVz
dCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZpbml0ZSBy
ZWN1cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRl
ZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICAgICAgbG9nKHZhbHVlTmFtZSArICIgW3ByaW50ZWQg
YWJvdmUgYXMgIiArIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fICsgIl1cbiIp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbG9nKHZhbHVlTmFtZSArICIgIiArIHR5
cGVTdHJpbmdOdWxsQXdhcmUodmFsdWUpICsgIlxuIik7CisKKyAgICBpZiAodmFsdWVUeXBlID09
ICJvYmplY3QiKSB7CisgICAgICAgIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXyA9IHRydWU7
CisgICAgICAgIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fID0gdmFsdWVOYW1l
OworICAgICAgICBsb2dQcm9wZXJ0aWVzKHZhbHVlLCB2YWx1ZU5hbWUpOworICAgIH0KK30KKwor
ZnVuY3Rpb24gbG9nUHJvcGVydGllcyhvYmplY3QsIG9iamVjdE5hbWUpCit7CisgICAgdmFyIGFy
cmF5ID0gbmV3IEFycmF5OworICAgIGZvciAodmFyIHByb3BlcnR5IGluIG9iamVjdCkgeworICAg
ICAgICBhcnJheS5wdXNoKHByb3BlcnR5KTsKKyAgICB9CisgICAgYXJyYXkuc29ydCgpOworICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgdmFyIHBy
b3BlcnR5ID0gYXJyYXlbaV07CisgICAgICAgIGxvZ1ZhbHVlKG9iamVjdE5hbWUgKyAiLiIgKyBw
cm9wZXJ0eSk7CisgICAgfQorfQorCitsb2dWYWx1ZSgnd2luZG93Lm9uZGV2aWNlb3JpZW50YXRp
b24nKTsKK2ZsdXNoTG9nKCk7Cis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9t
L1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCShyZXZpc2lvbiA1OTc1OCkK
KysrIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4Miw4IEBAIHZhciBfX3NraXBfXyA9IHsKICAgICAid2lu
ZG93LmNsaWVudEluZm9ybWF0aW9uLmdlb2xvY2F0aW9uIiA6IDEsCiAgICAgIndpbmRvdy5CbG9i
LnByb3RvdHlwZS5zbGljZSIgOiAxLAogICAgICJ3aW5kb3cuRmlsZUVycm9yIiA6IDEsCi0gICAg
IndpbmRvdy5GaWxlUmVhZGVyIiA6IDEKKyAgICAid2luZG93LkZpbGVSZWFkZXIiIDogMSwKKyAg
ICAid2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24iIDogMQogfTsKIAogZnVuY3Rpb24gbG9nVmFs
dWUodmFsdWVOYW1lKQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10
ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3Jp
cHRvcnMuanMJKHJldmlzaW9uIDU5NzU4KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93
L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMJKHdvcmtpbmcgY29w
eSkKQEAgLTM3LDYgKzM3LDcgQEAgdmFyIF9fc2tpcF9fID0gewogICAgICJGbG9hdEFycmF5IiA6
IDEsCiAgICAgIkZpbGVFcnJvciIgOiAxLAogICAgICJGaWxlUmVhZGVyIiA6IDEsCisgICAgIm9u
ZGV2aWNlb3JpZW50YXRpb24iIDogMSwKICAgICAvLyBJZ25vcmUgdGhpcyBwcm9wZXJ0eSBiZWNh
dXNlIGl0IG9ubHkgYXBwZWFycyBpbiBkZWJ1ZyBidWlsZHMgYW5kIG5vdCBpbiByZWxlYXNlLgog
ICAgICJqc2NwcmludCIgOiAxCiB9OwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkocmV2aXNpb24gNTk3NTgpCisrKyBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHdvcmtp
bmcgY29weSkKQEAgLTI4MzgsMyArMjgzOCw3IEBAIEJVR1dLMzkxMDUgV0lOIExJTlVYIDogZWRp
dGluZy9zcGVsbGluZy8KIAogLy8gRmxha3kgdGVzdHMKIEJVRzQ0MjI5IFdJTiBMSU5VWCA6IGZh
c3QvbG9hZGVyL3JlY3Vyc2l2ZS1iZWZvcmUtdW5sb2FkLWNyYXNoLmh0bWwgPSBQQVNTIFRFWFQK
KworLy8gRGV2aWNlT3JpZW50YXRpb24gQVBJIG5vdCB5ZXQgaW1wbGVtZW50ZWQuCitERUZFUiBT
S0lQIDogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24gPSBURVhUCitERUZFUiBTS0lQIDogZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1s
ID0gVEVYVApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHJldmlzaW9uIDU5NzU4KQor
KysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTEx
NzksNiArMTE3OSw3IEBAIGZhc3QvZG9tL2NsaWVudC13aWR0aC1oZWlnaHQtcXVpcmtzLmh0bWwK
IGZhc3QvZG9tL2NsaWVudC13aWR0aC1oZWlnaHQuaHRtbAogZmFzdC9kb20vY3NzVGFyZ2V0LWNy
YXNoLmh0bWwKIGZhc3QvZG9tL2ZyYW1lLWxvYWRpbmctdmlhLWRvY3VtZW50LXdyaXRlLmh0bWwK
K2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sCiBmYXN0L2Rv
bS9HZW9sb2NhdGlvbi9jYWxsYmFjay1leGNlcHRpb24uaHRtbAogZmFzdC9kb20vR2VvbG9jYXRp
b24vZXJyb3IuaHRtbAogZmFzdC9kb20vR2VvbG9jYXRpb24vcGVybWlzc2lvbi1kZW5pZWQtYWxy
ZWFkeS1jbGVhci13YXRjaC5odG1sCkBAIC0xMjA0LDYgKzEyMDUsNyBAQCBmYXN0L2RvbS9TZWxl
Y3RvckFQSS9yZXNpZy1TZWxlY3RvcnNBUEktCiBmYXN0L2RvbS9XaW5kb3cvbmV3LXdpbmRvdy1v
cGVuZXIuaHRtbAogZmFzdC9kb20vV2luZG93L3dlYmtpdENvbnZlcnRQb2ludC5odG1sCiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LW9uRm9jdXMuaHRtbAorZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXJlc2l6ZS1hbmQtbW92ZS1hcmd1bWVudHMuaHRtbAogZmFzdC9kb20vV2luZG93L3dpbmRv
dy1yZXNpemUuaHRtbAogZmFzdC9kb20vV2luZG93L3dpbmRvdy14eS1wcm9wZXJ0aWVzLmh0bWwK
SW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCShyZXZpc2lvbiA1OTc1OCkKKysrIExheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC0xODgsMyArMTg4
LDcgQEAgc2Nyb2xsYmFycy9zY3JvbGxiYXItY2xpY2stZG9lcy1ub3QtYmx1cgogCiAjIEluZGV4
ZWREQiBpcyBub3QgeWV0IGVuYWJsZWQuCiBzdG9yYWdlL2luZGV4ZWRkYgorCisjIFRoaXMgcG9y
dCBkb2Vzbid0IHN1cHBvcnQgRGV2aWNlT3JpZW50YXRpb24uCitmYXN0L2RvbS9EZXZpY2VPcmll
bnRhdGlvbgorZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmll
bnRhdGlvbi5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJKHJldmlzaW9uIDU5NzU4
KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAt
NTA4OCwzICs1MDg4LDcgQEAgZWRpdGluZy9zcGVsbGluZy9jb250ZXh0LW1lbnUtc3VnZ2VzdGlv
bgogCiAjIEluZGV4ZWREQiBpcyBub3QgeWV0IGVuYWJsZWQuCiBzdG9yYWdlL2luZGV4ZWRkYgor
CisjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgRGV2aWNlT3JpZW50YXRpb24uCitmYXN0L2Rv
bS9EZXZpY2VPcmllbnRhdGlvbgorZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9u
LWRldmljZS1vcmllbnRhdGlvbi5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
U2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAko
cmV2aXNpb24gNTk3NTgpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkod29y
a2luZyBjb3B5KQpAQCAtODgzLDMgKzg4Myw3IEBAIGVkaXRpbmcvc3BlbGxpbmcvY29udGV4dC1t
ZW51LXN1Z2dlc3Rpb24KIAogIyBJbmRleGVkREIgaXMgbm90IHlldCBlbmFibGVkLgogc3RvcmFn
ZS9pbmRleGVkZGIKKworIyBUaGlzIHBvcnQgZG9lc24ndCBzdXBwb3J0IERldmljZU9yaWVudGF0
aW9uLgorZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24KK2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ct
cHJvcGVydGllcy1vbi1kZXZpY2Utb3JpZW50YXRpb24uaHRtbAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56602</attachid>
            <date>2010-05-20 09:43:26 -0700</date>
            <delta_ts>2010-05-20 10:37:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39210-20100520174324.patch</filename>
            <type>text/plain</type>
            <size>52483</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5ODQxKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMjAgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIx
MAorCisgICAgICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBYQ29kZSBwcm9q
ZWN0IGZpbGUsIGFsd2F5cyBkaXNhYmxlZC4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnOgorCiAyMDEwLTA1LTE5ICBHYXZpbiBCYXJyYWNsb3VnaCAg
PGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZiBHYXJl
bi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiA1OTg0MSkKKysrIEphdmFTY3JpcHRDb3JlL0Nv
bmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC00
Nyw2ICs0Nyw3IEBAIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04gPSBFTkFCTEUKIEVO
QUJMRV9EQVRBQkFTRSA9IEVOQUJMRV9EQVRBQkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IDsKIEVO
QUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElTVDsKK0VOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJ
T04gPSA7CiBFTkFCTEVfRE9NX1NUT1JBR0UgPSBFTkFCTEVfRE9NX1NUT1JBR0U7CiBFTkFCTEVf
RVZFTlRTT1VSQ0UgPSBFTkFCTEVfRVZFTlRTT1VSQ0U7CiBFTkFCTEVfRklMVEVSUyA9IEVOQUJM
RV9GSUxURVJTOwpAQCAtNzgsNCArNzksNCBAQCBFTkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJMRV9Y
UEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRV
UkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAk
KEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVf
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFU
QUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVf
RVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVO
QUJMRV9GSUxFX1dSSVRFUikgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRB
QkFTRSkgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJV
R0dFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9P
RkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVf
UlVCWSkgJChFTkFCTEVfU0FOREJPWCkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxF
X1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVO
QUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVf
U1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChF
TkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFC
TEVfWEhUTUxNUCkgJChFTkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJ
TkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxF
X0JMT0JfU0xJQ0UpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkg
JChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVf
RE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVO
QUJMRV9GSUxFX1JFQURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FU
SU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9Q
Uk9HUkVTU19UQUcpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NI
QVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5B
QkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJM
RV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VT
RSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQo
RU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJM
RV9YU0xUKTsKSW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
Q2hhbmdlTG9nCShyZXZpc2lvbiA1OTg0MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTAtMDUtMjAgIFN0ZXZlIEJsb2NrICA8c3RldmVi
bG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9uCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAorCisgICAgICAg
IFRlc3RzOiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHkuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmlj
ZS1vcmllbnRhdGlvbi5odG1sCisKKyAgICAgICAgQWRkcyBiaW5kaW5ncyBmb3IgRGV2aWNlT3Jp
ZW50YXRpb24gYXMgZGVmaW5lZCBpbgorICAgICAgICBodHRwOi8vZGV2LnczLm9yZy9nZW8vYXBp
L3NwZWMtc291cmNlLW9yaWVudGF0aW9uLmh0bWwKKyAgICAgICAgVGhpcyBpcyBndWFyZGVkIGJ5
IEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pIHdoaWNoIGlzIGN1cnJlbnRseSBkaXNhYmxlZCBv
bgorICAgICAgICBhbGwgcGxhdGZvcm1zIGJ1dCBBbmRyb2lkLgorCisgICAgICAgICogQW5kcm9p
ZC5kZXJpdmVkLmpzY2JpbmRpbmdzLm1rOgorICAgICAgICAqIEFuZHJvaWQuZGVyaXZlZC52OGJp
bmRpbmdzLm1rOgorICAgICAgICAqIEFuZHJvaWQubWs6CisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMuY3Bw
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR05VbWFrZWZpbGUu
YW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUucHJpOgorICAg
ICAgICAqIFdlYkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2ZW50
Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvVjgpOgorICAgICAgICAqIGRvbS9EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VP
cmllbnRhdGlvbkV2ZW50OjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KToK
KyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOiBBZGRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjphbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpiZXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uRXZlbnQ6OmdhbW1hKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRXZlbnQ6OmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAgICogZG9tL0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBkb20vRXZlbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnQ6OmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAg
ICAgICogZG9tL0V2ZW50Lmg6CisgICAgICAgICogZG9tL0V2ZW50TmFtZXMuaDoKKyAgICAgICAg
KiBwYWdlL0RPTVdpbmRvdy5oOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoKKwogMjAx
MC0wNS0xOSAgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4gIDxrZW5uZXRoQHdlYmtpdC5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCkluZGV4OiBXZWJDb3JlL0Fu
ZHJvaWQuZGVyaXZlZC5qc2NiaW5kaW5ncy5tawo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0FuZHJv
aWQuZGVyaXZlZC5qc2NiaW5kaW5ncy5tawkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJDb3JlL0Fu
ZHJvaWQuZGVyaXZlZC5qc2NiaW5kaW5ncy5tawkod29ya2luZyBjb3B5KQpAQCAtNDksNyArNDks
NyBAQCBqc19iaW5kaW5nX3NjcmlwdHMgOj0gJChhZGRwcmVmaXggJChMT0NBCiAJCQliaW5kaW5n
cy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBsIFwKIAkJKQogCi1GRUFUVVJFX0RFRklORVMg
Oj0gQU5EUk9JRF9PUklFTlRBVElPTl9TVVBQT1JUIEVOQUJMRV9UT1VDSF9FVkVOVFM9MSBFTkFC
TEVfREFUQUJBU0U9MSBFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TPTEgRU5BQkxFX0RP
TV9TVE9SQUdFPTEgRU5BQkxFX1ZJREVPPTEgRU5BQkxFX1dPUktFUlM9MSBFTkFCTEVfR0VPTE9D
QVRJT049MSBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkc9MQorRkVBVFVSRV9ERUZJTkVTIDo9IEFO
RFJPSURfT1JJRU5UQVRJT05fU1VQUE9SVCBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgRU5BQkxFX0RB
VEFCQVNFPTEgRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RP
UkFHRT0xIEVOQUJMRV9WSURFTz0xIEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9O
PTEgRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HPTEgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTj0x
CiAKICMgQ1NTCiBHRU4gOj0gXApAQCAtMTAzLDYgKzEwMyw3IEBAIEdFTiA6PSBcCiAgICAgJChp
bnRlcm1lZGlhdGVzKS9kb20vSlNDb21tZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvZG9t
L0pTRE9NQ29yZUV4Y2VwdGlvbi5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RPTUlt
cGxlbWVudGF0aW9uLmggXAorICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRGV2aWNlT3JpZW50
YXRpb25FdmVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2RvbS9KU0RvY3VtZW50LmggXAog
ICAgICQoaW50ZXJtZWRpYXRlcykvZG9tL0pTRG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGlu
dGVybWVkaWF0ZXMpL2RvbS9KU0RvY3VtZW50VHlwZS5oIFwKSW5kZXg6IFdlYkNvcmUvQW5kcm9p
ZC5kZXJpdmVkLnY4YmluZGluZ3MubWsKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9BbmRyb2lkLmRl
cml2ZWQudjhiaW5kaW5ncy5tawkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJDb3JlL0FuZHJvaWQu
ZGVyaXZlZC52OGJpbmRpbmdzLm1rCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw4IEBAIGpz
X2JpbmRpbmdfc2NyaXB0cyA6PSBcCiAJJChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL0lE
TFN0cnVjdHVyZS5wbSBcCiAJJChMT0NBTF9QQVRIKS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRl
LWJpbmRpbmdzLnBsCiAKLUZFQVRVUkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFUSU9OX1NV
UFBPUlQgRU5BQkxFX1RPVUNIX0VWRU5UUz0xIFY4X0JJTkRJTkcgRU5BQkxFX0RBVEFCQVNFPTEg
RU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUz0xIEVOQUJMRV9ET01fU1RPUkFHRT0xIEVO
QUJMRV9WSURFTz0xIEVOQUJMRV9XT1JLRVJTPTEgRU5BQkxFX0dFT0xPQ0FUSU9OPTEKK0ZFQVRV
UkVfREVGSU5FUyA6PSBBTkRST0lEX09SSUVOVEFUSU9OX1NVUFBPUlQgRU5BQkxFX1RPVUNIX0VW
RU5UUz0xIEVOQUJMRV9EQVRBQkFTRT0xIEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlM9
MSBFTkFCTEVfRE9NX1NUT1JBR0U9MSBFTkFCTEVfVklERU89MSBFTkFCTEVfV09SS0VSUz0xIEVO
QUJMRV9HRU9MT0NBVElPTj0xIEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT049MQorRkVBVFVSRV9E
RUZJTkVTICs9IFY4X0JJTkRJTkcKIAogIyBDU1MKIEdFTiA6PSBcCkBAIC04NCw2ICs4NSw3IEBA
IEdFTiA6PSBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOENvbW1lbnQuaCBcCiAg
ICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOERPTUNvcmVFeGNlcHRpb24uaCBcCiAgICAg
JChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOERPTUltcGxlbWVudGF0aW9uLmggXAorICAgICQo
aW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggXAogICAg
ICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEb2N1bWVudC5oIFwKICAgICAkKGludGVybWVk
aWF0ZXMpL2JpbmRpbmdzL1Y4RG9jdW1lbnRGcmFnbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0
ZXMpL2JpbmRpbmdzL1Y4RG9jdW1lbnRUeXBlLmggXApJbmRleDogV2ViQ29yZS9BbmRyb2lkLm1r
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQW5kcm9pZC5tawkocmV2aXNpb24gNTk4NDEpCisrKyBX
ZWJDb3JlL0FuZHJvaWQubWsJKHdvcmtpbmcgY29weSkKQEAgLTE0NSw2ICsxNDUsNyBAQCBMT0NB
TF9TUkNfRklMRVMgOj0gJChMT0NBTF9TUkNfRklMRVMpIFwKIAlkb20vTm90YXRpb24uY3BwIFwK
IAlkb20vT3B0aW9uRWxlbWVudC5jcHAgXAogCWRvbS9PcHRpb25Hcm91cEVsZW1lbnQuY3BwIFwK
Kwlkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogCWRvbS9PdmVyZmxvd0V2ZW50LmNw
cCBcCiAJZG9tL1BhZ2VUcmFuc2l0aW9uRXZlbnQuY3BwIFwKIAlkb20vUG9zaXRpb24uY3BwIFwK
SW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
RGVyaXZlZFNvdXJjZXMuY3BwCShyZXZpc2lvbiA1OTg0MSkKKysrIFdlYkNvcmUvRGVyaXZlZFNv
dXJjZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02OSw2ICs2OSw3IEBACiAjaW5jbHVkZSAiSlNE
YXRhR3JpZENvbHVtbi5jcHAiCiAjaW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbkxpc3QuY3BwIgog
I2luY2x1ZGUgIkpTRGVkaWNhdGVkV29ya2VyQ29udGV4dC5jcHAiCisjaW5jbHVkZSAiSlNEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50LmNwcCIKICNpbmNs
dWRlICJKU0RvY3VtZW50RnJhZ21lbnQuY3BwIgogI2luY2x1ZGUgIkpTRG9jdW1lbnRUeXBlLmNw
cCIKSW5kZXg6IFdlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDU5ODQxKQorKysgV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xMTcsNiArMTE3LDcgQEAgRE9NX0NM
QVNTRVMgPSBcCiAgICAgRGF0YWJhc2UgXAogICAgIERhdGFiYXNlQ2FsbGJhY2sgXAogICAgIERh
dGFiYXNlU3luYyBcCisgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCBcCiAgICAgRG9jdW1lbnQg
XAogICAgIERvY3VtZW50RnJhZ21lbnQgXAogICAgIERvY3VtZW50VHlwZSBcCkluZGV4OiBXZWJD
b3JlL0dOVW1ha2VmaWxlLmFtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvR05VbWFrZWZpbGUuYW0J
KHJldmlzaW9uIDU5ODQxKQorKysgV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkod29ya2luZyBjb3B5
KQpAQCAtMTM4LDYgKzEzOCw3IEBAIElETF9CSU5ESU5HUyArPSBcCiAJV2ViY29yZS9kb20vQ3Vz
dG9tRXZlbnQuaWRsIFwKIAlXZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbCBcCiAJV2Vi
Q29yZS9kb20vRE9NSW1wbGVtZW50YXRpb24uaWRsIFwKKwlXZWJDb3JlL2RvbS9EZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsIFwKIAlXZWJDb3Jl
L2RvbS9Eb2N1bWVudEZyYWdtZW50LmlkbCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnRUeXBlLmlk
bCBcCkBAIC03NjUsNiArNzY2LDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2Rv
bS9ET01Db3JlRXhjZXB0aW9uLmggXAogCVdlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmNw
cCBcCiAJV2ViQ29yZS9kb20vRE9NSW1wbGVtZW50YXRpb24uaCBcCisJV2ViQ29yZS9kb20vRGV2
aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAorCVdlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9u
RXZlbnQuaCBcCiAJV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIFwKIAlXZWJDb3JlL2RvbS9Eb2N1
bWVudC5oIFwKIAlXZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCkluZGV4OiBXZWJD
b3JlL1dlYkNvcmUuZ3lwaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUuZ3lwaQkocmV2
aXNpb24gNTk4NDEpCisrKyBXZWJDb3JlL1dlYkNvcmUuZ3lwaQkod29ya2luZyBjb3B5KQpAQCAt
NDAsNiArNDAsNyBAQAogICAgICAgICAgICAgJ2RvbS9DdXN0b21FdmVudC5pZGwnLAogICAgICAg
ICAgICAgJ2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbCcsCiAgICAgICAgICAgICAnZG9tL0RPTUlt
cGxlbWVudGF0aW9uLmlkbCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZl
bnQuaWRsJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnQuaWRsJywKICAgICAgICAgICAgICdk
b20vRG9jdW1lbnRGcmFnbWVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudFR5cGUu
aWRsJywKQEAgLTEwOTksNiArMTEwMCw4IEBACiAgICAgICAgICAgICAnZG9tL0RPTUNvcmVFeGNl
cHRpb24uaCcsCiAgICAgICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcCcsCiAgICAg
ICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmgnLAorICAgICAgICAgICAgJ2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmNwcCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50LmNwcCcsCiAgICAgICAgICAg
ICAnZG9tL0RvY3VtZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudEZyYWdtZW50LmNw
cCcsCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvV2Vi
Q29yZS5wcmkJKHJldmlzaW9uIDU5ODQxKQorKysgV2ViQ29yZS9XZWJDb3JlLnByaQkod29ya2lu
ZyBjb3B5KQpAQCAtMjYwLDYgKzI2MCw3IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgZG9tL0Nv
bW1lbnQuaWRsIFwKICAgICBkb20vQ29tcG9zaXRpb25FdmVudC5pZGwgXAogICAgIGRvbS9DdXN0
b21FdmVudC5pZGwgXAorICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCBcCiAgICAg
ZG9tL0RvY3VtZW50RnJhZ21lbnQuaWRsIFwKICAgICBkb20vRG9jdW1lbnQuaWRsIFwKICAgICBk
b20vRG9jdW1lbnRUeXBlLmlkbCBcCkluZGV4OiBXZWJDb3JlL1dlYkNvcmUucHJvCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS5wcm8JKHJldmlzaW9uIDU5ODQxKQorKysgV2ViQ29yZS9X
ZWJDb3JlLnBybwkod29ya2luZyBjb3B5KQpAQCAtNDYyLDYgKzQ2Miw3IEBAIFNPVVJDRVMgKz0g
XAogICAgIGRvbS9Db250YWluZXJOb2RlLmNwcCBcCiAgICAgZG9tL0NTU01hcHBlZEF0dHJpYnV0
ZURlY2xhcmF0aW9uLmNwcCBcCiAgICAgZG9tL0N1c3RvbUV2ZW50LmNwcCBcCisgICAgZG9tL0Rl
dmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKICAgICBkb20vRG9jdW1lbnQuY3BwIFwKICAgICBk
b20vRG9jdW1lbnRGcmFnbWVudC5jcHAgXAogICAgIGRvbS9Eb2N1bWVudFR5cGUuY3BwIFwKQEAg
LTExODcsNiArMTE4OCw3IEBAIEhFQURFUlMgKz0gXAogICAgIGRvbS9DU1NNYXBwZWRBdHRyaWJ1
dGVEZWNsYXJhdGlvbi5oIFwKICAgICBkb20vQ3VzdG9tRXZlbnQuaCBcCiAgICAgZG9tL2RlZmF1
bHQvUGxhdGZvcm1NZXNzYWdlUG9ydENoYW5uZWwuaCBcCisgICAgZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50RnJhZ21lbnQuaCBcCiAgICAgZG9tL0RvY3Vt
ZW50LmggXAogICAgIGRvbS9Eb2N1bWVudFR5cGUuaCBcCkluZGV4OiBXZWJDb3JlL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDU5ODQxKQorKysg
V2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBj
b3B5KQpAQCAtNDcsNiArNDcsNyBAQCBFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OID0g
RU5BQkxFCiBFTkFCTEVfREFUQUJBU0UgPSBFTkFCTEVfREFUQUJBU0U7CiBFTkFCTEVfREFUQUdS
SUQgPSA7CiBFTkFCTEVfREFUQUxJU1QgPSBFTkFCTEVfREFUQUxJU1Q7CitFTkFCTEVfREVWSUNF
X09SSUVOVEFUSU9OID0gOwogRU5BQkxFX0RPTV9TVE9SQUdFID0gRU5BQkxFX0RPTV9TVE9SQUdF
OwogRU5BQkxFX0VWRU5UU09VUkNFID0gRU5BQkxFX0VWRU5UU09VUkNFOwogRU5BQkxFX0ZJTFRF
UlMgPSBFTkFCTEVfRklMVEVSUzsKQEAgLTc4LDQgKzc5LDQgQEAgRU5BQkxFX1hIVE1MTVAgPSA7
CiBFTkFCTEVfWFBBVEggPSBFTkFCTEVfWFBBVEg7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xU
OwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9DQU5WQVMpICQoRU5BQkxFXzNEX1JF
TkRFUklORykgJChFTkFCTEVfQkxPQl9TTElDRSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcp
ICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQo
RU5BQkxFX0RBVEFHUklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfRE9NX1NUT1JBR0Up
ICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JF
QURFUikgJChFTkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJM
RV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFT
Q1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcp
ICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJT
KSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19J
TUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMp
ICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVf
VklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktF
UlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKK0ZF
QVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5H
KSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFC
TEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVf
REFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04p
ICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklM
VEVSUykgJChFTkFCTEVfRklMRV9SRUFERVIpICQoRU5BQkxFX0ZJTEVfV1JJVEVSKSAkKEVOQUJM
RV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQo
RU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykg
JChFTkFCTEVfUFJPR1JFU1NfVEFHKSAkKEVOQUJMRV9SVUJZKSAkKEVOQUJMRV9TQU5EQk9YKSAk
KEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfQU5JTUFU
SU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5H
UykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpICQoRU5B
QkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFC
TEVfV01MKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFU
SCkgJChFTkFCTEVfWFNMVCk7CkluZGV4OiBXZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTE2Nyw2ICsxMTY3LDEwIEBACiAJ
CTU5NjIyOTc4MTEzM0VGRDcwMERDNENCQiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTk2MjI5Nzcx
MTMzRUZENzAwREM0Q0JCIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25DYWNoZS5jcHAgKi87IH07CiAJ
CTU5NjIyOTdBMTEzM0VGRTIwMERDNENCQiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5NjIyOTc5MTEz
M0VGRTIwMERDNENCQiAvKiBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk1OTlFNzU5MDExMDU1QTFGMDBE
OTA0RkEgLyogQnJpZGdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1OTlFNzU4RjExMDU1QTFGMDBEOTA0RkEgLyogQnJpZGdlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTlBODVFQTIxMTlENjhEOTAw
REVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlBODVFQTExMTlENjhEOTAwREVGMUVGIC8qIERl
dmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovOyB9OworCQk1OUE4NUVBNDExOUQ2OEVDMDBERUYx
RUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTlBODVFQTMxMTlENjhFQzAwREVGMUVGIC8qIERldmljZU9y
aWVudGF0aW9uRXZlbnQuaCAqLzsgfTsKKwkJNTlBODYwMDYxMTlEQUY3RjAwREVGMUVGIC8qIEpT
RGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1OUE4NjAwNTExOURBRjdGMDBERUYxRUYgLyogSlNEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmNwcCAqLzsgfTsKKwkJNTlBODYwMDgxMTlEQUZBMTAwREVGMUVGIC8qIEpT
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTlBODYwMDcxMTlEQUZBMTAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50
YXRpb25FdmVudC5oICovOyB9OwogCQk1OUE5RTdCMDExMDQ3NTg4MDBERkI0QzEgLyogSmF2YUlu
c3RhbmNlSlNDLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDU5QTlFN0FGMTEwNDc1ODgwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuY3BwICovOyB9
OwogCQk1OUE5RTdCMjExMDQ3NTk0MDBERkI0QzEgLyogSmF2YUluc3RhbmNlSlNDLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE5RTdCMTExMDQ3NTk0
MDBERkI0QzEgLyogSmF2YUluc3RhbmNlSlNDLmggKi87IH07CiAJCTU5QjU5NzczMTEwODY1NkIw
MDcxNTlFOCAvKiBCcmlkZ2VKU0MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTlCNTk3NzIxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAg
Ki87IH07CkBAIC02NzY5LDYgKzY3NzMsMTEgQEAKIAkJNTk2MjI5NzcxMTMzRUZENzAwREM0Q0JC
IC8qIEdlb2xvY2F0aW9uUG9zaXRpb25DYWNoZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBHZW9sb2NhdGlvblBvc2l0aW9uQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1OTYyMjk3OTExMzNFRkUyMDBEQzRDQkIgLyogR2VvbG9jYXRpb25Q
b3NpdGlvbkNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdlb2xvY2F0
aW9uUG9zaXRpb25DYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTlFNzU4
RjExMDU1QTFGMDBEOTA0RkEgLyogQnJpZGdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IEJyaWRnZS5oOyBwYXRoID0gYnJpZGdlL0JyaWRnZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1OUE4NUVBMTExOUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRp
b25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlBODVF
QTMxMTlENjhFQzAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYgLyogRGV2aWNl
T3JpZW50YXRpb25FdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGV2aWNlT3JpZW50
YXRpb25FdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg2MDA1MTE5
REFGN0YwMERFRjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlBODYwMDcxMTlEQUZBMTAwREVGMUVGIC8q
IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNTlBOUU3QUYxMTA0NzU4ODAwREZCNEMxIC8qIEphdmFJbnN0YW5jZUpTQy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKYXZhSW5zdGFuY2VKU0MuY3BwOyBw
YXRoID0ganNjL0phdmFJbnN0YW5jZUpTQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTU5QTlFN0IxMTEwNDc1OTQwMERGQjRDMSAvKiBKYXZhSW5zdGFuY2VKU0MuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSmF2YUluc3RhbmNlSlNDLmg7IHBhdGggPSBqc2Mv
SmF2YUluc3RhbmNlSlNDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5QjU5Nzcy
MTEwODY1NkIwMDcxNTlFOCAvKiBCcmlkZ2VKU0MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gQnJpZGdlSlNDLmNwcDsgcGF0aCA9IGJyaWRnZS9qc2MvQnJpZGdlSlND
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE0MjEyLDYgKzE0MjIxLDggQEAK
IAkJQTgzQjc5MTAwQ0NCMDAxQjAwMEIwODI1IC8qIENvcmUgKi8gPSB7CiAJCQlpc2EgPSBQQlhH
cm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTU5QTg2MDA3MTE5REFGQTEwMERFRjFFRiAvKiBK
U0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKKwkJCQk1OUE4NjAwNTExOURBRjdGMDBERUYx
RUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLywKIAkJCQk2NURGMzFEODA5RDFD
MTIyMDAwQkUzMjUgLyogSlNBdHRyLmNwcCAqLywKIAkJCQk2NURGMzFEOTA5RDFDMTIzMDAwQkUz
MjUgLyogSlNBdHRyLmggKi8sCiAJCQkJOTNGOUI3OUUwQkE2MDMyNjAwODU0MDY0IC8qIEpTQ0RB
VEFTZWN0aW9uLmNwcCAqLywKQEAgLTE2NDA2LDYgKzE2NDE3LDkgQEAKIAkJRjUyM0QzMjQwMkRF
NDQ3ODAxODYzNUNBIC8qIGRvbSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRy
ZW4gPSAoCisJCQkJNTlBODVFQUExMTlEN0I2RTAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9u
RXZlbnQuaWRsICovLAorCQkJCTU5QTg1RUEzMTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmggKi8sCisJCQkJNTlBODVFQTExMTlENjhEOTAwREVGMUVGIC8qIERldmlj
ZU9yaWVudGF0aW9uRXZlbnQuY3BwICovLAogCQkJCUUxQzRERTZEMEVBNzVDNjUwMDIzQ0NENiAv
KiBBY3RpdmVET01PYmplY3QuY3BwICovLAogCQkJCUUxQzRERTY4MEVBNzVDMUUwMDIzQ0NENiAv
KiBBY3RpdmVET01PYmplY3QuaCAqLywKIAkJCQlBOEM0QTdGQzA5RDU2MzI3MDAwM0FDOEQgLyog
QXR0ci5jcHAgKi8sCkBAIC0xOTI2NSw2ICsxOTI3OSw4IEBACiAJCQkJOTdFOEIzQzMxMUEyODkw
ODAwMTY5NDA5IC8qIEhUTUw1VG9rZW4uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzEwMzhCMTFB
Mjk0NzAwMERCRDUwRSAvKiBIVE1MNVRva2VuaXplci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTEz
MjdENjAxMUEzM0EyQjAwNEY5RDY1IC8qIFNpbmtEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTlBODVFQTQxMTlENjhFQzAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTU5QTg2MDA4MTE5REFGQTEwMERFRjFFRiAvKiBKU0RldmljZU9y
aWVudGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBs
b3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjE1NDcsNiArMjE1NjMsOCBAQAog
CQkJCTk3RThCMzU2MTFBMjNDRTIwMDE2OTQwOSAvKiBIVE1MNUxleGVyLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUE4NzEwMzhBMTFBMjk0NzAwMERCRDUwRSAvKiBIVE1MNVRva2VuaXplci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQk1MTMyN0Q2MTExQTMzQTJCMDA0RjlENjUgLyogU2lua0RvY3Vt
ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTU5QTg1RUEyMTE5RDY4RDkwMERFRjFFRiAvKiBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTU5QTg2MDA2MTE5
REFGN0YwMERFRjFFRiAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJ
CX07CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAJKHJldmlzaW9uIDU5
ODQxKQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMzIsMTEgKzMyLDEzIEBACiAjaW5jbHVkZSAiQ2xpcGJvYXJkLmgiCiAjaW5jbHVk
ZSAiQ29tcG9zaXRpb25FdmVudC5oIgogI2luY2x1ZGUgIkN1c3RvbUV2ZW50LmgiCisjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogI2luY2x1ZGUgIkV2ZW50LmgiCiAjaW5jbHVk
ZSAiSlNCZWZvcmVMb2FkRXZlbnQuaCIKICNpbmNsdWRlICJKU0NsaXBib2FyZC5oIgogI2luY2x1
ZGUgIkpTQ3VzdG9tRXZlbnQuaCIKICNpbmNsdWRlICJKU0NvbXBvc2l0aW9uRXZlbnQuaCIKKyNp
bmNsdWRlICJKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJKU0Vycm9yRXZl
bnQuaCIKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICNpbmNsdWRlICJKU0lEQkVycm9y
RXZlbnQuaCIKQEAgLTE3MSw2ICsxNzMsMTAgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSogZXhl
YywgSlNET01HbG9iYQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpFQ1RfV1JBUFBF
UihleGVjLCBnbG9iYWxPYmplY3QsIFBvcFN0YXRlRXZlbnQsIGV2ZW50KTsKICAgICBlbHNlIGlm
IChldmVudC0+aXNDdXN0b21FdmVudCgpKQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9P
QkpFQ1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEN1c3RvbUV2ZW50LCBldmVudCk7Cisj
aWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBlbHNlIGlmIChldmVudC0+aXNEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50KCkpCisgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX09CSkVD
VF9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgRGV2aWNlT3JpZW50YXRpb25FdmVudCwgZXZl
bnQpOworI2VuZGlmCiAgICAgZWxzZQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9PQkpF
Q1RfV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIEV2ZW50LCBldmVudCk7CiAKSW5kZXg6IFdl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCShyZXZpc2lvbiA1
OTg0MSkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBACiAjaW5jbHVkZSAiVjhDbGlwYm9hcmQuaCIK
ICNpbmNsdWRlICJWOENvbXBvc2l0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJWOEN1c3RvbUV2ZW50
LmgiCisjaW5jbHVkZSAiVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiVjhF
cnJvckV2ZW50LmgiCiAjaW5jbHVkZSAiVjhJREJFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAiVjhJ
REJTdWNjZXNzRXZlbnQuaCIKQEAgLTE1Myw2ICsxNTQsMTAgQEAgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IHRvVjgoRXZlbnQqIGltcGwpCiAjZW5kaWYKICAgICBpZiAoaW1wbC0+aXNCZWZvcmVMb2Fk
RXZlbnQoKSkKICAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8QmVmb3JlTG9hZEV2ZW50
Kj4oaW1wbCkpOworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKGltcGwt
PmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpKQorICAgICAgICByZXR1cm4gdG9WOChzdGF0aWNf
Y2FzdDxEZXZpY2VPcmllbnRhdGlvbkV2ZW50Kj4oaW1wbCkpOworI2VuZGlmCiAgICAgaWYgKGlt
cGwtPmlzQ3VzdG9tRXZlbnQoKSkKICAgICAgICAgcmV0dXJuIHRvVjgoc3RhdGljX2Nhc3Q8Q3Vz
dG9tRXZlbnQqPihpbXBsKSk7CiAgICAgcmV0dXJuIFY4RXZlbnQ6OndyYXAoaW1wbCk7CkluZGV4
OiBXZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcAkocmV2aXNpb24gMCkKKysrIFdl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDYyIEBACisvKgorICogQ29weXJpZ2h0IDIwMTAsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNl
IFByb2plY3QKKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5oIgorCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpEZXZpY2VPcmllbnRh
dGlvbkV2ZW50KCkKKyAgICA6IG1fYWxwaGEoMCkKKyAgICAsIG1fYmV0YSgwKQorICAgICwgbV9n
YW1tYSgwKQoreworfQorCitEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpEZXZpY2VPcmllbnRhdGlv
bkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBkb3VibGUgYWxwaGEsIGRvdWJs
ZSBiZXRhLCBkb3VibGUgZ2FtbWEpCisgICAgOiBFdmVudChldmVudFR5cGUsIGZhbHNlLCBmYWxz
ZSkgLy8gQ2FuJ3QgYnViYmxlLCBub3QgY2FuY2VsYWJsZQorICAgICwgbV9hbHBoYShhbHBoYSkK
KyAgICAsIG1fYmV0YShiZXRhKQorICAgICwgbV9nYW1tYShnYW1tYSkKK3sKK30KKwordm9pZCBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBB
dG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgYm9vbCBjYW5CdWJibGUsIGJvb2wgY2FuY2VsYWJsZSwg
ZG91YmxlIGFscGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdhbW1hKQoreworICAgIGlmIChkaXNw
YXRjaGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGluaXRFdmVudChldmVudFR5cGUsIGNh
bkJ1YmJsZSwgY2FuY2VsYWJsZSk7CisKKyAgICBtX2FscGhhID0gYWxwaGE7CisgICAgbV9iZXRh
ID0gYmV0YTsKKyAgICBtX2dhbW1hID0gZ2FtbWE7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCkluZGV4OiBXZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9kb20vRGV2
aWNlT3JpZW50YXRpb25FdmVudC5oCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYzIEBACisvKgor
ICogQ29weXJpZ2h0IDIwMTAsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dO
RVIgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaWZuZGVmIERldmljZU9yaWVudGF0aW9uRXZlbnRfaAorI2RlZmluZSBEZXZpY2VPcmllbnRh
dGlvbkV2ZW50X2gKKworI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUgIkV2ZW50Lmgi
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRGV2aWNlT3JpZW50YXRpb25FdmVudCA6
IHB1YmxpYyBFdmVudCB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3Jp
ZW50YXRpb25FdmVudD4gY3JlYXRlKCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgRGV2aWNlT3JpZW50YXRpb25FdmVudCk7CisgICAgfQorICAgIHN0YXRpYyBQYXNzUmVmUHRy
PERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50
VHlwZSwgZG91YmxlIGFscGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdhbW1hKQorICAgIHsKKyAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KGV2ZW50VHlw
ZSwgYWxwaGEsIGJldGEsIGdhbW1hKSk7CisgICAgfQorCisgICAgdm9pZCBpbml0RGV2aWNlT3Jp
ZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgYm9vbCBjYW5CdWJi
bGUsIGJvb2wgY2FuY2VsYWJsZSwgZG91YmxlIGFscGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdh
bW1hKTsKKyAgICBkb3VibGUgYWxwaGEoKSBjb25zdCB7IHJldHVybiBtX2FscGhhOyB9CisgICAg
ZG91YmxlIGJldGEoKSBjb25zdCB7IHJldHVybiBtX2JldGE7IH0KKyAgICBkb3VibGUgZ2FtbWEo
KSBjb25zdCB7IHJldHVybiBtX2dhbW1hOyB9CisKKyAgICB2aXJ0dWFsIGJvb2wgaXNEZXZpY2VP
cmllbnRhdGlvbkV2ZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorCitwcml2YXRlOgorICAg
IERldmljZU9yaWVudGF0aW9uRXZlbnQoKTsKKyAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNv
bnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBkb3VibGUgYWxwaGEsIGRvdWJsZSBiZXRhLCBk
b3VibGUgZ2FtbWEpOworCisgICAgZG91YmxlIG1fYWxwaGE7CisgICAgZG91YmxlIG1fYmV0YTsK
KyAgICBkb3VibGUgbV9nYW1tYTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2Vu
ZGlmIC8vIERldmljZU9yaWVudGF0aW9uRXZlbnRfaApJbmRleDogV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb25FdmVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5pZGwJKHJldmlzaW9uIDApCisrKyBXZWJDb3JlL2RvbS9EZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmlkbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNyBAQAorLyoKKyAqIENv
cHlyaWdodCAyMDEwLCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9k
dWxlIGNvcmUgeworCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9REVWSUNF
X09SSUVOVEFUSU9OCisgICAgXSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50IDogRXZlbnQgeworICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgZG91YmxlIGFscGhhOworICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgZG91YmxlIGJldGE7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBkb3VibGUg
Z2FtbWE7CisgICAgICAgIHZvaWQgaW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoaW4gRE9NU3Ry
aW5nIHR5cGVBcmcsIGluIGJvb2xlYW4gY2FuQnViYmxlQXJnLCBpbiBib29sZWFuIGNhbmNlbGFi
bGVBcmcsIGluIGRvdWJsZSBhbHBoYSwgaW4gZG91YmxlIGJldGEsIGluIGRvdWJsZSBnYW1tYSk7
CisgICAgfTsKKworfQpJbmRleDogV2ViQ29yZS9kb20vRXZlbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvZG9tL0V2ZW50LmNwcAkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJDb3JlL2RvbS9F
dmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxMiw2ICsyMTIsMTMgQEAgYm9vbCBFdmVudDo6
aXNUb3VjaEV2ZW50KCkgY29uc3QKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKERFVklDRV9PUklF
TlRBVElPTikKK2Jvb2wgRXZlbnQ6OmlzRGV2aWNlT3JpZW50YXRpb25FdmVudCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIGZhbHNlOworfQorI2VuZGlmCisKIGJvb2wgRXZlbnQ6OmZyb21Vc2VyR2Vz
dHVyZSgpCiB7CiAgICAgaWYgKCFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJH
ZXN0dXJlKCkpCkluZGV4OiBXZWJDb3JlL2RvbS9FdmVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvZG9tL0V2ZW50LmgJKHJldmlzaW9uIDU5ODQxKQorKysgV2ViQ29yZS9kb20vRXZlbnQuaAko
d29ya2luZyBjb3B5KQpAQCAtMTM5LDYgKzEzOSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNp
ZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNUb3VjaEV2ZW50
KCkgY29uc3Q7CiAjZW5kaWYKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgICAg
ICB2aXJ0dWFsIGJvb2wgaXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkgY29uc3Q7CisjZW5kaWYK
ICAgICAgICAgYm9vbCBmcm9tVXNlckdlc3R1cmUoKTsKICAgICAgICAgCiAgICAgICAgIGJvb2wg
cHJvcGFnYXRpb25TdG9wcGVkKCkgY29uc3QgeyByZXR1cm4gbV9wcm9wYWdhdGlvblN0b3BwZWQg
fHwgbV9pbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ7IH0KSW5kZXg6IFdlYkNvcmUvZG9tL0V2
ZW50TmFtZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgJKHJldmlz
aW9uIDU5ODQxKQorKysgV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCSh3b3JraW5nIGNvcHkpCkBA
IC00OSw2ICs0OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhjb3B5KSBcCiAg
ICAgbWFjcm8oY3V0KSBcCiAgICAgbWFjcm8oZGJsY2xpY2spIFwKKyAgICBtYWNybyhkZXZpY2Vv
cmllbnRhdGlvbikgXAogICAgIG1hY3JvKGRpc3BsYXkpIFwKICAgICBtYWNybyhkb3dubG9hZGlu
ZykgXAogICAgIG1hY3JvKGRyYWcpIFwKSW5kZXg6IFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgJKHJldmlzaW9uIDU5ODQxKQor
KysgV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMjUsNiArMzI1
LDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgREVGSU5FX0FUVFJJQlVURV9FVkVO
VF9MSVNURU5FUihvcmllbnRhdGlvbmNoYW5nZSk7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShERVZJ
Q0VfT1JJRU5UQVRJT04pCisgICAgICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIo
ZGV2aWNlb3JpZW50YXRpb24pOworI2VuZGlmCisKICAgICAgICAgREVGSU5FX01BUFBFRF9BVFRS
SUJVVEVfRVZFTlRfTElTVEVORVIod2Via2l0YW5pbWF0aW9uc3RhcnQsIHdlYmtpdEFuaW1hdGlv
blN0YXJ0KTsKICAgICAgICAgREVGSU5FX01BUFBFRF9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIo
d2Via2l0YW5pbWF0aW9uaXRlcmF0aW9uLCB3ZWJraXRBbmltYXRpb25JdGVyYXRpb24pOwogICAg
ICAgICBERUZJTkVfTUFQUEVEX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUih3ZWJraXRhbmltYXRp
b25lbmQsIHdlYmtpdEFuaW1hdGlvbkVuZCk7CkluZGV4OiBXZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAkocmV2aXNpb24g
NTk4NDEpCisrKyBXZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAkod29ya2luZyBjb3B5KQpAQCAt
Mjk5LDYgKzI5OSw4IEBAIG1vZHVsZSB3aW5kb3cgewogICAgICAgICBhdHRyaWJ1dGUgW0NvbmRp
dGlvbmFsPVRPVUNIX0VWRU5UUyxFbmFibGVkQXRSdW50aW1lXSBFdmVudExpc3RlbmVyIG9udG91
Y2hlbmQ7CiAgICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0aW9uYWw9VE9VQ0hfRVZFTlRTLEVuYWJs
ZWRBdFJ1bnRpbWVdIEV2ZW50TGlzdGVuZXIgb250b3VjaGNhbmNlbDsKIAorICAgICAgICBhdHRy
aWJ1dGUgW0NvbmRpdGlvbmFsPURFVklDRV9PUklFTlRBVElPTl0gRXZlbnRMaXN0ZW5lciBvbmRl
dmljZW9yaWVudGF0aW9uOworCiAgICAgICAgIC8vIEV2ZW50VGFyZ2V0IGludGVyZmFjZQogICAg
ICAgICBbQ3VzdG9tXSB2b2lkIGFkZEV2ZW50TGlzdGVuZXIoaW4gRE9NU3RyaW5nIHR5cGUsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIEV2ZW50TGlzdGVuZXIgbGlz
dGVuZXIsCkluZGV4OiBXZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQv
bWFjL0NoYW5nZUxvZwkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJLaXQvbWFjL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDEwLTA1LTIwICBTdGV2ZSBCbG9jayAg
PHN0ZXZlYmxvY2tAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBQcm92aWRlIGJpbmRpbmdzIGZvciBEZXZpY2VPcmllbnRhdGlvbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkyMTAKKwor
ICAgICAgICBBZGRzIEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04gdG8gWENvZGUgcHJvamVjdCBm
aWxlLCBhbHdheXMgZGlzYWJsZWQuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZzoKKwogMjAxMC0wNS0yMCAgTWFydGluIFJvYmluc29uICA8bXJvYmlu
c29uQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2phbiBWYWZhaS4KSW5kZXg6
IFdlYktpdC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
ZwkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC00Nyw2ICs0Nyw3IEBAIEVOQUJMRV9D
TElFTlRfQkFTRURfR0VPTE9DQVRJT04gPSBFTkFCTEUKIEVOQUJMRV9EQVRBQkFTRSA9IEVOQUJM
RV9EQVRBQkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IDsKIEVOQUJMRV9EQVRBTElTVCA9IEVOQUJM
RV9EQVRBTElTVDsKK0VOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfRE9NX1NU
T1JBR0UgPSBFTkFCTEVfRE9NX1NUT1JBR0U7CiBFTkFCTEVfRVZFTlRTT1VSQ0UgPSBFTkFCTEVf
RVZFTlRTT1VSQ0U7CiBFTkFCTEVfRklMVEVSUyA9IEVOQUJMRV9GSUxURVJTOwpAQCAtNzgsNCAr
NzksNCBAQCBFTkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJMRV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsK
IEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxF
XzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9CTE9CX1NMSUNFKSAk
KEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xPQ0FU
SU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFM
SVNUKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxF
X0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfUkVBREVSKSAkKEVOQUJMRV9GSUxFX1dSSVRFUikgJChF
TkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU5ERVhF
RF9EQVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTUFUSE1M
KSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElP
TlMpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0FOREJP
WCkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FO
SU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklO
RElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAk
KEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQo
RU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhUTUxNUCkgJChFTkFCTEVf
WFBBVEgpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FO
VkFTKSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0JMT0JfU0xJQ0UpICQoRU5BQkxF
X0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQo
RU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9EQVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQo
RU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxF
X0VWRU5UU09VUkNFKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GSUxFX1JFQURFUikgJChF
TkFCTEVfRklMRV9XUklURVIpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFU
QUJBU0UpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVC
VUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVf
T0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxF
X1JVQlkpICQoRU5BQkxFX1NBTkRCT1gpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJM
RV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChF
TkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQo
RU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5B
QkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFdlYktp
dExpYnJhcmllcy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0TGlicmFyaWVzL0NoYW5n
ZUxvZwkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJLaXRMaWJyYXJpZXMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMDUtMjAgIFN0ZXZlIEJsb2NrICA8c3Rl
dmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFByb3ZpZGUgYmluZGluZ3MgZm9yIERldmljZU9yaWVudGF0aW9uCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTIxMAorCisgICAg
ICAgIEFkZHMgRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTiB0byBWaXN1YWxTdHVkaW8gcHJvamVj
dCBmaWxlcywgYWx3YXlzIGRpc2FibGVkLgorCisgICAgICAgICogd2luL3Rvb2xzL3ZzcHJvcHMv
RmVhdHVyZURlZmluZXMudnNwcm9wczoKKyAgICAgICAgKiB3aW4vdG9vbHMvdnNwcm9wcy9GZWF0
dXJlRGVmaW5lc0NhaXJvLnZzcHJvcHM6CisKIDIwMTAtMDQtMDkgIEFsZXhleSBQcm9za3VyeWFr
b3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqIFN0YWNob3dp
YWsuCkluZGV4OiBXZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmlu
ZXMudnNwcm9wcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJv
cHMvRmVhdHVyZURlZmluZXMudnNwcm9wcwkocmV2aXNpb24gNTk4NDEpCisrKyBXZWJLaXRMaWJy
YXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXMudnNwcm9wcwkod29ya2luZyBj
b3B5KQpAQCAtOSw3ICs5LDcgQEAKIAk+CiAgIDxUb29sCiAJCU5hbWU9IlZDQ0xDb21waWxlclRv
b2wiCi0JCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSIkKEVOQUJMRV8zRF9DQU5WQVMpOyQoRU5B
QkxFXzNEX1JFTkRFUklORyk7JChFTkFCTEVfQkxPQl9TTElDRSk7JChFTkFCTEVfQ0hBTk5FTF9N
RVNTQUdJTkcpOyQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTik7JChFTkFCTEVfREFU
QUJBU0UpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRBTElTVCk7JChFTkFCTEVfRE9N
X1NUT1JBR0UpOyQoRU5BQkxFX0VWRU5UU09VUkNFKTskKEVOQUJMRV9GSUxURVJTKTskKEVOQUJM
RV9GSUxFX1JFQURFUik7JChFTkFCTEVfRklMRV9XUklURVIpOyQoRU5BQkxFX0dFT0xPQ0FUSU9O
KTskKEVOQUJMRV9JQ09OREFUQUJBU0UpOyQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpOyQoRU5B
QkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTk9USUZJ
Q0FUSU9OUyk7JChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKTskKEVOQUJMRV9SVUJZ
KTskKEVOQUJMRV9TQU5EQk9YKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfU1ZH
KTskKEVOQUJMRV9TVkdfQU5JTUFUSU9OKTskKEVOQUJMRV9TVkdfQVNfSU1BR0UpOyQoRU5BQkxF
X1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVfU1ZHX0ZPTlRTKTskKEVOQUJMRV9TVkdf
Rk9SRUlHTl9PQkpFQ1QpOyQoRU5BQkxFX1NWR19VU0UpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJM
RV9XRUJfU09DS0VUUyk7JChFTkFCTEVfV01MKTskKEVOQUJMRV9XT1JLRVJTKTskKEVOQUJMRV9Y
SFRNTE1QKTskKEVOQUJMRV9YUEFUSCk7JChFTkFCTEVfWFNMVCkiCisJCVByZXByb2Nlc3NvckRl
ZmluaXRpb25zPSIkKEVOQUJMRV8zRF9DQU5WQVMpOyQoRU5BQkxFXzNEX1JFTkRFUklORyk7JChF
TkFCTEVfQkxPQl9TTElDRSk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTik7JChFTkFCTEVfREFUQUJBU0UpOyQoRU5BQkxFX0RBVEFH
UklEKTskKEVOQUJMRV9EQVRBTElTVCk7JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKTskKEVO
QUJMRV9ET01fU1RPUkFHRSk7JChFTkFCTEVfRVZFTlRTT1VSQ0UpOyQoRU5BQkxFX0ZJTFRFUlMp
OyQoRU5BQkxFX0ZJTEVfUkVBREVSKTskKEVOQUJMRV9GSUxFX1dSSVRFUik7JChFTkFCTEVfR0VP
TE9DQVRJT04pOyQoRU5BQkxFX0lDT05EQVRBQkFTRSk7JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFT
RSk7JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUik7JChFTkFCTEVfTUFUSE1MKTskKEVOQUJM
RV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpOyQoRU5B
QkxFX1JVQlkpOyQoRU5BQkxFX1NBTkRCT1gpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTskKEVO
QUJMRV9TVkcpOyQoRU5BQkxFX1NWR19BTklNQVRJT04pOyQoRU5BQkxFX1NWR19BU19JTUFHRSk7
JChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9TVkdfRk9OVFMpOyQoRU5B
QkxFX1NWR19GT1JFSUdOX09CSkVDVCk7JChFTkFCTEVfU1ZHX1VTRSk7JChFTkFCTEVfVklERU8p
OyQoRU5BQkxFX1dFQl9TT0NLRVRTKTskKEVOQUJMRV9XTUwpOyQoRU5BQkxFX1dPUktFUlMpOyQo
RU5BQkxFX1hIVE1MTVApOyQoRU5BQkxFX1hQQVRIKTskKEVOQUJMRV9YU0xUKSIKIAkvPgogICA8
VXNlck1hY3JvCiAJCU5hbWU9IkVOQUJMRV8zRF9DQU5WQVMiCkBAIC01Miw2ICs1MiwxMSBAQAog
CQlQZXJmb3JtRW52aXJvbm1lbnRTZXQ9InRydWUiCiAJLz4KICAgPFVzZXJNYWNybworCQlOYW1l
PSJFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OIgorCQlWYWx1ZT0iIgorCQlQZXJmb3JtRW52aXJv
bm1lbnRTZXQ9InRydWUiCisJLz4KKyAgPFVzZXJNYWNybwogCQlOYW1lPSJFTkFCTEVfRE9NX1NU
T1JBR0UiCiAJCVZhbHVlPSJFTkFCTEVfRE9NX1NUT1JBR0UiCiAJCVBlcmZvcm1FbnZpcm9ubWVu
dFNldD0idHJ1ZSIKSW5kZXg6IFdlYktpdExpYnJhcmllcy93aW4vdG9vbHMvdnNwcm9wcy9GZWF0
dXJlRGVmaW5lc0NhaXJvLnZzcHJvcHMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0TGlicmFyaWVzL3dp
bi90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8udnNwcm9wcwkocmV2aXNpb24gNTk4
NDEpCisrKyBXZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXND
YWlyby52c3Byb3BzCSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzksNyBAQAogCT4KICAgPFRvb2wK
IAkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IiQo
RU5BQkxFXzNEX0NBTlZBUyk7JChFTkFCTEVfM0RfUkVOREVSSU5HKTskKEVOQUJMRV9CTE9CX1NM
SUNFKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dF
T0xPQ0FUSU9OKTskKEVOQUJMRV9EQVRBQkFTRSk7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5BQkxF
X0RBVEFMSVNUKTskKEVOQUJMRV9ET01fU1RPUkFHRSk7JChFTkFCTEVfRVZFTlRTT1VSQ0UpOyQo
RU5BQkxFX0ZJTFRFUlMpOyQoRU5BQkxFX0ZJTEVfUkVBREVSKTskKEVOQUJMRV9GSUxFX1dSSVRF
Uik7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0lDT05EQVRBQkFTRSk7JChFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRSk7JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUik7JChFTkFCTEVf
TUFUSE1MKTskKEVOQUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBM
SUNBVElPTlMpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTskKEVOQUJMRV9TVkcpOyQoRU5BQkxF
X1NWR19BTklNQVRJT04pOyQoRU5BQkxFX1NWR19BU19JTUFHRSk7JChFTkFCTEVfU1ZHX0RPTV9P
QkpDX0JJTkRJTkdTKTskKEVOQUJMRV9TVkdfRk9OVFMpOyQoRU5BQkxFX1NWR19GT1JFSUdOX09C
SkVDVCk7JChFTkFCTEVfU1ZHX1VTRSk7JChFTkFCTEVfVklERU8pOyQoRU5BQkxFX1dFQl9TT0NL
RVRTKTskKEVOQUJMRV9XTUwpOyQoRU5BQkxFX1dPUktFUlMpOyQoRU5BQkxFX1hIVE1MTVApOyQo
RU5BQkxFX1hQQVRIKTskKEVOQUJMRV9YU0xUKSIKKwkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9
IiQoRU5BQkxFXzNEX0NBTlZBUyk7JChFTkFCTEVfM0RfUkVOREVSSU5HKTskKEVOQUJMRV9CTE9C
X1NMSUNFKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ0xJRU5UX0JBU0VE
X0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9EQVRBQkFTRSk7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5B
QkxFX0RBVEFMSVNUKTskKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pOyQoRU5BQkxFX0RPTV9T
VE9SQUdFKTskKEVOQUJMRV9FVkVOVFNPVVJDRSk7JChFTkFCTEVfRklMVEVSUyk7JChFTkFCTEVf
RklMRV9SRUFERVIpOyQoRU5BQkxFX0ZJTEVfV1JJVEVSKTskKEVOQUJMRV9HRU9MT0NBVElPTik7
JChFTkFCTEVfSUNPTkRBVEFCQVNFKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJM
RV9KQVZBU0NSSVBUX0RFQlVHR0VSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX05PVElGSUNB
VElPTlMpOyQoRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUyk7JChFTkFCTEVfU0hBUkVE
X1dPUktFUlMpOyQoRU5BQkxFX1NWRyk7JChFTkFCTEVfU1ZHX0FOSU1BVElPTik7JChFTkFCTEVf
U1ZHX0FTX0lNQUdFKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1NW
R19GT05UUyk7JChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKTskKEVOQUJMRV9TVkdfVVNFKTsk
KEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX1NPQ0tFVFMpOyQoRU5BQkxFX1dNTCk7JChFTkFC
TEVfV09SS0VSUyk7JChFTkFCTEVfWEhUTUxNUCk7JChFTkFCTEVfWFBBVEgpOyQoRU5BQkxFX1hT
TFQpIgogCS8+CiAgIDxVc2VyTWFjcm8KIAkJTmFtZT0iRU5BQkxFXzNEX0NBTlZBUyIKQEAgLTUy
LDYgKzUyLDExIEBACiAJCVBlcmZvcm1FbnZpcm9ubWVudFNldD0idHJ1ZSIKIAkvPgogICA8VXNl
ck1hY3JvCisJCU5hbWU9IkVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04iCisJCVZhbHVlPSIiCisJ
CVBlcmZvcm1FbnZpcm9ubWVudFNldD0idHJ1ZSIKKwkvPgorICA8VXNlck1hY3JvCiAJCU5hbWU9
IkVOQUJMRV9ET01fU1RPUkFHRSIKIAkJVmFsdWU9IkVOQUJMRV9ET01fU1RPUkFHRSIKIAkJUGVy
Zm9ybUVudmlyb25tZW50U2V0PSJ0cnVlIgpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNTk4NDEpCisrKyBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzNCBAQAorMjAx
MC0wNS0yMCAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBiaW5kaW5ncyBm
b3IgRGV2aWNlT3JpZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTM5MjEwCisKKyAgICAgICAgTW9kaWZpZXMgZXhpc3RpbmcgZmFzdC9kb20v
V2luZG93IHRlc3RzIHRvIHNraXAgd2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gdW50aWwKKyAg
ICAgICAgaXQgaXMgd2lkZWx5IHN1cHBvcnRlZC4KKyAgICAgICAgQWRkcyBuZXcgZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sIHRvIHRl
c3QKKyAgICAgICAgdHlwZSBhbmQgcHJlc2VuY2Ugb2Ygd2luZG93Lm9uZGV2aWNlb3JpZW50YXRp
b24uCisgICAgICAgIEFkZHMgbmV3IGZhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uIGRpcmVjdG9y
eSBhbmQgaW5pdGlhbCB0ZXN0LgorICAgICAgICBBZGRzIGFsbCBEZXZpY2VPcmllbnRhdGlvbiB0
ZXN0cyB0byBhbGwgc2tpcHBlZCBsaXN0cy4KKworICAgICAgICAqIGZhc3QvZG9tL0RldmljZU9y
aWVudGF0aW9uOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbi9z
Y3JpcHQtdGVzdHM6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0RldmljZU9yaWVudGF0aW9u
L3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9E
ZXZpY2VPcmllbnRhdGlvbi9zY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LmpzOiBBZGRlZC4K
KyAgICAgICAgKGhhc09uRGV2aWNlT3JpZW50YXRpb25Qcm9wZXJ0eSk6CisgICAgICAgICogZmFz
dC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy9zY3JpcHQtdGVzdHMvd2lu
ZG93LXByb3BlcnR5LWRlc2NyaXB0b3JzLmpzOgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcHJvcGVydGllcy1vbi1kZXZpY2Utb3JpZW50YXRpb24tZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNl
LW9yaWVudGF0aW9uLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcHJvcGVydGllcy5odG1sOgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvU2tpcHBlZDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgor
ICAgICAgICAqIHBsYXRmb3JtL3dpbi9Ta2lwcGVkOgorCiAyMDEwLTA1LTIwICBNYXJ0aW4gUm9i
aW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFu
IFZhZmFpLgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2lu
ZG93LXByb3BlcnR5LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9EZXZpY2VPcmllbnRhdGlvbi93aW5kb3ctcHJvcGVydHktZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93
LXByb3BlcnR5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBAQAorVGVz
dHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gcHJvcGVydHkgaXMgcHJlc2Vu
dC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdHlwZW9mIHdpbmRvdy5v
bmRldmljZW9yaWVudGF0aW9uID09ICdvYmplY3QnIGlzIHRydWUKK1BBU1MgaGFzT25EZXZpY2VP
cmllbnRhdGlvblByb3BlcnR5KCkgaXMgdHJ1ZQorUEFTUyAnb25kZXZpY2VvcmllbnRhdGlvbicg
aW4gd2luZG93IGlzIHRydWUKK1BBU1Mgd2luZG93Lmhhc093blByb3BlcnR5KCdvbmRldmljZW9y
aWVudGF0aW9uJykgaXMgdHJ1ZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0
aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZG9tL0RldmljZU9yaWVudGF0aW9uL3dpbmRvdy1wcm9wZXJ0eS5odG1sCShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5
Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvd2luZG93LXBy
b3BlcnR5LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy9URU1QTEFURS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3Nj
cmlwdC10ZXN0cy9URU1QTEFURS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9kb20vRGV2aWNlT3JpZW50YXRpb24vc2NyaXB0LXRlc3RzL1RFTVBMQVRFLmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxl
c2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xl
Ij48L2Rpdj4KKzxzY3JpcHQgc3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmllbnRh
dGlvbi9zY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LmpzCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvZG9tL0RldmljZU9yaWVudGF0aW9uL3NjcmlwdC10ZXN0cy93aW5kb3ctcHJv
cGVydHkuanMJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9EZXZpY2VPcmll
bnRhdGlvbi9zY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LmpzCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDE3IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB0aGUgd2luZG93Lm9uZGV2aWNl
b3JpZW50YXRpb24gcHJvcGVydHkgaXMgcHJlc2VudC4iKTsKKworZnVuY3Rpb24gaGFzT25EZXZp
Y2VPcmllbnRhdGlvblByb3BlcnR5KCkKK3sKKyAgICBmb3IgKHZhciBwcm9wZXJ0eSBpbiB3aW5k
b3cpIHsKKyAgICAgICAgaWYgKHByb3BlcnR5ID09ICJvbmRldmljZW9yaWVudGF0aW9uIikKKyAg
ICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3No
b3VsZEJlVHJ1ZSgidHlwZW9mIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uID09ICdvYmplY3Qn
Iik7CitzaG91bGRCZVRydWUoImhhc09uRGV2aWNlT3JpZW50YXRpb25Qcm9wZXJ0eSgpIik7Citz
aG91bGRCZVRydWUoIidvbmRldmljZW9yaWVudGF0aW9uJyBpbiB3aW5kb3ciKTsKK3Nob3VsZEJl
VHJ1ZSgid2luZG93Lmhhc093blByb3BlcnR5KCdvbmRldmljZW9yaWVudGF0aW9uJykiKTsKKwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1k
ZXZpY2Utb3JpZW50YXRpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQg
QEAKK1RoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVhY2hh
YmxlIGZyb20gdGhlIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uIG9iamVjdCwgYWxvbmcgd2l0
aCB0aGVpciB0eXBlcy4KKword2luZG93Lm9uZGV2aWNlb3JpZW50YXRpb24gW251bGxdCisKSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1vbi1kZXZp
Y2Utb3JpZW50YXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9X
aW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
b24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsOTQgQEAK
KzxwPlRoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVhY2hh
YmxlIGZyb20gdGhlIHdpbmRvdy5vbmRldmljZW9yaWVudGF0aW9uCitvYmplY3QsIGFsb25nIHdp
dGggdGhlaXIgdHlwZXMuPC9wPgorPGhyPgorPHByZSBpZD0icHJlIj48L3ByZT4KKworPHNjcmlw
dD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOworICAgIAordmFyIGxvZ0J1ZmZlciA9IFtdOworZnVuY3Rpb24g
bG9nKHMpCit7CisgICAgbG9nQnVmZmVyLnB1c2gocyk7Cit9CisKK3ZhciBwcmUgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgncHJlJyk7CitmdW5jdGlvbiBmbHVzaExvZygpCit7CisgICAgdmFy
IGxvZ01lc3NhZ2UgPSBsb2dCdWZmZXIuam9pbigiIik7CisgICAgcHJlLmFwcGVuZENoaWxkKGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKGxvZ01lc3NhZ2UpKTsKK30KKworZnVuY3Rpb24gdHJ5RXZh
bChzdHJpbmcpCit7CisgICAgdHJ5IHsKKyAgICAgICAgcmV0dXJuIGV2YWwoc3RyaW5nKTsKKyAg
ICB9IGNhdGNoIChlKSB7CisgICAgICAgIHJldHVybiBuZXcgU3RyaW5nKCJDYXVnaHQgZXhjZXB0
aW9uOiAiICsgZSk7CisgICAgfQorfQorCitmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFsdWUp
Cit7CisgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxsKSAv
LzsKKyAgICAgICAgcmV0dXJuICJudWxsIjsKKyAgICByZXR1cm4gdHlwZW9mIHZhbHVlOworfQor
CitmdW5jdGlvbiB0eXBlU3RyaW5nTnVsbEF3YXJlKHZhbHVlKQoreworICAgIHZhciB2YWx1ZVR5
cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworICAgIHJldHVybiB2YWx1ZVR5cGUgPT0gIm9i
amVjdCIKKyAgICAgICAgPyBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpCisg
ICAgICAgIDogIlsiICsgdmFsdWVUeXBlICsgIl0iOworfQorCitmdW5jdGlvbiBsb2dWYWx1ZSh2
YWx1ZU5hbWUpCit7CisgICAgdmFyIHZhbHVlID0gdHJ5RXZhbCh2YWx1ZU5hbWUpOworICAgIHZh
ciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworCisgICAgLy8gRG9uJ3QgdGFp
bnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHZhcmlhYmxlcworICAgIGlmICh2YWx1ZSA9PSBsb2dC
dWZmZXIgfHwgdmFsdWUgPT0gcHJlKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBEb24ndCB0
YWludCB0aGUgdGVzdCB3aXRoIG91ciBvd24gcHJvcGVydGllcworICAgIGlmICgvX192aXNpdGVk
QnlMb2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkgfHwgL19fbmFtZVdoZW5WaXNpdGVkQnlMb2dW
YWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdvcmsg
YXJvdW5kIEZpcmVmb3ggaW5maW5pdGUgcmVjdXJzaW9uCisgICAgaWYgKC9cLlswLTldLy50ZXN0
KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIEF2b2lkIGluZmluaXRlIHJl
Y3Vyc2lvbgorICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNpdGVk
QnlMb2dWYWx1ZV9fKSB7IC8vOworICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRlZCBh
Ym92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2codmFsdWVOYW1lICsgIiAiICsgdHlw
ZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKworICAgIGlmICh2YWx1ZVR5cGUgPT0g
Im9iamVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fID0gdHJ1ZTsK
KyAgICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB2YWx1ZU5hbWU7
CisgICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVlTmFtZSk7CisgICAgfQorfQorCitm
dW5jdGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0TmFtZSkKK3sKKyAgICB2YXIgYXJy
YXkgPSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KSB7CisgICAg
ICAgIGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAgICBhcnJheS5zb3J0KCk7CisgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgeworICAgICAgICB2YXIgcHJv
cGVydHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUob2JqZWN0TmFtZSArICIuIiArIHBy
b3BlcnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5kb3cub25kZXZpY2VvcmllbnRhdGlv
bicpOworZmx1c2hMb2coKTsKKzwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwJKHJldmlzaW9uIDU5ODQxKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDggQEAgdmFyIF9fc2tpcF9fID0gewogICAgICJ3aW5k
b3cuY2xpZW50SW5mb3JtYXRpb24uZ2VvbG9jYXRpb24iIDogMSwKICAgICAid2luZG93LkJsb2Iu
cHJvdG90eXBlLnNsaWNlIiA6IDEsCiAgICAgIndpbmRvdy5GaWxlRXJyb3IiIDogMSwKLSAgICAi
d2luZG93LkZpbGVSZWFkZXIiIDogMQorICAgICJ3aW5kb3cuRmlsZVJlYWRlciIgOiAxLAorICAg
ICJ3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiIgOiAxCiB9OwogCiBmdW5jdGlvbiBsb2dWYWx1
ZSh2YWx1ZU5hbWUpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRl
c3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlw
dG9ycy5qcwkocmV2aXNpb24gNTk4NDEpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cv
c2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcwkod29ya2luZyBjb3B5
KQpAQCAtMzcsNiArMzcsNyBAQCB2YXIgX19za2lwX18gPSB7CiAgICAgIkZsb2F0QXJyYXkiIDog
MSwKICAgICAiRmlsZUVycm9yIiA6IDEsCiAgICAgIkZpbGVSZWFkZXIiIDogMSwKKyAgICAib25k
ZXZpY2VvcmllbnRhdGlvbiIgOiAxLAogICAgIC8vIElnbm9yZSB0aGlzIHByb3BlcnR5IGJlY2F1
c2UgaXQgb25seSBhcHBlYXJzIGluIGRlYnVnIGJ1aWxkcyBhbmQgbm90IGluIHJlbGVhc2UuCiAg
ICAgImpzY3ByaW50IiA6IDEKIH07CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1
bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CShyZXZpc2lvbiA1OTg0MSkKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMjgzOCwzICsyODM4LDcgQEAgQlVHV0szOTEwNSBXSU4gTElOVVggOiBlZGl0
aW5nL3NwZWxsaW5nLwogCiAvLyBGbGFreSB0ZXN0cwogQlVHNDQyMjkgV0lOIExJTlVYIDogZmFz
dC9sb2FkZXIvcmVjdXJzaXZlLWJlZm9yZS11bmxvYWQtY3Jhc2guaHRtbCA9IFBBU1MgVEVYVAor
CisvLyBEZXZpY2VPcmllbnRhdGlvbiBBUEkgbm90IHlldCBpbXBsZW1lbnRlZC4KK0JVRzQ0NjU0
IFNLSVAgOiBmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbiA9IFRFWFQKK0JVRzQ0NjU0IFNLSVAg
OiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9u
Lmh0bWwgPSBURVhUCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkocmV2aXNpb24gNTk4
NDEpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkod29ya2luZyBjb3B5KQpA
QCAtMTE3OSw2ICsxMTc5LDcgQEAgZmFzdC9kb20vY2xpZW50LXdpZHRoLWhlaWdodC1xdWlya3Mu
aHRtbAogZmFzdC9kb20vY2xpZW50LXdpZHRoLWhlaWdodC5odG1sCiBmYXN0L2RvbS9jc3NUYXJn
ZXQtY3Jhc2guaHRtbAogZmFzdC9kb20vZnJhbWUtbG9hZGluZy12aWEtZG9jdW1lbnQtd3JpdGUu
aHRtbAorZmFzdC9kb20vRGV2aWNlT3JpZW50YXRpb24vd2luZG93LXByb3BlcnR5Lmh0bWwKIGZh
c3QvZG9tL0dlb2xvY2F0aW9uL2NhbGxiYWNrLWV4Y2VwdGlvbi5odG1sCiBmYXN0L2RvbS9HZW9s
b2NhdGlvbi9lcnJvci5odG1sCiBmYXN0L2RvbS9HZW9sb2NhdGlvbi9wZXJtaXNzaW9uLWRlbmll
ZC1hbHJlYWR5LWNsZWFyLXdhdGNoLmh0bWwKQEAgLTEyMDQsNiArMTIwNSw3IEBAIGZhc3QvZG9t
L1NlbGVjdG9yQVBJL3Jlc2lnLVNlbGVjdG9yc0FQSS0KIGZhc3QvZG9tL1dpbmRvdy9uZXctd2lu
ZG93LW9wZW5lci5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2Via2l0Q29udmVydFBvaW50Lmh0bWwK
IGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctb25Gb2N1cy5odG1sCitmYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXByb3BlcnRpZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwKIGZhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcmVzaXplLWFuZC1tb3ZlLWFyZ3VtZW50cy5odG1sCiBmYXN0L2RvbS9XaW5kb3cv
d2luZG93LXJlc2l6ZS5odG1sCiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXh5LXByb3BlcnRpZXMu
aHRtbApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHJldmlzaW9uIDU5ODQxKQorKysg
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTE4OCwz
ICsxODgsNyBAQCBzY3JvbGxiYXJzL3Njcm9sbGJhci1jbGljay1kb2VzLW5vdC1ibHVyCiAKICMg
SW5kZXhlZERCIGlzIG5vdCB5ZXQgZW5hYmxlZC4KIHN0b3JhZ2UvaW5kZXhlZGRiCisKKyMgVGhp
cyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbi4KK2Zhc3QvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uCitmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtb24tZGV2aWNl
LW9yaWVudGF0aW9uLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkocmV2aXNpb24g
NTk4NDEpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkp
CkBAIC01MDg4LDMgKzUwODgsNyBAQCBlZGl0aW5nL3NwZWxsaW5nL2NvbnRleHQtbWVudS1zdWdn
ZXN0aW9uCiAKICMgSW5kZXhlZERCIGlzIG5vdCB5ZXQgZW5hYmxlZC4KIHN0b3JhZ2UvaW5kZXhl
ZGRiCisKKyMgVGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbi4KK2Zh
c3QvZG9tL0RldmljZU9yaWVudGF0aW9uCitmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtb24tZGV2aWNlLW9yaWVudGF0aW9uLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3Jt
L3dpbi9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lw
cGVkCShyZXZpc2lvbiA1OTg0MSkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVk
CSh3b3JraW5nIGNvcHkpCkBAIC04ODMsMyArODgzLDcgQEAgZWRpdGluZy9zcGVsbGluZy9jb250
ZXh0LW1lbnUtc3VnZ2VzdGlvbgogCiAjIEluZGV4ZWREQiBpcyBub3QgeWV0IGVuYWJsZWQuCiBz
dG9yYWdlL2luZGV4ZWRkYgorCisjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgRGV2aWNlT3Jp
ZW50YXRpb24uCitmYXN0L2RvbS9EZXZpY2VPcmllbnRhdGlvbgorZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0aWVzLW9uLWRldmljZS1vcmllbnRhdGlvbi5odG1sCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>