<?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>88663</bug_id>
          
          <creation_ts>2012-06-08 09:46:25 -0700</creation_ts>
          <short_desc>Renamed DeviceOrientation to DeviceOrientationData</short_desc>
          <delta_ts>2012-06-22 04:33:32 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Amy Ousterhout">aousterh</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dino</cc>
    
    <cc>fishd</cc>
    
    <cc>hans</cc>
    
    <cc>haraken</cc>
    
    <cc>jamesr</cc>
    
    <cc>japhet</cc>
    
    <cc>jochen</cc>
    
    <cc>rakuco</cc>
    
    <cc>steveblock</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>644752</commentid>
    <comment_count>0</comment_count>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-08 09:46:25 -0700</bug_when>
    <thetext>Renamed DeviceOrientation to DeviceOrientationData</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644758</commentid>
    <comment_count>1</comment_count>
      <attachid>146589</attachid>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-08 09:55:57 -0700</bug_when>
    <thetext>Created attachment 146589
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644766</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-08 09:59:06 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644767</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-08 09:59:31 -0700</bug_when>
    <thetext>Attachment 146589 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/CMakeLists.txt&apos;, u&apos;Source/W...&quot; exit_code: 1
Source/WebKit/chromium/src/WebDeviceOrientationController.cpp:38:  Local variables should never be PassRefPtr (see http://webkit.org/coding/RefPtr.html).  [readability/pass_ptr] [5]
Source/WebCore/ChangeLog:8:  You should remove the &apos;No new tests&apos; and either add and list tests, or explain why no new tests were possible.  [changelog/nonewtests] [5]
Total errors found: 2 in 38 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644769</commentid>
    <comment_count>4</comment_count>
      <attachid>146589</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-06-08 10:04:46 -0700</bug_when>
    <thetext>Comment on attachment 146589
Patch

Attachment 146589 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12924353</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644770</commentid>
    <comment_count>5</comment_count>
      <attachid>146589</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-06-08 10:05:39 -0700</bug_when>
    <thetext>Comment on attachment 146589
Patch

Attachment 146589 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12922539</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644771</commentid>
    <comment_count>6</comment_count>
      <attachid>146589</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-06-08 10:07:25 -0700</bug_when>
    <thetext>Comment on attachment 146589
Patch

Attachment 146589 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12924355</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645092</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-06-08 15:52:06 -0700</bug_when>
    <thetext>What&apos;s the reason for this change? In OOP, classes encapsulate both data and behaviors, so there needs to be a specific reason to introduce a &quot;Data&quot; class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645369</commentid>
    <comment_count>8</comment_count>
      <attachid>146589</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-09 11:37:23 -0700</bug_when>
    <thetext>Comment on attachment 146589
Patch

I have the same question as Alexey.  This patch doesn&apos;t explain why we should make this change.  (I don&apos;t have an opinion about whether we should make the change because I don&apos;t understand the motiviation.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645389</commentid>
    <comment_count>9</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-06-09 12:28:10 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; What&apos;s the reason for this change? In OOP, classes encapsulate both data and behaviors, so there needs to be a specific reason to introduce a &quot;Data&quot; class.

(In reply to comment #8)
&gt; (From update of attachment 146589 [details])
&gt; I have the same question as Alexey.  This patch doesn&apos;t explain why we should make this change.  (I don&apos;t have an opinion about whether we should make the change because I don&apos;t understand the motiviation.)

The motivation is to match DeviceMotionData, which we think has a better name.

We&apos;ll update the description (and make the EWS bots green) next week.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645888</commentid>
    <comment_count>10</comment_count>
      <attachid>146822</attachid>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-11 04:03:23 -0700</bug_when>
    <thetext>Created attachment 146822
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645909</commentid>
    <comment_count>11</comment_count>
      <attachid>146822</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-06-11 04:42:47 -0700</bug_when>
    <thetext>Comment on attachment 146822
Patch

Attachment 146822 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12942220</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645931</commentid>
    <comment_count>12</comment_count>
      <attachid>146841</attachid>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-11 06:07:00 -0700</bug_when>
    <thetext>Created attachment 146841
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645945</commentid>
    <comment_count>13</comment_count>
      <attachid>146841</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-06-11 06:30:10 -0700</bug_when>
    <thetext>Comment on attachment 146841
Patch

Attachment 146841 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12938405</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646017</commentid>
    <comment_count>14</comment_count>
      <attachid>146863</attachid>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-11 08:58:39 -0700</bug_when>
    <thetext>Created attachment 146863
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646022</commentid>
    <comment_count>15</comment_count>
      <attachid>146863</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-06-11 09:15:23 -0700</bug_when>
    <thetext>Comment on attachment 146863
Patch

Looks great to me! Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646082</commentid>
    <comment_count>16</comment_count>
      <attachid>146863</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-11 10:34:14 -0700</bug_when>
    <thetext>Comment on attachment 146863
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        Udated all files that use DeviceOrientation.

Udated -&gt; Updated</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646085</commentid>
    <comment_count>17</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-11 10:37:10 -0700</bug_when>
    <thetext>I guess I don&apos;t understand why the new name is better so I&apos;ll let someone else review this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646163</commentid>
    <comment_count>18</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-06-11 12:15:50 -0700</bug_when>
    <thetext>Ditto. This doesn&apos;t look like an improvement to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647088</commentid>
    <comment_count>19</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-12 11:06:53 -0700</bug_when>
    <thetext>(I should also say that I don&apos;t have a strong opinion here.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647102</commentid>
    <comment_count>20</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-06-12 11:14:38 -0700</bug_when>
    <thetext>Seeing that there is also a &quot;DeviceOrientationController&quot; class, the whole subsystem likely needs a rewrite anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647821</commentid>
    <comment_count>21</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-06-13 02:12:47 -0700</bug_when>
    <thetext>The reason for the patch is to match the DeviceMotion implementation. DeviceOrientation and DeviceMotion are part of the same spec, and work in very similar ways.

Since the DeviceMotion bits were implemented at a later time, the two implementations are slightly different.

We think the code would be made more clear by making the two implementations more consistent.

In the choice between the two names DeviceOrientation and DeviceOrientationData, we think the latter is more self-explanatory. The name DeviceOrientation could just as well be the name of an interface for interacting with the DeviceOrientation API. DeviceOrientationData on the other hand, makes it clear (at least to me) that it&apos;s a class holding the raw data.


Hopefully this makes the motivation clear. It would be great if someone would like to review this.

The DeviceMotionData class was added in Bug 42865. Dean, maybe you could comment on the naming?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654495</commentid>
    <comment_count>22</comment_count>
      <attachid>146863</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2012-06-21 07:39:16 -0700</bug_when>
    <thetext>Comment on attachment 146863
Patch

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

I don&apos;t have a strong opinion between DeviceOrientation vs DeviceOrientationData, but agree that consistency is a good idea.

&gt; Source/WebCore/dom/DeviceOrientationData.cpp:1
&gt; +/*

This might just be a display problem with the review tool, but I&apos;m concerned that this isn&apos;t showing up as a rename+modify of DeviceOrientation.cpp, as we want to retain version history across the rename. Does it look OK on your client?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654496</commentid>
    <comment_count>23</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2012-06-21 07:41:21 -0700</bug_when>
    <thetext>(In reply to comment #20)
&gt; Seeing that there is also a &quot;DeviceOrientationController&quot; class, the whole subsystem likely needs a rewrite anyway.

Out of interest, why do you say this? When Geolocation was re-written a while back, it adopted Geolocation/GeolocationController/GeolocationClient naming and I thought this was an accepted pattern?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654521</commentid>
    <comment_count>24</comment_count>
      <attachid>146863</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-06-21 08:00:00 -0700</bug_when>
    <thetext>Comment on attachment 146863
Patch

&gt; This might just be a display problem with the review tool, but I&apos;m concerned that this isn&apos;t showing up as a rename+modify of DeviceOrientation.cpp, as we want to retain version history across the rename. Does it look OK on your client?

We looked at two recent renames (bug 75785 and bug 89578). When git is used to upload the patch, it doesn&apos;t show up as a rename in the review tool, but it will show up as a rename when it is committed to svn in the end.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654526</commentid>
    <comment_count>25</comment_count>
      <attachid>146863</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-21 08:02:44 -0700</bug_when>
    <thetext>Comment on attachment 146863
Patch

Rejecting attachment 146863 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
.h
patching file Source/WebKit/mac/WebCoreSupport/WebDeviceOrientationClient.mm
patching file Source/WebKit/mac/WebView/WebDeviceOrientation.mm
patching file Source/WebKit/mac/WebView/WebDeviceOrientationInternal.h
patching file Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
Hunk #2 succeeded at 769 (offset -10 lines).

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--force&apos;, u&apos;--reviewer&apos;, u&apos;Steve Block&apos;]&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue/

Full output: http://queues.webkit.org/results/13034150</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654585</commentid>
    <comment_count>26</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-06-21 09:14:03 -0700</bug_when>
    <thetext>&gt; &gt; Seeing that there is also a &quot;DeviceOrientationController&quot; class, the whole subsystem likely needs a rewrite anyway.
&gt; 
&gt; Out of interest, why do you say this? When Geolocation was re-written a while back, it adopted Geolocation/GeolocationController/GeolocationClient naming and I thought this was an accepted pattern?

I&apos;m saying this because in object oriented programming, &quot;data&quot; and &quot;controller&quot; classes are almost always a sign of poorly done job. A class is supposed to encapsulated data and behaviors, and to match a domain concept of &quot;object&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654610</commentid>
    <comment_count>27</comment_count>
      <attachid>148819</attachid>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-21 09:43:03 -0700</bug_when>
    <thetext>Created attachment 148819
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654613</commentid>
    <comment_count>28</comment_count>
      <attachid>148819</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2012-06-21 09:49:12 -0700</bug_when>
    <thetext>Comment on attachment 148819
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654634</commentid>
    <comment_count>29</comment_count>
      <attachid>148819</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-06-21 10:04:36 -0700</bug_when>
    <thetext>Comment on attachment 148819
Patch

Attachment 148819 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/13036146</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655305</commentid>
    <comment_count>30</comment_count>
      <attachid>148978</attachid>
    <who name="Amy Ousterhout">aousterh</who>
    <bug_when>2012-06-22 01:52:40 -0700</bug_when>
    <thetext>Created attachment 148978
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655312</commentid>
    <comment_count>31</comment_count>
      <attachid>148978</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2012-06-22 02:09:05 -0700</bug_when>
    <thetext>Comment on attachment 148978
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655357</commentid>
    <comment_count>32</comment_count>
      <attachid>148978</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-22 04:33:02 -0700</bug_when>
    <thetext>Comment on attachment 148978
Patch

Clearing flags on attachment: 148978

Committed r121016: &lt;http://trac.webkit.org/changeset/121016&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655358</commentid>
    <comment_count>33</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-22 04:33:32 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146589</attachid>
            <date>2012-06-08 09:55:57 -0700</date>
            <delta_ts>2012-06-11 04:03:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88663-20120608175556.patch</filename>
            <type>text/plain</type>
            <size>61927</size>
            <attacher name="Amy Ousterhout">aousterh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5ODE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGFlMzY5ZWZiODM1NjQ5
NzZmYjAwNDU4NDc2ZTkzYWIyMWMxY2FmYS4uYWQyNTFiODU1MWEyNGQ2YWMzZmRiZGQwYjc2YTU2
YmIyZWI1OTQyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY5IEBACisyMDEyLTA2LTA4ICBBbXkg
T3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERl
dmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKKwor
ICAgICAgICBSZW5hbWVkIERldmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0
YSBhbmQgdXBkYXRlZCBhbGwgZmlsZXMgdGhhdCB1c2UgRGV2aWNlT3JpZW50YXRpb24uCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgor
ICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAq
IFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RldmljZU9yaWVu
dGF0aW9uRXZlbnRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAgICogYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlv
bkV2ZW50Q2FsbGJhY2spOgorICAgICAgICAqIGRvbS9ET01BbGxJbk9uZS5jcHA6CisgICAgICAg
ICogZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50KToKKyAgICAgICAgKiBkb20vRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlcjo6dGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKToKKyAgICAgICAg
KiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcik6CisgICAgICAgICogZG9tL0Rl
dmljZU9yaWVudGF0aW9uRGF0YS5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb24uY3BwLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJD
b3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGE6OkRldmljZU9yaWVudGF0aW9uRGF0YSk6CisgICAgICAgIChX
ZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmFscGhhKToKKyAgICAgICAgKFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uRGF0YTo6YmV0YSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VP
cmllbnRhdGlvbkRhdGE6OmdhbW1hKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRGF0YTo6YWJzb2x1dGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25E
YXRhOjpjYW5Qcm92aWRlQWxwaGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhOjpjYW5Qcm92aWRlQmV0YSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkRhdGE6OmNhblByb3ZpZGVHYW1tYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmll
bnRhdGlvbkRhdGE6OmNhblByb3ZpZGVBYnNvbHV0ZSk6CisgICAgICAgICogZG9tL0RldmljZU9y
aWVudGF0aW9uRGF0YS5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9y
aWVudGF0aW9uLmguCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKERldmljZU9yaWVudGF0
aW9uRGF0YSk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25F
dmVudCk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2
aWNlT3JpZW50YXRpb25FdmVudCk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uRXZl
bnQuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25FdmVudDo6Y3JlYXRlKToKKyAgICAgICAgKERldmljZU9yaWVudGF0aW9uRXZlbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25FdmVudDo6b3JpZW50YXRpb24pOgor
ICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDoKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5
RGV2aWNlT3JpZW50YXRpb25DbGllbnQ6Omxhc3RPcmllbnRhdGlvbik6CisgICAgICAgICogcGxh
dGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrOjpzZXRPcmllbnRhdGlvbik6CisgICAg
ICAgICogcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6bGFzdE9yaWVudGF0aW9u
KToKKyAgICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jayk6CisgICAgICAgICogcGxh
dGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5oOgorICAgICAgICAoRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRRdCk6CisgICAgICAgICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25Qcm92aWRlclF0Lmg6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQpOgor
CiAyMDEyLTA2LTA4ICBLZW50YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSRUdSRVNTSU9OIHIxMTk4MDI6IFJlbW92ZSB1bm5lY2Vzc2FyeSBBU1NFUlQoIW1fZGVs
ZXRpb25IYXNCZWd1bikgZnJvbSBEb2N1bWVudC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxv
ZwppbmRleCA5OTllOWFhMDBjZjZkYTQ3MWYxZTY4NjY3MWJmYTU1ODBjMjRhYmY5Li41NjUyNmVk
ZGJhNjQwOWNkNWQ1YzEyNjQ4ZDgyMDVlYWQwNTEwMTNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wNi0wOCAgQW15IE91c3RlcmhvdXQgIDxh
b3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZpY2VPcmllbnRhdGlv
biB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJlbmFtZWQgRGV2aWNl
T3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24uCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaDoKKyAg
ICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeSk6CisKIDIwMTItMDYtMDcg
IENyeXN0YWwgWmhhbmcgIDxoYWl6aGFuZ0ByaW0uY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5
XSBTaG91bGQgVXNlIHRoZSBXZWJQYWdlIEFscmVhZHkgQ3JlYXRlZCBieSBDbGllbnQsIE5vIE5l
ZWQgdG8gQ3JlYXRlIE5ldyBPbmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDFlN2Ex
OWRkODAzNzc3NmZjNTc5YjZiNzdjZWMyMTM1ZDRiMDQzOWUuLjIyZGVkYjdkNmM2OWE3YmNhZWM4
NWNhOGM3MDU1NDNkMjlkOWE1M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjUgQEAKKzIwMTItMDYtMDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0u
b3JnPgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50
YXRpb25EYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04ODY2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFVwZGF0ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBp
bnN0ZWFkIG9mIERldmljZU9yaWVudGF0aW9uLgorCisgICAgICAgICogcHVibGljL1dlYkRldmlj
ZU9yaWVudGF0aW9uLmg6CisgICAgICAgIChXZWJEZXZpY2VPcmllbnRhdGlvbik6CisgICAgICAg
ICogc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5OjpsYXN0T3JpZW50YXRpb24pOgorICAgICAg
ICAqIHNyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5Lmg6CisgICAgICAgIChEZXZpY2VP
cmllbnRhdGlvbkNsaWVudFByb3h5KToKKyAgICAgICAgKiBzcmMvV2ViRGV2aWNlT3JpZW50YXRp
b24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbjo6V2ViRGV2aWNl
T3JpZW50YXRpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbjo6b3Bl
cmF0b3I9KToKKyAgICAgICAgKFdlYktpdDo6V2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9y
IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPik6CisgICAgICAgICog
c3JjL1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRp
b24pOgorCiAyMDEyLTA2LTA4ICBQZXRlciBCZXZlcmxvbyAgPHBldGVyQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbQ2hyb21pdW1dIFJlLWVuYWJsZSBTSEFSRURfV09SS0VSUyBmb3IgQW5kcm9p
ZCB1bnRpbCBhIGJ1aWxkIGZpeCBoYXMgYmVlbiByZXNvbHZlZC4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRl
eCA4OTcwMTBlMGNlMzIxMTU1ZGVhYmMyNjcyYjU2MWJjMTBlNDM5ZDE4Li41MWUwNmJjMjQzYzBk
ODFmNWM5NGUwYzVlZmNjNjdjNzZlMTI1MWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMTItMDYtMDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRp
b25EYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04
ODY2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVw
ZGF0ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0
ZWFkIG9mIERldmljZU9yaWVudGF0aW9uLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRGV2
aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaDoKKyAgICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xp
ZW50RWZsKToKKwogMjAxMi0wNi0wNSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgog
CiAgICAgICAgIFJlbW92ZSBzdXBwb3J0IGZvciB0YXJnZXQtZGVuc2l0eWRwaSBpbiB0aGUgdmll
d3BvcnQgbWV0YSB0YWcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwppbmRleCAwMGRmZWZjNjFjMDZmYzc5MmUxZTVh
MGE1N2ZhN2Q2YTlmOTgxMmJkLi41OTU3NDY5ODhiN2I0YzQ2YjcwYWVmOTc1NjgyY2JhYjE2OTA0
M2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9ndGsvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDYtMDggIEFteSBP
dXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbmFtZWQgRGV2
aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8gdXNlIHRoZSBy
ZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9yaWVudGF0aW9u
LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGsu
aDoKKyAgICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50R3RrKToKKwogMjAxMi0wNi0wNyAg
U2ltb24gUGVuYSAgPHNwZW5hQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gZGV2aWNlU2Nh
bGVGYWN0b3Igc2V0dGluZyBpcyBub3QgaG9ub3JlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDhkNDQz
MTIzYTZiYTAwNDlmNDdkYmVlOTZlMTRjZmY1NzY3Nzk0NzkuLmE1ZjUxOTU1OTA4OGY5ZGY3YjMx
YzNkZTRhYjc1Y2VkYTZkZTg4YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAor
MjAxMi0wNi0wOCAgQW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmVuYW1lZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBm
aWxlcyB0byB1c2UgdGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2Yg
RGV2aWNlT3JpZW50YXRpb24uCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRldmljZU9yaWVudGF0
aW9uSW50ZXJuYWwuaDoKKwogMjAxMi0wNi0wNyAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmVkdWNlIE5vZGUgb2JqZWN0IHNpemUgZnJvbSA3MiBieXRl
IHRvIDY0IGJ5dGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggOGJlOWNkMzg4YWIxMTg4YjdjYWRjMjRjOTBj
ZTQyNzhlYzFhNzE4OC4uZTllYzJjNzNkYTEzZWZkMDk5ZjIzYmQwYzhjMTQzODc3ZGNjYWJhOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wNi0wOCAgQW15IE91c3Rlcmhv
dXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZpY2VPcmll
bnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJlbmFtZWQg
RGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24uCisKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHA6CisgICAg
ICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0TW9ja0RldmljZU9yaWVudGF0aW9uKToK
KwogMjAxMi0wNi0wNyAgWm9sdGFuIEhvcnZhdGggIDx6b2x0YW5Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBbUXRdIFF0IERSVCBzaG91bGQgbG9hZCBleHRlcm5hbCByZXNvdXJjZXMgLSBjbGVhbnVw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDdiOTc3ODM0NjM5MWU2MDQ0OTI5ZGM0MGQyNjM1OTlh
YjcwYjkzYTcuLmI2NjgxNzIwNmYxOWEwNmY1ZTI4MzM0ZDhmNzZhMThlYjEzOTZmY2EgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CkBAIC01NjUsOCArNTY1LDggQEAgU0VUKFdlYkNvcmVfU09VUkNFUwog
ICAgIGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcAogICAgIGRvbS9EZXZpY2VNb3Rpb25E
YXRhLmNwcAogICAgIGRvbS9EZXZpY2VNb3Rpb25FdmVudC5jcHAKLSAgICBkb20vRGV2aWNlT3Jp
ZW50YXRpb24uY3BwCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKyAg
ICBkb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlv
bkV2ZW50LmNwcAogICAgIGRvbS9Eb2N1bWVudC5jcHAKICAgICBkb20vRG9jdW1lbnRNYXJrZXJD
b250cm9sbGVyLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlz
dC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggYTljNzVlMjYw
MzcyZDBjM2JhZjBjYjFmMjkyZmU1MDgwM2EwNTA2Zi4uNGQ5MDljODZlZGRhMjFiYTYwZDcyY2Mx
NmRjYjE5MWNkZTRmNmFjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUu
bGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC0xODE5
LDEwICsxODE5LDEwIEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbi5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3Bw
IFwKKwlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmggXAogCVNvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCi0JU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgXAog
CVNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50RnJhZ21lbnQuaCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9U
YXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCAxNTNmMTM5YzMzZWI3
YmNkMDgzZjJiNDJkMThmMzI5MTFhZmQ4MmRlLi4xNzYxYTEyY2I2OTk0YTdiYzY3OTc2YzM3YjBi
ZmYyZGZjNzVjY2RmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTUzMyw4ICs1MzMsOCBAQCBTT1VSQ0VTICs9
IFwKICAgICBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgXAogICAgIGRvbS9EZXZpY2VN
b3Rpb25EYXRhLmNwcCBcCiAgICAgZG9tL0RldmljZU1vdGlvbkV2ZW50LmNwcCBcCi0gICAgZG9t
L0RldmljZU9yaWVudGF0aW9uLmNwcCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHAgXAorICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIFwgICAgCiAgICAg
ZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKICAgICBkb20vRG9jdW1lbnQuY3BwIFwK
ICAgICBkb20vRG9jdW1lbnRFdmVudFF1ZXVlLmNwcCBcCkBAIC0xNzA2LDkgKzE3MDYsOSBAQCBI
RUFERVJTICs9IFwKICAgICBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIFwKICAgICBkb20v
RGV2aWNlTW90aW9uRGF0YS5oIFwKICAgICBkb20vRGV2aWNlTW90aW9uRXZlbnQuaCBcCi0gICAg
ZG9tL0RldmljZU9yaWVudGF0aW9uLmggXAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dC5oIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggXAorICAgIGRvbS9E
ZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQu
aCBcCiAgICAgZG9tL0RvY3VtZW50LmggXAogICAgIGRvbS9Eb2N1bWVudEZyYWdtZW50LmggXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5neXBpCmluZGV4IGIzZTY2MjdlY2QyNDRmNGQ3YzczNzRlMmM0ZDY4NzQ4NzVhMzQ0
OWYuLjE4YTczMWY1Mjk3ZGEzMjczYjVjNzI3MDI3YTQwZDFmOTc3YzEyYTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkKQEAgLTYxOCw4ICs2MTgsOCBAQAogICAgICAgICAgICAgJ2RvbS9Db250ZXh0RGVzdHJ1
Y3Rpb25PYnNlcnZlci5oJywKICAgICAgICAgICAgICdkb20vRE9NSW1wbGVtZW50YXRpb24uaCcs
CiAgICAgICAgICAgICAnZG9tL0RPTVRpbWVTdGFtcC5oJywKLSAgICAgICAgICAgICdkb20vRGV2
aWNlT3JpZW50YXRpb24uaCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50LmgnLAorICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaCcsCiAgICAg
ICAgICAgICAnZG9tL0RvY3VtZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudEZyYWdt
ZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudE1hcmtlci5oJywKQEAgLTUyNTUsOSAr
NTI1NSw5IEBACiAgICAgICAgICAgICAnZG9tL0RldmljZU1vdGlvbkRhdGEuaCcsCiAgICAgICAg
ICAgICAnZG9tL0RldmljZU1vdGlvbkV2ZW50LmNwcCcsCiAgICAgICAgICAgICAnZG9tL0Rldmlj
ZU1vdGlvbkV2ZW50LmgnLAotICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbi5jcHAn
LAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwJywKICAg
ICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgnLAorICAgICAgICAg
ICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwJywKICAgICAgICAgICAgICdkb20vRGV2
aWNlT3JpZW50YXRpb25FdmVudC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRh
dGlvbkV2ZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudC5jcHAnLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagppbmRleCBiMTZhOTYyZTBlYjIw
ZGUwNzY3MzAxM2Y4MDgwNzhiNmNmNzZjMDdjLi41NDA0MmMyMzVkMmI1ZWI0MGExYjA1NTExNmE1
ZjM3OGI0Zjk2OGNlIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9X
ZWJDb3JlLnZjcHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3Jl
LnZjcHJvagpAQCAtNDkxMjcsNyArNDkxMjcsMTEgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8
RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uLmNwcCIKKwkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorCQkJCT4K
KwkJCTwvRmlsZT4KKwkJCTxGaWxlCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmNwcCIKIAkJCQk+CiAJCQkJPEZpbGVDb25maWd1cmF0aW9uCiAJ
CQkJCU5hbWU9IkRlYnVnfFdpbjMyIgpAQCAtNDkxNzksMTUgKzQ5MTgzLDExIEBACiAJCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRo
PSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb24uaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8Rmls
ZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCiAJ
CQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIgorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERl
dmljZU9yaWVudGF0aW9uRGF0YS5jcHAiCiAJCQkJPgogCQkJCTxGaWxlQ29uZmlndXJhdGlvbgog
CQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKQEAgLTQ5MjM5LDkgKzQ5MjM5LDkgQEAKIAkJCQk8L0Zp
bGVDb25maWd1cmF0aW9uPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKIAkJCQk+Ci0JCQk8L0ZpbGU+CisJCQk8
L0ZpbGU+CQogCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRh
dGlvbkV2ZW50LmNwcCIKIAkJCQk+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYjFkMGNmYmZkMThkZDZjNzc3MTM4MTJmMjZlMDE3
ZjUzYzliNGI1ZC4uNjEyYzhmM2I2YzQ2NzQ4ZTg2YmI2ZWExNzljMmQ4NDQzZWIxYjYwNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTU5OSw3ICsxNTk5LDcgQEAKIAkJNTdDRjRDODcxNEY3NTk3QTAwRUNGRjE0IC8qIEVsZW1l
bnRTaGFkb3cuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDU3Q0Y0Qzg1MTRGNzU5N0EwMEVDRkYxNCAvKiBFbGVtZW50U2hhZG93LmggKi87IH07CiAJCTU5
MDVBREJGMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MDVBREJEMTMwMkYzQ0UwMEYxMTZE
RiAvKiBYTUxUcmVlVmlld2VyLmNwcCAqLzsgfTsKIAkJNTkwNUFEQzAxMzAyRjNDRTAwRjExNkRG
IC8qIFhNTFRyZWVWaWV3ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDU5MDVBREJFMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmggKi87
IH07Ci0JCTU5MEUxQjQ5MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkwRTFCNDgxMUU0
RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTkwRTFCNDkxMUU0RUY0QjAwNjlGNzg0IC8q
IERldmljZU9yaWVudGF0aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0
aW9uRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTU5MEUxQjRCMTFFNEVGNzAwMDY5Rjc4NCAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRD
dXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTkwRTFCNEExMUU0RUY3MDAwNjlGNzg0IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3Rv
bS5jcHAgKi87IH07CiAJCTU5MTAyRkJCMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNo
VXRpbHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTkxMDJGQjkxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5jcHAgKi87IH07
CiAJCTU5MTAyRkJDMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MTAyRkJBMTQzMjdE
M0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuaCAqLzsgfTsKQEAgLTE2MzUsNyArMTYz
NSw3IEBACiAJCTU5QzI3RjA3MTM4RDI4Q0YwMDc5QjdFMiAvKiBOZXR3b3JrUmVzb3VyY2VzRGF0
YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlDMjdG
MDYxMzhEMjhDRjAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJjZXNEYXRhLmggKi87IH07CiAJCTU5
QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlDMjgwNDMxMzhEQzI0MTAwNzlCN0UyIC8q
IFhNTEVycm9ycy5jcHAgKi87IH07CiAJCTU5QzI4MDQ2MTM4REMyNDEwMDc5QjdFMiAvKiBYTUxF
cnJvcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5
QzI4MDQ0MTM4REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuaCAqLzsgfTsKLQkJNTlEMUMxMDQx
MUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAv
KiBEZXZpY2VPcmllbnRhdGlvbi5jcHAgKi87IH07CisJCTU5RDFDMTA0MTFFQjVEQ0YwMEI2MzhD
OCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9y
aWVudGF0aW9uRGF0YS5jcHAgKi87IH07CiAJCTU5REU3OTA0MTNGMTZDN0YwMDA3RkNERiAvKiBK
YXZhTWV0aG9kSlNDLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDU5REU3OTAzMTNGMTZDN0YwMDA3RkNERiAvKiBKYXZhTWV0aG9kSlNDLmNwcCAqLzsg
fTsKIAkJNTlERTc5MDYxM0YxNkM4QzAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5REU3OTA1MTNGMTZDOEMw
MDA3RkNERiAvKiBKYXZhTWV0aG9kSlNDLmggKi87IH07CiAJCTU5RTU2MEE3MTEwNTMzNjYwMEFB
MTI1OCAvKiBKYXZhQ2xhc3NKU0MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU5RTU2MEE2MTEwNTMzNjYwMEFBMTI1OCAvKiBKYXZhQ2xhc3NKU0MuaCAq
LzsgfTsKQEAgLTg2NDYsNyArODY0Niw3IEBACiAJCTU3Q0Y0Qzg1MTRGNzU5N0EwMEVDRkYxNCAv
KiBFbGVtZW50U2hhZG93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVsZW1l
bnRTaGFkb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkwNUFEQkQxMzAyRjND
RTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gWE1MVHJlZVZpZXdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTU5MDVBREJFMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTFRyZWVWaWV3ZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4
NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRGV2aWNlT3JpZW50YXRpb25EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTU5MEUxQjRBMTFFNEVGNzAwMDY5Rjc4NCAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRD
dXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEZXZpY2VP
cmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTkxMDJGQjkxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50U2VhcmNoVXRpbHMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTEwMkZCQTE0MzI3RDNCMDAzQzlEMDQgLyog
Q29udGVudFNlYXJjaFV0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENv
bnRlbnRTZWFyY2hVdGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODY4NSw3
ICs4Njg1LDcgQEAKIAkJNTlDMjdGMDYxMzhEMjhDRjAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJj
ZXNEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtSZXNvdXJj
ZXNEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5QzI4MDQzMTM4REMyNDEw
MDc5QjdFMiAvKiBYTUxFcnJvcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gWE1MRXJyb3JzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlDMjgw
NDQxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBYTUxFcnJvcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTlE
MUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmlj
ZU9yaWVudGF0aW9uRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1OURFNzkwMzEzRjE2QzdGMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKYXZhTWV0aG9kSlNDLmNwcDsgcGF0aCA9IGpz
Yy9KYXZhTWV0aG9kSlNDLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlERTc5
MDUxM0YxNkM4QzAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gSmF2YU1ldGhvZEpTQy5oOyBwYXRoID0ganNjL0phdmFNZXRob2RKU0Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlFNTYwQTYxMTA1MzM2NjAwQUExMjU4
IC8qIEphdmFDbGFzc0pTQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKYXZh
Q2xhc3NKU0MuaDsgcGF0aCA9IGpzYy9KYXZhQ2xhc3NKU0MuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTIxMTY2LDExICsyMTE2NiwxMSBAQAogCQkJCTMxRkIxQTU0MTIwQTVEMDYw
MERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5jcHAgKi8sCiAJCQkJMzFGQjFBNTUxMjBBNUQw
NjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmggKi8sCiAJCQkJMzFGQjFBNTYxMjBBNUQw
NjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmlkbCAqLywKLQkJCQk1OUQxQzEwMzExRUI1
RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24uY3BwICovLAotCQkJCTU5MEUxQjQ4MTFF
NEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbi5oICovLAogCQkJCTU5QThGMUQ3MTFB
Njk1MjAwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oICovLAogCQkJCTU5QThG
MUQzMTFBNjk1MDgwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwICov
LAogCQkJCTU5QThGMUQ1MTFBNjk1MTMwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuaCAqLywKKwkJCQk1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50
YXRpb25EYXRhLmNwcCAqLywKKwkJCQk1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNl
T3JpZW50YXRpb25EYXRhLmggKi8sCiAJCQkJNTlBODVFQTExMTlENjhEOTAwREVGMUVGIC8qIERl
dmljZU9yaWVudGF0aW9uRXZlbnQuY3BwICovLAogCQkJCTU5QTg1RUEzMTE5RDY4RUMwMERFRjFF
RiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8sCiAJCQkJNTlBODVFQUExMTlEN0I2RTAw
REVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaWRsICovLApAQCAtMjIxMzAsMTAgKzIy
MTMwLDEwIEBACiAJCQkJMzFGQjFBNTkxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkNv
bnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxRkIxQTVCMTIwQTVEMDYwMERDMDJBMCAv
KiBEZXZpY2VNb3Rpb25EYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUZCMUE1RDEyMEE1RDA2
MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCTU5MEUx
QjQ5MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbi5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTlBOEYxRDgxMUE2OTUyMDAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1OTMwOUExMzExRjRBRTZBMDAyNTA2MDMgLyogRGV2aWNl
T3JpZW50YXRpb25DbGllbnRNb2NrLmggaW4gSGVhZGVycyAqLywKIAkJCQk1OUE4RjFENjExQTY5
NTEzMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRh
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1OUE4NUVBNDExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNl
T3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0VDQURGQzcxNTM3NzhGRjAw
RTM3MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0aXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRUNB
REZDOTE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8s
CkBAIC0yNTYyNCw5ICsyNTYyNCw5IEBACiAJCQkJMzFGQjFBNTgxMjBBNUQwNjAwREMwMkEwIC8q
IERldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFGQjFBNUEx
MjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkRhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMzFGQjFBNUMxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmNwcCBpbiBT
b3VyY2VzICovLAotCQkJCTU5RDFDMTA0MTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRh
dGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1OTMwOUExMTExRjRBRTU4MDAyNTA2MDMgLyog
RGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QThG
MUQ0MTFBNjk1MDgwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTlEMUMxMDQxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVu
dGF0aW9uRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1OUE4NUVBMjExOUQ2OEQ5MDBERUYx
RUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRUNB
REZDNjE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQWx0ZXJuYXRpdmUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQ0VDQURGQzgxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQu
Y3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcAppbmRleCBlYzc4NzFk
NTExMjZmZWQyZWNlMTc2NWU3ZTVlZWZhNGI2Y2RmNjdiLi41YTBmZjdkNzM1ODE1ODg5NjNmZjI4
OTVjNTVlMjdiZTQwYmY0MjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKQEAgLTI5LDcg
KzI5LDcgQEAKIAogI2luY2x1ZGUgIkpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogCi0jaW5j
bHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRh
dGEuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAKIHVzaW5nIG5hbWVz
cGFjZSBKU0M7CkBAIC04Myw3ICs4Myw3IEBAIEpTVmFsdWUgSlNEZXZpY2VPcmllbnRhdGlvbkV2
ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChFeGVjU3RhdGUqIGV4ZWMpCiAgICAgZG91
YmxlIGdhbW1hID0gZXhlYy0+YXJndW1lbnQoNSkudG9OdW1iZXIoZXhlYyk7CiAgICAgYm9vbCBh
YnNvbHV0ZVByb3ZpZGVkID0gIWV4ZWMtPmFyZ3VtZW50KDUpLmlzVW5kZWZpbmVkT3JOdWxsKCk7
CiAgICAgYm9vbCBhYnNvbHV0ZSA9IGV4ZWMtPmFyZ3VtZW50KDYpLnRvQm9vbGVhbigpOwotICAg
IFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gb3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlv
bjo6Y3JlYXRlKGFscGhhUHJvdmlkZWQsIGFscGhhLCBiZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1h
UHJvdmlkZWQsIGdhbW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNvbHV0ZSk7CisgICAgUmVmUHRy
PERldmljZU9yaWVudGF0aW9uRGF0YT4gb3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbkRh
dGE6OmNyZWF0ZShhbHBoYVByb3ZpZGVkLCBhbHBoYSwgYmV0YVByb3ZpZGVkLCBiZXRhLCBnYW1t
YVByb3ZpZGVkLCBnYW1tYSwgYWJzb2x1dGVQcm92aWRlZCwgYWJzb2x1dGUpOwogICAgIERldmlj
ZU9yaWVudGF0aW9uRXZlbnQqIGltcCA9IHN0YXRpY19jYXN0PERldmljZU9yaWVudGF0aW9uRXZl
bnQqPihpbXBsKCkpOwogICAgIGltcC0+aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQodHlwZSwg
YnViYmxlcywgY2FuY2VsYWJsZSwgb3JpZW50YXRpb24uZ2V0KCkpOwogICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9t
L1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcAppbmRleCBm
YzNmYzIwMjZkMTA1MjVjZWFjZGUwNGE2NGExNmVhMWRjMDRlMWI2Li5iYmRjM2ZjZThhYTY3YmM4
OTIyNzIzMjIyNGYwMzU1YTY1NTdmMmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50
Q3VzdG9tLmNwcApAQCAtMjgsNyArMjgsNyBAQAogCiAjaWYgRU5BQkxFKERFVklDRV9PUklFTlRB
VElPTikKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCisjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiVjhCaW5kaW5nLmgiCiAjaW5jbHVkZSAiVjhC
aW5kaW5nTWFjcm9zLmgiCiAjaW5jbHVkZSAiVjhQcm94eS5oIgpAQCAtOTMsNyArOTMsNyBAQCB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNl
T3JpZW50YXRpb25FdmVudENhbGxiYQogICAgIGRvdWJsZSBnYW1tYSA9IGFyZ3NbNV0tPk51bWJl
clZhbHVlKCk7CiAgICAgYm9vbCBhYnNvbHV0ZVByb3ZpZGVkID0gIWlzVW5kZWZpbmVkT3JOdWxs
KGFyZ3NbNl0pOwogICAgIGJvb2wgYWJzb2x1dGUgPSBhcmdzWzZdLT5Cb29sZWFuVmFsdWUoKTsK
LSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50
YXRpb246OmNyZWF0ZShhbHBoYVByb3ZpZGVkLCBhbHBoYSwgYmV0YVByb3ZpZGVkLCBiZXRhLCBn
YW1tYVByb3ZpZGVkLCBnYW1tYSwgYWJzb2x1dGVQcm92aWRlZCwgYWJzb2x1dGUpOworICAgIFJl
ZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRp
b25EYXRhOjpjcmVhdGUoYWxwaGFQcm92aWRlZCwgYWxwaGEsIGJldGFQcm92aWRlZCwgYmV0YSwg
Z2FtbWFQcm92aWRlZCwgZ2FtbWEsIGFic29sdXRlUHJvdmlkZWQsIGFic29sdXRlKTsKICAgICBp
bXAtPmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KHR5cGUsIGJ1YmJsZXMsIGNhbmNlbGFibGUs
IG9yaWVudGF0aW9uLmdldCgpKTsKICAgICByZXR1cm4gdjg6OkhhbmRsZTx2ODo6VmFsdWU+KCk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NQWxsSW5PbmUuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RPTUFsbEluT25lLmNwcAppbmRleCAzMjBhZWY5ODIwOWE1ZWI4NGE3
ZTc1MjhmY2IzYjU2NDk2ODU4Nzc4Li5mNmE5ZTk0YzY5YmUzOWM1OGFjMmI2NjM4YTJlYjdjM2Jm
MGEzNGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NQWxsSW5PbmUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01BbGxJbk9uZS5jcHAKQEAgLTU0LDggKzU0LDggQEAK
ICNpbmNsdWRlICJEZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcCIKICNpbmNsdWRlICJEZXZpY2VN
b3Rpb25EYXRhLmNwcCIKICNpbmNsdWRlICJEZXZpY2VNb3Rpb25FdmVudC5jcHAiCi0jaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb24uY3BwIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5jcHAiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCIKICNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCIKICNpbmNsdWRlICJEb2N1bWVudC5jcHAi
CiAjaW5jbHVkZSAiRG9jdW1lbnRFdmVudFF1ZXVlLmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2
aWNlT3JpZW50YXRpb24uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5YThjMjU3
Y2E3NDE5N2NlN2IzYjgyODg2OGFmNjM0MTM3ODVkNGM1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbi5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBg
QVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgot
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLVBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IERldmljZU9yaWVu
dGF0aW9uOjpjcmVhdGUoKQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50
YXRpb24pOwotfQotCi1QYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBEZXZpY2VPcmllbnRh
dGlvbjo6Y3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2Fu
UHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdh
bW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNvbHV0ZSkKLXsKLSAgICByZXR1
cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uKGNhblByb3ZpZGVBbHBoYSwgYWxwaGEs
IGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEsIGdhbW1hLCBjYW5Qcm92aWRl
QWJzb2x1dGUsIGFic29sdXRlKSk7Ci19Ci0KLQotRGV2aWNlT3JpZW50YXRpb246OkRldmljZU9y
aWVudGF0aW9uKCkKLSAgICA6IG1fY2FuUHJvdmlkZUFscGhhKGZhbHNlKQotICAgICwgbV9jYW5Q
cm92aWRlQmV0YShmYWxzZSkKLSAgICAsIG1fY2FuUHJvdmlkZUdhbW1hKGZhbHNlKQotICAgICwg
bV9jYW5Qcm92aWRlQWJzb2x1dGUoZmFsc2UpCi0gICAgLCBtX2FscGhhKDApCi0gICAgLCBtX2Jl
dGEoMCkKLSAgICAsIG1fZ2FtbWEoMCkKLSAgICAsIG1fYWJzb2x1dGUoZmFsc2UpCi17Ci19Ci0K
LURldmljZU9yaWVudGF0aW9uOjpEZXZpY2VPcmllbnRhdGlvbihib29sIGNhblByb3ZpZGVBbHBo
YSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBj
YW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJv
b2wgYWJzb2x1dGUpCi0gICAgOiBtX2NhblByb3ZpZGVBbHBoYShjYW5Qcm92aWRlQWxwaGEpCi0g
ICAgLCBtX2NhblByb3ZpZGVCZXRhKGNhblByb3ZpZGVCZXRhKQotICAgICwgbV9jYW5Qcm92aWRl
R2FtbWEoY2FuUHJvdmlkZUdhbW1hKQotICAgICwgbV9jYW5Qcm92aWRlQWJzb2x1dGUoY2FuUHJv
dmlkZUFic29sdXRlKQotICAgICwgbV9hbHBoYShhbHBoYSkKLSAgICAsIG1fYmV0YShiZXRhKQot
ICAgICwgbV9nYW1tYShnYW1tYSkKLSAgICAsIG1fYWJzb2x1dGUoYWJzb2x1dGUpCi17Ci19Ci0K
LWRvdWJsZSBEZXZpY2VPcmllbnRhdGlvbjo6YWxwaGEoKSBjb25zdAotewotICAgIHJldHVybiBt
X2FscGhhOwotfQotCi1kb3VibGUgRGV2aWNlT3JpZW50YXRpb246OmJldGEoKSBjb25zdAotewot
ICAgIHJldHVybiBtX2JldGE7Ci19Ci0KLWRvdWJsZSBEZXZpY2VPcmllbnRhdGlvbjo6Z2FtbWEo
KSBjb25zdAotewotICAgIHJldHVybiBtX2dhbW1hOwotfQotCi1ib29sIERldmljZU9yaWVudGF0
aW9uOjphYnNvbHV0ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYWJzb2x1dGU7Ci19Ci0KLWJv
b2wgRGV2aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVBbHBoYSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fY2FuUHJvdmlkZUFscGhhOwotfQotCi1ib29sIERldmljZU9yaWVudGF0aW9uOjpjYW5Q
cm92aWRlQmV0YSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY2FuUHJvdmlkZUJldGE7Ci19Ci0K
LWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVHYW1tYSgpIGNvbnN0Ci17Ci0gICAg
cmV0dXJuIG1fY2FuUHJvdmlkZUdhbW1hOwotfQotCi1ib29sIERldmljZU9yaWVudGF0aW9uOjpj
YW5Qcm92aWRlQWJzb2x1dGUoKSBjb25zdAotewotICAgIHJldHVybiBtX2NhblByb3ZpZGVBYnNv
bHV0ZTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb24uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzY3N2Q0MzMwODQw
MjE0N2ZhNjFhMzU5NTJkNGFkODczYWJlNzkwNi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb24u
aAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycg
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKLSAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIERldmlj
ZU9yaWVudGF0aW9uX2gKLSNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25faAotCi0jaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIERldmljZU9yaWVudGF0aW9uIDogcHVibGljIFJlZkNvdW50
ZWQ8RGV2aWNlT3JpZW50YXRpb24+IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxE
ZXZpY2VPcmllbnRhdGlvbj4gY3JlYXRlKCk7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNl
T3JpZW50YXRpb24+IGNyZWF0ZShib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBi
b29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRv
dWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUgPSBmYWxzZSwgYm9vbCBhYnNvbHV0
ZSA9IGZhbHNlKTsKLQotICAgIGRvdWJsZSBhbHBoYSgpIGNvbnN0OwotICAgIGRvdWJsZSBiZXRh
KCkgY29uc3Q7Ci0gICAgZG91YmxlIGdhbW1hKCkgY29uc3Q7Ci0gICAgYm9vbCBhYnNvbHV0ZSgp
IGNvbnN0OwotICAgIGJvb2wgY2FuUHJvdmlkZUFscGhhKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5Q
cm92aWRlQmV0YSgpIGNvbnN0OwotICAgIGJvb2wgY2FuUHJvdmlkZUdhbW1hKCkgY29uc3Q7Ci0g
ICAgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUoKSBjb25zdDsKLQotcHJpdmF0ZToKLSAgICBEZXZp
Y2VPcmllbnRhdGlvbigpOwotICAgIERldmljZU9yaWVudGF0aW9uKGJvb2wgY2FuUHJvdmlkZUFs
cGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29s
IGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSwg
Ym9vbCBhYnNvbHV0ZSk7Ci0KLSAgICBib29sIG1fY2FuUHJvdmlkZUFscGhhOwotICAgIGJvb2wg
bV9jYW5Qcm92aWRlQmV0YTsKLSAgICBib29sIG1fY2FuUHJvdmlkZUdhbW1hOwotICAgIGJvb2wg
bV9jYW5Qcm92aWRlQWJzb2x1dGU7Ci0gICAgZG91YmxlIG1fYWxwaGE7Ci0gICAgZG91YmxlIG1f
YmV0YTsKLSAgICBkb3VibGUgbV9nYW1tYTsKLSAgICBib29sIG1fYWJzb2x1dGU7Ci19OwotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBEZXZpY2VPcmllbnRhdGlvbl9oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oCmluZGV4IDJjMTZi
MGNkOGJjN2E3ODUwOTE2ZjhiZDAxZDY1OGY1ZmYwNjljNGIuLjQwNDljMDNhNGExNDRhNzQ1MjI5
YTA1NDEzODFjZDU3ZTE0YzY1YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmll
bnRhdGlvbkNsaWVudC5oCkBAIC0yOCwxOCArMjgsMTcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1jbGFzcyBEZXZpY2VPcmllbnRhdGlvbjsKIGNsYXNzIERldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlcjsKK2NsYXNzIERldmljZU9yaWVudGF0aW9uRGF0YTsKIGNsYXNzIFBhZ2U7CiAKIGNs
YXNzIERldmljZU9yaWVudGF0aW9uQ2xpZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5EZXZp
Y2VPcmllbnRhdGlvbkNsaWVudCgpIHt9Ci0KICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxl
cihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHN0
YXJ0VXBkYXRpbmcoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpID0gMDsK
LSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCA9
IDA7CisgICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigp
IGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
RGVzdHJveWVkKCkgPSAwOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmNwcAppbmRleCBlYWU2ZmI1MGFiMWIwZDM4MTI3YWFiYzE3
ODhjMTVkYTI1MDFiMGU1Li5mZGYyNDY1M2ZhMzFhN2IxMDAwNzhhMDI1ODkwYzkzMDZkZDUxMmVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmNwcApAQCAtMjYsOCArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZl
bnQuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTYsNyArNTYsNyBAQCB2b2lkIERldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6dGltZXJGaXJlZChUaW1lcjxEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXI+KgogICAgIEFTU0VSVF9VTlVTRUQodGltZXIsIHRpbWVyID09ICZtX3RpbWVy
KTsKICAgICBBU1NFUlQobV9jbGllbnQtPmxhc3RPcmllbnRhdGlvbigpKTsKIAotICAgIFJlZlB0
cjxEZXZpY2VPcmllbnRhdGlvbj4gb3JpZW50YXRpb24gPSBtX2NsaWVudC0+bGFzdE9yaWVudGF0
aW9uKCk7CisgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gb3JpZW50YXRpb24gPSBt
X2NsaWVudC0+bGFzdE9yaWVudGF0aW9uKCk7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9u
RXZlbnQ+IGV2ZW50ID0gRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMo
KS5kZXZpY2VvcmllbnRhdGlvbkV2ZW50LCBvcmllbnRhdGlvbi5nZXQoKSk7CiAKICAgICBWZWN0
b3I8UmVmUHRyPERPTVdpbmRvdz4gPiBsaXN0ZW5lcnNWZWN0b3I7CkBAIC0xMjgsNyArMTI4LDcg
QEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlc3VtZUV2ZW50c0ZvckFsbExp
c3RlbmVycyhET01XaW5kb3cqIHdpbmRvdykKICAgICAgICAgYWRkTGlzdGVuZXIod2luZG93KTsK
IH0KIAotdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU9y
aWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKK3ZvaWQgRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmll
bnRhdGlvbkRhdGEqIG9yaWVudGF0aW9uKQogewogICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlv
bkV2ZW50PiBldmVudCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVz
KCkuZGV2aWNlb3JpZW50YXRpb25FdmVudCwgb3JpZW50YXRpb24pOwogICAgIFZlY3RvcjxSZWZQ
dHI8RE9NV2luZG93PiA+IGxpc3RlbmVyc1ZlY3RvcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaAppbmRleCA3MDdjZDVjYjZkYjU0MTRiZTU5
NGEwMmU0OGEzYjY1NmExOTg4ZDg0Li5jOTI3MmEyZmI5ZjU3MDIzZjBmYzJmOTdjNzQzYjFmOGI4
MmRkMGM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgRGV2aWNlT3JpZW50YXRpb247CitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGE7CiBjbGFz
cyBEZXZpY2VPcmllbnRhdGlvbkNsaWVudDsKIAogY2xhc3MgRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyIDogcHVibGljIFN1cHBsZW1lbnQ8UGFnZT4gewpAQCAtNTAsNyArNTAsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzdXNwZW5kRXZlbnRzRm9yQWxsTGlzdGVuZXJzKERPTVdpbmRvdyopOwog
ICAgIHZvaWQgcmVzdW1lRXZlbnRzRm9yQWxsTGlzdGVuZXJzKERPTVdpbmRvdyopOwogCi0gICAg
dm9pZCBkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbiopOworICAg
IHZvaWQgZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb25EYXRhKik7
CiAKICAgICBib29sIGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsg
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRh
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjZlNzMwMmZkN2Y4YmJiNTI4OWI3ZjZlNmU1NTYxNTQ5MThiZjZhYTQKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcApA
QCAtMCwwICsxLDEwNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQYXNz
UmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVh
dGUoKQoreworICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25EYXRhKTsK
K30KKworUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IERldmljZU9yaWVudGF0aW9u
RGF0YTo6Y3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2Fu
UHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdh
bW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNvbHV0ZSkKK3sKKyAgICByZXR1
cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uRGF0YShjYW5Qcm92aWRlQWxwaGEsIGFs
cGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1tYSwgY2FuUHJv
dmlkZUFic29sdXRlLCBhYnNvbHV0ZSkpOworfQorCisKK0RldmljZU9yaWVudGF0aW9uRGF0YTo6
RGV2aWNlT3JpZW50YXRpb25EYXRhKCkKKyAgICA6IG1fY2FuUHJvdmlkZUFscGhhKGZhbHNlKQor
ICAgICwgbV9jYW5Qcm92aWRlQmV0YShmYWxzZSkKKyAgICAsIG1fY2FuUHJvdmlkZUdhbW1hKGZh
bHNlKQorICAgICwgbV9jYW5Qcm92aWRlQWJzb2x1dGUoZmFsc2UpCisgICAgLCBtX2FscGhhKDAp
CisgICAgLCBtX2JldGEoMCkKKyAgICAsIG1fZ2FtbWEoMCkKKyAgICAsIG1fYWJzb2x1dGUoZmFs
c2UpCit7Cit9CisKK0RldmljZU9yaWVudGF0aW9uRGF0YTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
KGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEs
IGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNh
blByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNvbHV0ZSkKKyAgICA6IG1fY2FuUHJvdmlkZUFscGhh
KGNhblByb3ZpZGVBbHBoYSkKKyAgICAsIG1fY2FuUHJvdmlkZUJldGEoY2FuUHJvdmlkZUJldGEp
CisgICAgLCBtX2NhblByb3ZpZGVHYW1tYShjYW5Qcm92aWRlR2FtbWEpCisgICAgLCBtX2NhblBy
b3ZpZGVBYnNvbHV0ZShjYW5Qcm92aWRlQWJzb2x1dGUpCisgICAgLCBtX2FscGhhKGFscGhhKQor
ICAgICwgbV9iZXRhKGJldGEpCisgICAgLCBtX2dhbW1hKGdhbW1hKQorICAgICwgbV9hYnNvbHV0
ZShhYnNvbHV0ZSkKK3sKK30KKworZG91YmxlIERldmljZU9yaWVudGF0aW9uRGF0YTo6YWxwaGEo
KSBjb25zdAoreworICAgIHJldHVybiBtX2FscGhhOworfQorCitkb3VibGUgRGV2aWNlT3JpZW50
YXRpb25EYXRhOjpiZXRhKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9iZXRhOworfQorCitkb3Vi
bGUgRGV2aWNlT3JpZW50YXRpb25EYXRhOjpnYW1tYSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1f
Z2FtbWE7Cit9CisKK2Jvb2wgRGV2aWNlT3JpZW50YXRpb25EYXRhOjphYnNvbHV0ZSgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fYWJzb2x1dGU7Cit9CisKK2Jvb2wgRGV2aWNlT3JpZW50YXRpb25E
YXRhOjpjYW5Qcm92aWRlQWxwaGEoKSBjb25zdAoreworICAgIHJldHVybiBtX2NhblByb3ZpZGVB
bHBoYTsKK30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNhblByb3ZpZGVCZXRhKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9jYW5Qcm92aWRlQmV0YTsKK30KKworYm9vbCBEZXZpY2VP
cmllbnRhdGlvbkRhdGE6OmNhblByb3ZpZGVHYW1tYSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1f
Y2FuUHJvdmlkZUdhbW1hOworfQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJv
dmlkZUFic29sdXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jYW5Qcm92aWRlQWJzb2x1dGU7
Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkRhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZGY5YjY1OGZhYjg5ZjhlMWE0ZTdhYWJmZDJk
YzdlOTM5ZTA2NTA3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uRGF0YS5oCkBAIC0wLDAgKzEsNjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElT
JycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisg
KiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIERl
dmljZU9yaWVudGF0aW9uRGF0YV9oCisjZGVmaW5lIERldmljZU9yaWVudGF0aW9uRGF0YV9oCisK
KyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRGV2aWNlT3JpZW50YXRpb25EYXRhIDog
cHVibGljIFJlZkNvdW50ZWQ8RGV2aWNlT3JpZW50YXRpb25EYXRhPiB7CitwdWJsaWM6CisgICAg
c3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBjcmVhdGUoKTsKKyAgICBz
dGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IGNyZWF0ZShib29sIGNhblBy
b3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0
YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJz
b2x1dGUgPSBmYWxzZSwgYm9vbCBhYnNvbHV0ZSA9IGZhbHNlKTsKKworICAgIGRvdWJsZSBhbHBo
YSgpIGNvbnN0OworICAgIGRvdWJsZSBiZXRhKCkgY29uc3Q7CisgICAgZG91YmxlIGdhbW1hKCkg
Y29uc3Q7CisgICAgYm9vbCBhYnNvbHV0ZSgpIGNvbnN0OworICAgIGJvb2wgY2FuUHJvdmlkZUFs
cGhhKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92aWRlQmV0YSgpIGNvbnN0OworICAgIGJvb2wg
Y2FuUHJvdmlkZUdhbW1hKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUoKSBj
b25zdDsKKworcHJpdmF0ZToKKyAgICBEZXZpY2VPcmllbnRhdGlvbkRhdGEoKTsKKyAgICBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9v
bCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3Vi
bGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKTsKKworICAg
IGJvb2wgbV9jYW5Qcm92aWRlQWxwaGE7CisgICAgYm9vbCBtX2NhblByb3ZpZGVCZXRhOworICAg
IGJvb2wgbV9jYW5Qcm92aWRlR2FtbWE7CisgICAgYm9vbCBtX2NhblByb3ZpZGVBYnNvbHV0ZTsK
KyAgICBkb3VibGUgbV9hbHBoYTsKKyAgICBkb3VibGUgbV9iZXRhOworICAgIGRvdWJsZSBtX2dh
bW1hOworICAgIGJvb2wgbV9hYnNvbHV0ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KworI2VuZGlmIC8vIERldmljZU9yaWVudGF0aW9uRGF0YV9oCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAKaW5kZXggN2RlY2M3YzA2MzIxMzJiMzI2MWZk
ODQwMmU1ZDQwYzQ1MWM4NzM2Ny4uYmFiYzc3ZTZiZmIwMjJiZTc1ZjczMmRkMzkzYzY0ZjQ0ZTI2
MzM2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZl
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNw
cApAQCAtMjYsNyArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCisj
aW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0zNiwxNyArMzYsMTcgQEAgRGV2aWNlT3JpZW50
YXRpb25FdmVudDo6fkRldmljZU9yaWVudGF0aW9uRXZlbnQoKQogfQogCiBEZXZpY2VPcmllbnRh
dGlvbkV2ZW50OjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkKLSAgICA6IG1fb3JpZW50YXRpb24o
RGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZSgpKQorICAgIDogbV9vcmllbnRhdGlvbihEZXZpY2VP
cmllbnRhdGlvbkRhdGE6OmNyZWF0ZSgpKQogewogfQogCi1EZXZpY2VPcmllbnRhdGlvbkV2ZW50
OjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBE
ZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCitEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEqIG9yaWVudGF0aW9uKQogICAgIDogRXZlbnQoZXZlbnRUeXBlLCBm
YWxzZSwgZmFsc2UpIC8vIENhbid0IGJ1YmJsZSwgbm90IGNhbmNlbGFibGUKICAgICAsIG1fb3Jp
ZW50YXRpb24ob3JpZW50YXRpb24pCiB7CiB9CiAKLXZvaWQgRGV2aWNlT3JpZW50YXRpb25FdmVu
dDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBi
b29sIGJ1YmJsZXMsIGJvb2wgY2FuY2VsYWJsZSwgRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0
aW9uKQordm9pZCBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25F
dmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxlcywgYm9vbCBjYW5jZWxh
YmxlLCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIG9yaWVudGF0aW9uKQogewogICAgIGlmIChkaXNw
YXRjaGVkKCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5oCmluZGV4IGQ5NTk4NDMxMmZiMTUzMGJiMGJiZGMzYTA0NDJlMTU1N2Fh
MWFjZjkuLmUxOTZlYTViOTNlNGNmNzQ4NGI5M2NiN2VjZmVlYWRiN2ZjNDIzYmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaApAQCAtMzAsNyArMzAsNyBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERldmljZU9yaWVudGF0aW9uOworY2xh
c3MgRGV2aWNlT3JpZW50YXRpb25EYXRhOwogCiBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
IDogcHVibGljIEV2ZW50IHsKIHB1YmxpYzoKQEAgLTM5LDIyICszOSwyMiBAQCBwdWJsaWM6CiAg
ICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uRXZlbnQp
OwogICAgIH0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBj
cmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9uKiBv
cmllbnRhdGlvbikKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50
PiBjcmVhdGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9u
RGF0YSogb3JpZW50YXRpb24pCiAgICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERl
dmljZU9yaWVudGF0aW9uRXZlbnQoZXZlbnRUeXBlLCBvcmllbnRhdGlvbikpOwogICAgIH0KIAot
ICAgIHZvaWQgaW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0
eXBlLCBib29sIGJ1YmJsZXMsIGJvb2wgY2FuY2VsYWJsZSwgRGV2aWNlT3JpZW50YXRpb24qKTsK
KyAgICB2b2lkIGluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
dHlwZSwgYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIERldmljZU9yaWVudGF0aW9uRGF0
YSopOwogCi0gICAgRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1
cm4gbV9vcmllbnRhdGlvbi5nZXQoKTsgfQorICAgIERldmljZU9yaWVudGF0aW9uRGF0YSogb3Jp
ZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9CiAKICAgICB2
aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0OwogCiBwcml2
YXRlOgogICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQoKTsKLSAgICBEZXZpY2VPcmllbnRhdGlv
bkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEZXZpY2VPcmllbnRhdGlvbiop
OworICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUsIERldmljZU9yaWVudGF0aW9uRGF0YSopOwogCi0gICAgUmVmUHRyPERldmljZU9yaWVudGF0
aW9uPiBtX29yaWVudGF0aW9uOworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1f
b3JpZW50YXRpb247CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRW1wdHlDbGllbnRzLmgKaW5kZXggYmVjY2Y4ODAxNjY2YTdkMGE5ZGI0M2M0NzJlOWVhYWRi
ZDA4ZjIwZi4uZDZmNzk4ZWY3NzI2OWQwZTcwY2I4MGYzYTVmNGI4YmQ0NmIxNzA2YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaApAQCAtNTkxLDcgKzU5MSw3IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpIHsgfQogICAgIHZpcnR1
YWwgdm9pZCBzdG9wVXBkYXRpbmcoKSB7IH0KLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9u
KiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIDA7IH0K
ICAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCkg
eyB9CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0Rldmlj
ZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAKaW5kZXggMmZhNWFjYmVlZmVjOGZjMzU3
NGZhMTIxY2JkMTU4OGFkMGRhNzY2Yy4uYzdkYjkwOTllZTJkOTQ5MWFkMmEzNDIzZGQzNmNhMjM2
ZjY5MDEwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudE1vY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcApAQCAtNTUsNyArNTUsNyBAQCB2b2lk
IERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c3RvcFVwZGF0aW5nKCkKICAgICBtX3RpbWVy
LnN0b3AoKTsKIH0KIAotdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6OnNldE9yaWVu
dGF0aW9uKFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG9yaWVudGF0aW9uKQordm9pZCBE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6OnNldE9yaWVudGF0aW9uKFBhc3NSZWZQdHI8RGV2
aWNlT3JpZW50YXRpb25EYXRhPiBvcmllbnRhdGlvbikKIHsKICAgICBtX29yaWVudGF0aW9uID0g
b3JpZW50YXRpb247CiAgICAgaWYgKG1faXNVcGRhdGluZyAmJiAhbV90aW1lci5pc0FjdGl2ZSgp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRh
dGlvbkNsaWVudE1vY2suaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRNb2NrLmgKaW5kZXggYmFhNDI0NTVjMjY4OWNjMjhkYjM0ODkxMzIxMTk5
NDMyN2Y1MjlkYS4uYzRhMTg0YWMyMmE1ZGQ1MmIxYWY0OTE1ZjcyODJhYzZlZWQ0NzZkYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50TW9jay5oCkBAIC0yNiw4ICsyNiw4IEBACiAjaWZuZGVmIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50TW9ja19oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9ja19o
CiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5j
bHVkZSAiVGltZXIuaCIKIAogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CkBAIC00OCwxNSAr
NDgsMTUgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlciopOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCk7
CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpOwotICAgIHZpcnR1YWwgRGV2aWNlT3Jp
ZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fb3JpZW50YXRpb24u
Z2V0KCk7IH0KKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0
aW9uKCkgY29uc3QgeyByZXR1cm4gbV9vcmllbnRhdGlvbi5nZXQoKTsgfQogICAgIHZpcnR1YWwg
dm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSB7IH0KIAotICAgIHZv
aWQgc2V0T3JpZW50YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4pOworICAgIHZv
aWQgc2V0T3JpZW50YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+KTsKIAog
cHJpdmF0ZToKICAgICB2b2lkIHRpbWVyRmlyZWQoVGltZXI8RGV2aWNlT3JpZW50YXRpb25DbGll
bnRNb2NrPiopOwogCi0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBtX29yaWVudGF0aW9u
OworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fb3JpZW50YXRpb247CiAgICAg
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKiBtX2NvbnRyb2xsZXI7CiAgICAgVGltZXI8RGV2
aWNlT3JpZW50YXRpb25DbGllbnRNb2NrPiBtX3RpbWVyOwogICAgIGJvb2wgbV9pc1VwZGF0aW5n
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRRdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRRdC5oCmluZGV4IDkxMjQ0ZGJhNjhjNzVhZWQ4ZDRkODE0YWZjY2U3ZmE5MzczYjE2
MTkuLjZhMmQ1ZGQwZDVkY2I1OGVlNDU4MTU0N2FlMmYyMjlkYzU1N2MxZjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0
LmgKQEAgLTIwLDggKzIwLDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdF9o
CiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50UXRfaAogCi0jaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0
LmgiCkBAIC0zNyw3ICszNyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJv
bGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3Rh
cnRVcGRhdGluZygpOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0
dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0
dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAg
dmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogCiBw
cml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3Jp
ZW50YXRpb25Qcm92aWRlclF0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VP
cmllbnRhdGlvblByb3ZpZGVyUXQuaAppbmRleCBjN2Y2ZDIzMzdjYThlNzRjODRiNWIwZDNlMTI0
MGJjMGVlOTU1ZDNhLi5lY2U1NDA0ZjhiZjZiOWY3NmFkNDRiNWZmZDQyNmU3MTQ0NzZhNWU5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblBy
b3ZpZGVyUXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRh
dGlvblByb3ZpZGVyUXQuaApAQCAtMjAsOCArMjAsOCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRh
dGlvblByb3ZpZGVyUXRfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXRfaAog
Ci0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNp
bmNsdWRlIDxRUm90YXRpb25GaWx0ZXI+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCkBAIC00
OSw3ICs0OSw3IEBAIHB1YmxpYzoKICAgICBib29sIGhhc0FscGhhKCkgY29uc3QgeyByZXR1cm4g
bV9zZW5zb3IucHJvcGVydHkoImhhc1oiKS50b0Jvb2woKTsgfQogCiBwcml2YXRlOgotICAgIFJl
ZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gbV9sYXN0T3JpZW50YXRpb247CisgICAgUmVmUHRyPERl
dmljZU9yaWVudGF0aW9uRGF0YT4gbV9sYXN0T3JpZW50YXRpb247CiAgICAgRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyKiBtX2NvbnRyb2xsZXI7CiAgICAgUVJvdGF0aW9uU2Vuc29yIG1fc2Vu
c29yOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3Vw
cG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaCBiL1NvdXJjZS9XZWJLaXQv
YmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVy
cnkuaAppbmRleCA3NjEwZmIxZDRkYjg4MWRiMjFjYmU2NDk2ZTUwMWFiY2Q3NzY4YmRjLi5jYTFk
ZDlkNGRmYjFjYzdjZmRhZGZjMGM1OWJlYTEyZTY5ZDY4YmE0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRC
bGFja0JlcnJ5LmgKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oCkBAIC0xOSw4ICsxOSw4IEBACiAj
aWZuZGVmIERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeV9oCiAjZGVmaW5lIERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeV9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAi
RGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAKICNpbmNsdWRlIDxCbGFja0JlcnJ5UGxhdGZvcm1E
ZXZpY2VPcmllbnRhdGlvblRyYWNrZXJMaXN0ZW5lci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KQEAgLTQ3LDcgKzQ3LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9s
bGVyKERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciopOwogICAgIHZpcnR1YWwgdm9pZCBzdGFy
dFVwZGF0aW5nKCk7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpOwotICAgIHZpcnR1
YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OworICAgIHZpcnR1
YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAgICB2
aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAgICAg
dmlydHVhbCB2b2lkIG9uT3JpZW50YXRpb24oY29uc3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRl
dmljZU9yaWVudGF0aW9uRXZlbnQqKTsKIApAQCAtNTUsNyArNTUsNyBAQCBwcml2YXRlOgogICAg
IEJsYWNrQmVycnk6OldlYktpdDo6V2ViUGFnZVByaXZhdGUqIG1fd2ViUGFnZVByaXZhdGU7CiAg
ICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU9yaWVudGF0aW9uVHJhY2tlciogbV90cmFj
a2VyOwogICAgIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciogbV9jb250cm9sbGVyOwotICAg
IFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gbV9jdXJyZW50T3JpZW50YXRpb247CisgICAgUmVm
UHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9jdXJyZW50T3JpZW50YXRpb247CiB9OwogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJEZXZpY2VPcmll
bnRhdGlvbi5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRGV2aWNlT3JpZW50
YXRpb24uaAppbmRleCBiY2EzNjkyZjliZjQyMzljMGE3OWQ0MmFhMTExYjRlMGJiNTk5ZGE3Li44
NGIxYmIzZDRkZDdmYTEzYWQxN2RhZThmNTEwYTk3MmJmYWJmMzA4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRldmljZU9yaWVudGF0aW9uLmgKQEAgLTI4
LDcgKzI4LDcgQEAKIAogI2lmIFdFQktJVF9JTVBMRU1FTlRBVElPTgogbmFtZXNwYWNlIFdURiB7
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcyBQYXNzUmVmUHRyOyB9Ci1uYW1lc3BhY2UgV2Vi
Q29yZSB7IGNsYXNzIERldmljZU9yaWVudGF0aW9uOyB9CituYW1lc3BhY2UgV2ViQ29yZSB7IGNs
YXNzIERldmljZU9yaWVudGF0aW9uRGF0YTsgfQogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJLaXQg
ewpAQCAtOTksOSArOTksOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBhYnNvbHV0ZSgpIHsgcmV0dXJu
IG1fYWJzb2x1dGU7IH0KIAogI2lmIFdFQktJVF9JTVBMRU1FTlRBVElPTgotICAgIFdlYkRldmlj
ZU9yaWVudGF0aW9uKGNvbnN0IFdURjo6UGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbj4mKTsKLSAgICBXZWJEZXZpY2VPcmllbnRhdGlvbiYgb3BlcmF0b3I9KGNvbnN0IFdURjo6
UGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4mKTsKLSAgICBvcGVyYXRvciBX
VEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KCkgY29uc3Q7CisgICAg
V2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgV1RGOjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uRGF0YT4mKTsKKyAgICBXZWJEZXZpY2VPcmllbnRhdGlvbiYgb3BlcmF0b3I9
KGNvbnN0IFdURjo6UGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+Jik7
CisgICAgb3BlcmF0b3IgV1RGOjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RGF0YT4oKSBjb25zdDsKICNlbmRpZgogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcApp
bmRleCAyOWI0M2JhNTZkYTVjYjg5NjJkOWE2NTcxMzI5ZDQxZWZiM2RlZDZkLi5mMWYwYjMzZjll
N2RiZTk4ZGUxNzIxMGRiOWY3NmEzYTI3YTY1ZDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcApA
QCAtMjYsNyArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkRldmljZU9y
aWVudGF0aW9uQ2xpZW50UHJveHkuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgi
CisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNl
T3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIu
aCIKICNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CkBAIC02MCwxMiArNjAsMTIgQEAgdm9pZCBEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudFByb3h5OjpzdG9wVXBkYXRpbmcoKQogICAgIG1fY2xpZW50LT5z
dG9wVXBkYXRpbmcoKTsKIH0KIAotV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIERldmljZU9y
aWVudGF0aW9uQ2xpZW50UHJveHk6Omxhc3RPcmllbnRhdGlvbigpIGNvbnN0CitXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGEqIERldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHk6Omxhc3RP
cmllbnRhdGlvbigpIGNvbnN0CiB7CiAgICAgaWYgKCFtX2NsaWVudCkKICAgICAgICAgcmV0dXJu
IDA7CiAKLSAgICAvLyBDYWNoZSB0aGUgRGV2aWNlT3JpZW50YXRpb24gcG9pbnRlciBzbyBpdHMg
cmVmZXJlbmNlIGNvdW50IGRvZXMgbm90IGRyb3AgdG8gemVybyB1cG9uIHJldHVybi4KKyAgICAv
LyBDYWNoZSB0aGUgRGV2aWNlT3JpZW50YXRpb25EYXRhIHBvaW50ZXIgc28gaXRzIHJlZmVyZW5j
ZSBjb3VudCBkb2VzIG5vdCBkcm9wIHRvIHplcm8gdXBvbiByZXR1cm4uCiAgICAgbV9sYXN0T3Jp
ZW50YXRpb24gPSBtX2NsaWVudC0+bGFzdE9yaWVudGF0aW9uKCk7CiAKICAgICByZXR1cm4gbV9s
YXN0T3JpZW50YXRpb24uZ2V0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmgKaW5kZXggZTkwZDc3ZmQ5YmE2
ODdhZmFlOGZhYjBiYzE1NTQ1YzU4ZTUwMzk1ZC4uNWExYWZjNmU4NWQ3ODlkMzQ5MWVlNTQ3YTgx
MTUyZDcxMmE2YTRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2
aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuaApAQCAtMjYsOCArMjYsOCBAQAogI2lm
bmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50
YXRpb25DbGllbnRQcm94eV9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTQ3LDEyICs0NywxMiBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciop
OwogICAgIHZvaWQgc3RhcnRVcGRhdGluZygpOwogICAgIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0g
ICAgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0Owor
ICAgIFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29u
c3Q7CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3ll
ZCgpOwogCiBwcml2YXRlOgogICAgIFdlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50KiBtX2NsaWVu
dDsKLSAgICBtdXRhYmxlIFJlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4gbV9sYXN0
T3JpZW50YXRpb247CisgICAgbXV0YWJsZSBSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhPiBtX2xhc3RPcmllbnRhdGlvbjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRp
b24uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRpb24u
Y3BwCmluZGV4IDA5OGNiNDI1YzY4MzQxYWE1NjljYTEwZTUyZmY5ODkzNDFhY2FiNTQuLjJiZmE0
YzE3NWY4YmUyZWZiODAwNjA2OTI1MzU4ZDVkNDc2YjhlNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5jcHAKQEAgLTI2LDEyICsy
NiwxMiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0
aW9uLmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAKIG5hbWVz
cGFjZSBXZWJLaXQgewogCi1XZWJEZXZpY2VPcmllbnRhdGlvbjo6V2ViRGV2aWNlT3JpZW50YXRp
b24oY29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4mIG9yaWVudGF0
aW9uKQorV2ViRGV2aWNlT3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKGNvbnN0IFBh
c3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiYgb3JpZW50YXRpb24pCiB7
CiAgICAgaWYgKCFvcmllbnRhdGlvbikgewogICAgICAgICBtX2lzTnVsbCA9IHRydWU7CkBAIC01
Nyw3ICs1Nyw3IEBAIFdlYkRldmljZU9yaWVudGF0aW9uOjpXZWJEZXZpY2VPcmllbnRhdGlvbihj
b25zdCBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVuCiAgICAgbV9hYnNvbHV0ZSA9IG9y
aWVudGF0aW9uLT5hYnNvbHV0ZSgpOwogfQogCi1XZWJEZXZpY2VPcmllbnRhdGlvbiYgV2ViRGV2
aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPShjb25zdCBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uPiYgb3JpZW50YXRpb24pCitXZWJEZXZpY2VPcmllbnRhdGlvbiYgV2ViRGV2
aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPShjb25zdCBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uRGF0YT4mIG9yaWVudGF0aW9uKQogewogICAgIGlmICghb3JpZW50YXRpb24p
IHsKICAgICAgICAgbV9pc051bGwgPSB0cnVlOwpAQCAtODQsMTEgKzg0LDExIEBAIFdlYkRldmlj
ZU9yaWVudGF0aW9uJiBXZWJEZXZpY2VPcmllbnRhdGlvbjo6b3BlcmF0b3I9KGNvbnN0IFBhc3NS
ZWZQdHI8V2ViQ29yZTo6CiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1XZWJEZXZpY2VPcmllbnRh
dGlvbjo6b3BlcmF0b3IgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4oKSBj
b25zdAorV2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yIFBhc3NSZWZQdHI8V2ViQ29yZTo6
RGV2aWNlT3JpZW50YXRpb25EYXRhPigpIGNvbnN0CiB7CiAgICAgaWYgKG1faXNOdWxsKQogICAg
ICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb246OmNy
ZWF0ZShtX2NhblByb3ZpZGVBbHBoYSwgbV9hbHBoYSwgbV9jYW5Qcm92aWRlQmV0YSwgbV9iZXRh
LCBtX2NhblByb3ZpZGVHYW1tYSwgbV9nYW1tYSwgbV9jYW5Qcm92aWRlQWJzb2x1dGUsIG1fYWJz
b2x1dGUpOworICAgIHJldHVybiBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0
ZShtX2NhblByb3ZpZGVBbHBoYSwgbV9hbHBoYSwgbV9jYW5Qcm92aWRlQmV0YSwgbV9iZXRhLCBt
X2NhblByb3ZpZGVHYW1tYSwgbV9nYW1tYSwgbV9jYW5Qcm92aWRlQWJzb2x1dGUsIG1fYWJzb2x1
dGUpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3Bw
CmluZGV4IGFhOTI0OWY3NjcxMGY4NzBjMDNiZDM5MWQxZmUxYzg3MTNmZTJmYjIuLjEyZDEwMzlm
YTU2NzNiNDA4MjEwNDBlYWM4YjMxMDE5ZTcxMjM5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
LmNwcApAQCAtMjYsOCArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldl
YkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRh
dGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAKQEAgLTM1LDcgKzM1LDcgQEAg
bmFtZXNwYWNlIFdlYktpdCB7CiAKIHZvaWQgV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
OjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihjb25zdCBXZWJEZXZpY2VPcmllbnRhdGlvbiYg
b3JpZW50YXRpb24pCiB7Ci0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bj4gZGV2aWNlT3JpZW50YXRpb24ob3JpZW50YXRpb24pOworICAgIFBhc3NSZWZQdHI8V2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiBkZXZpY2VPcmllbnRhdGlvbihvcmllbnRhdGlvbik7
CiAgICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihkZXZpY2VPcmll
bnRhdGlvbi5nZXQoKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNv
cmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmggYi9Tb3VyY2UvV2ViS2l0L2Vm
bC9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oCmluZGV4IGI4MDA3
N2NhNWVkMTVkZDFlYTY0YTdkOWMzYjBmMmEzNzE0OWFiN2MuLjBiYjE5N2NiN2Y5ZjQ2YTQ1ODQ5
YTVjZjNhZDEyOTk4MTI5ZmU4NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNv
cmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmgKKysrIGIvU291cmNlL1dlYktp
dC9lZmwvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaApAQCAtMjAs
OCArMjAsOCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbF9oCiAjZGVmaW5l
IERldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsX2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0
aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJE
ZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zMyw3
ICszMyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygp
OwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERldmljZU9y
aWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIERldmljZU9y
aWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lk
IGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogCiBwcml2YXRlOgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRHdGsuaCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0RldmljZU9y
aWVudGF0aW9uQ2xpZW50R3RrLmgKaW5kZXggMmM1Mjk0OTVmMDU0Nzk3MGIwMWE5NGIyNWVmMDQ1
MjVhZDZiODEzZS4uZmNhYTJkMmU4MWRkNzMzYjE5Y2U1MDc5MWQxYjk4NjgwMDU5Y2U1MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRHdGsuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EZXZp
Y2VPcmllbnRhdGlvbkNsaWVudEd0ay5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaWZuZGVmIERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50R3RrX2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRH
dGtfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKIApAQCAtMzQsNyArMzQsNyBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCB2b2lkIHNldENvbnRyb2xsZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0dWFsIHZv
aWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
biogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VP
cmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9p
ZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAogcHJpdmF0ZToKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25J
bnRlcm5hbC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlv
bkludGVybmFsLmgKaW5kZXggYjdjNmFhNTNiNGJhM2UyOGZhM2MyZDNjZDY0ZGQ4NjExMWNiODUx
Yy4uNWRlZGQwODBjNzZmNDQ4NTQ5Mjk5MmY5NDc3YThlY2JhNDFkZWU5ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsLmgK
KysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbkludGVy
bmFsLmgKQEAgLTI1LDIxICsyNSwyMSBAQAogCiAjaW1wb3J0ICJXZWJEZXZpY2VPcmllbnRhdGlv
bi5oIgogCi0jaW1wb3J0IDxXZWJDb3JlL0RldmljZU9yaWVudGF0aW9uLmg+CisjaW1wb3J0IDxX
ZWJDb3JlL0RldmljZU9yaWVudGF0aW9uRGF0YS5oPgogI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgog
CiBAaW50ZXJmYWNlIFdlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwgOiBOU09iamVjdCB7CiBA
cHVibGljCi0gICAgUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiBtX29yaWVudGF0
aW9uOworICAgIFJlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fb3JpZW50
YXRpb247CiB9CiAKLS0gKGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVm
UHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiljb3JlRGV2aWNlT3JpZW50YXRpb247Cist
IChpZClpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0cjxXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGE+KWNvcmVEZXZpY2VPcmllbnRhdGlvbjsKIEBlbmQKIAogQGlu
dGVyZmFjZSBXZWJEZXZpY2VPcmllbnRhdGlvbiAoSW50ZXJuYWwpCiAKLS0gKGlkKWluaXRXaXRo
Q29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uPiljb3JlRGV2aWNlT3JpZW50YXRpb247CistIChpZClpbml0V2l0aENvcmVEZXZpY2VPcmll
bnRhdGlvbjooUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+KWNvcmVE
ZXZpY2VPcmllbnRhdGlvbjsKIAogQGVuZAogCi1XZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiog
Y29yZShXZWJEZXZpY2VPcmllbnRhdGlvbiopOworV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25E
YXRhKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCmlu
ZGV4IGU3MGJmMDA0YTQ5MTI2ZjQ0YmQxNDc1ZGQ0ODJjYTgyNzI1ZGRmZWUuLjU4NDAxOTllNjZl
NTQ4NWIzNzU0YjEwOTMzYTE4MjVhN2ViZDBmZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCkBA
IC0zMyw5ICszMyw5IEBACiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIKICNpbmNsdWRlICJDb250
ZXh0TWVudUNsaWVudFF0LmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9sbGVyLmgiCi0j
aW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2suaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIK
KyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJEb2N1bWVudExv
YWRlci5oIgogI2luY2x1ZGUgIkVkaXRvci5oIgogI2luY2x1ZGUgIkVkaXRvckNsaWVudFF0Lmgi
CkBAIC03NzksNyArNzc5LDcgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0TW9j
a0RldmljZU9yaWVudGF0aW9uKFFXZWJQYWdlKiBwYWdlLCBib29sIGNhblAKICNpZiBFTkFCTEUo
REVWSUNFX09SSUVOVEFUSU9OKQogICAgIFBhZ2UqIGNvcmVQYWdlID0gUVdlYlBhZ2VQcml2YXRl
Ojpjb3JlKHBhZ2UpOwogICAgIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jayogbW9ja0NsaWVu
dCA9IHRvRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrKERldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlcjo6ZnJvbShjb3JlUGFnZSktPmNsaWVudCgpKTsKLSAgICBtb2NrQ2xpZW50LT5zZXRPcmll
bnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKGNhblByb3ZpZGVBbHBoYSwgYWxwaGEs
IGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEsIGdhbW1hKSk7CisgICAgbW9j
a0NsaWVudC0+c2V0T3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoY2Fu
UHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1t
YSwgZ2FtbWEpKTsKICNlbmRpZgogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146822</attachid>
            <date>2012-06-11 04:03:23 -0700</date>
            <delta_ts>2012-06-11 06:06:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88663-20120611120321.patch</filename>
            <type>text/plain</type>
            <size>68250</size>
            <attacher name="Amy Ousterhout">aousterh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5ODE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGFlMzY5ZWZiODM1NjQ5
NzZmYjAwNDU4NDc2ZTkzYWIyMWMxY2FmYS4uYTkxZDQ3MmE1OTQzY2UyMjlmNTExODA3NjA1YTQ4
YTQyNmVjNzkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcwIEBACisyMDEyLTA2LTA4ICBBbXkg
T3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERl
dmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlz
IGlzIHNpbXBseSBhIG5hbWUgY2hhbmdlLgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50
YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhIGluIG9yZGVyIHRvIGJlIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICBVZGF0ZWQgYWxsIGZpbGVzIHRoYXQgdXNl
IERldmljZU9yaWVudGF0aW9uLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAg
ICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAgICAq
IFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkpTRGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9u
RXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9u
RXZlbnRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhEZXZpY2VPcmllbnRhdGlvbkV2
ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudENhbGxiYWNrKToKKyAgICAgICAgKiBkb20v
RE9NQWxsSW5PbmUuY3BwOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5o
OgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudCk6
CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZp
Y2VPcmllbnRhdGlvbik6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwOiBSZW5hbWVk
IGZyb20gU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcC4KKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmll
bnRhdGlvbkRhdGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjph
bHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmJldGEpOgor
ICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpnYW1tYSk6CisgICAgICAg
IChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmFic29sdXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUFscGhhKToKKyAgICAgICAg
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUJldGEpOgorICAgICAg
ICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlR2FtbWEpOgorICAg
ICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUp
OgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oLgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkRhdGEpOgorICAgICAgICAqIGRvbS9EZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAq
IGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRXZlbnQ6Om9yaWVudGF0aW9uKToKKyAgICAgICAgKiBsb2FkZXIvRW1wdHlDbGllbnRzLmg6
CisgICAgICAgIChXZWJDb3JlOjpFbXB0eURldmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3Jp
ZW50YXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGll
bnRNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
azo6c2V0T3JpZW50YXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50
YXRpb25DbGllbnRNb2NrLmg6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2s6Omxhc3RPcmllbnRhdGlvbik6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2spOgorICAgICAgICAqIHBsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50
UXQuaDoKKyAgICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50UXQpOgorICAgICAgICAqIHBs
YXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oOgorICAgICAgICAoRGV2aWNl
T3JpZW50YXRpb25Qcm92aWRlclF0KToKKwogMjAxMi0wNi0wOCAgS2VudGFybyBIYXJhICA8aGFy
YWtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUkVHUkVTU0lPTiByMTE5ODAyOiBSZW1vdmUg
dW5uZWNlc3NhcnkgQVNTRVJUKCFtX2RlbGV0aW9uSGFzQmVndW4pIGZyb20gRG9jdW1lbnQuaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggOTk5ZTlhYTAwY2Y2ZGE0NzFmMWU2ODY2
NzFiZmE1NTgwYzI0YWJmOS4uMGZhMThkNzIxYTY1MWM1OWE0MDBjMTA5ODY4MDVjZTkxYzc3OWE1
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTIt
MDYtMDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMg
dG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmlj
ZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlv
bkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisKKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaDoKKyAgICAgICAg
KERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeSk6CisKIDIwMTItMDYtMDcgIENyeXN0
YWwgWmhhbmcgIDxoYWl6aGFuZ0ByaW0uY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5XSBTaG91
bGQgVXNlIHRoZSBXZWJQYWdlIEFscmVhZHkgQ3JlYXRlZCBieSBDbGllbnQsIE5vIE5lZWQgdG8g
Q3JlYXRlIE5ldyBPbmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDFlN2ExOWRkODAz
Nzc3NmZjNTc5YjZiNzdjZWMyMTM1ZDRiMDQzOWUuLmUyZjRkZjY0ZjZhYjg2OWI4M2ZjZDU1NWQ4
N2RjMGZjODY5NmVmYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTItMDYtMDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25E
YXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2
MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0
ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFk
IG9mIERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VP
cmllbnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAg
IAorICAgICAgICAqIHB1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oOgorICAgICAgICAoV2Vi
RGV2aWNlT3JpZW50YXRpb24pOgorICAgICAgICAqIHNyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6RGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94
eTo6bGFzdE9yaWVudGF0aW9uKToKKyAgICAgICAgKiBzcmMvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRQcm94eS5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eSk6CisgICAg
ICAgICogc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
RGV2aWNlT3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uRGF0YT4pOgorICAgICAgICAqIHNyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKToKKwogMjAxMi0wNi0wOCAgUGV0ZXIgQmV2
ZXJsb28gIDxwZXRlckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBSZS1lbmFi
bGUgU0hBUkVEX1dPUktFUlMgZm9yIEFuZHJvaWQgdW50aWwgYSBidWlsZCBmaXggaGFzIGJlZW4g
cmVzb2x2ZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggODk3MDEwZTBjZTMyMTE1NWRlYWJjMjY3MmI1
NjFiYzEwZTQzOWQxOC4uYzc3ZjIzNjQyNWZiODFmYzBkODkwNWZkZDk0NzYxYjRlOWNiODRiMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTA2LTA4ICBBbXkgT3VzdGVy
aG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERldmljZU9y
aWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGVkIGZpbGVzIHRvIHVzZSB0aGUgcmVuYW1l
ZCBEZXZpY2VPcmllbnRhdGlvbkRhdGEgaW5zdGVhZCBvZiBEZXZpY2VPcmllbnRhdGlvbi4KKyAg
ICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgRGV2aWNlT3JpZW50YXRpb25EYXRhIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICAKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRp
b25DbGllbnRFZmwpOgorCiAyMDEyLTA2LTA1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIHRhcmdldC1kZW5zaXR5ZHBpIGluIHRo
ZSB2aWV3cG9ydCBtZXRhIHRhZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCmluZGV4IDAwZGZlZmM2MWMwNmZjNzky
ZTFlNWEwYTU3ZmE3ZDZhOWY5ODEyYmQuLmYwMmJjZDgzODFhMzk2NjM4YTAyODZlZDIzY2RkM2M2
Y2IyNWU2MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNi0wOCAg
QW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1l
ZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2Ug
dGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50
YXRpb24uCisgICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBj
b25zaXN0ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGsuaDoKKyAgICAgICAgKERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50R3RrKToKKwogMjAxMi0wNi0wNyAgU2ltb24gUGVuYSAgPHNwZW5h
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gZGV2aWNlU2NhbGVGYWN0b3Igc2V0dGluZyBp
cyBub3QgaG9ub3JlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDhkNDQzMTIzYTZiYTAwNDlmNDdkYmVl
OTZlMTRjZmY1NzY3Nzk0NzkuLjVlMDNhM2U0MmMyZmUyNGU4MjlmNzg3MGRiZDkzMTA3NDNhMzc1
NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wNi0wOCAgQW15IE91
c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZp
Y2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJl
bmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24u
CisgICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBjb25zaXN0
ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICogV2ViVmlldy9X
ZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsLmg6CisKIDIwMTItMDYtMDcgIEtlbnRhcm8gSGFy
YSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlZHVjZSBOb2RlIG9iamVjdCBz
aXplIGZyb20gNzIgYnl0ZSB0byA2NCBieXRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDhiZTljZDM4OGFi
MTE4OGI3Y2FkYzI0YzkwY2U0Mjc4ZWMxYTcxODguLjhjNDBiMDg4YzRkNTkwYzQ3MjMxODIzZmY2
MzdkNTc2YjVhYTRjNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDYt
MDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
bmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8g
dXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9y
aWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRh
dGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcDoKKyAgICAgICAgKER1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRNb2NrRGV2aWNlT3JpZW50YXRpb24pOgorCiAyMDEy
LTA2LTA3ICBab2x0YW4gSG9ydmF0aCAgPHpvbHRhbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFtR
dF0gUXQgRFJUIHNob3VsZCBsb2FkIGV4dGVybmFsIHJlc291cmNlcyAtIGNsZWFudXAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggN2I5Nzc4MzQ2MzkxZTYwNDQ5MjlkYzQwZDI2MzU5OWFiNzBiOTNh
Ny4uYjY2ODE3MjA2ZjE5YTA2ZjVlMjgzMzRkOGY3NmExOGViMTM5NmZjYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTU2NSw4ICs1NjUsOCBAQCBTRVQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgZG9t
L0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCiAgICAgZG9tL0RldmljZU1vdGlvbkRhdGEuY3Bw
CiAgICAgZG9tL0RldmljZU1vdGlvbkV2ZW50LmNwcAotICAgIGRvbS9EZXZpY2VPcmllbnRhdGlv
bi5jcHAKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAorICAgIGRvbS9E
ZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQu
Y3BwCiAgICAgZG9tL0RvY3VtZW50LmNwcAogICAgIGRvbS9Eb2N1bWVudE1hcmtlckNvbnRyb2xs
ZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIv
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBhOWM3NWUyNjAzNzJkMGMz
YmFmMGNiMWYyOTJmZTUwODAzYTA1MDZmLi40ZDkwOWM4NmVkZGEyMWJhNjBkNzJjYzE2ZGNiMTkx
Y2RlNGY2YWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFt
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTE4MTksMTAgKzE4
MTksMTAgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb25DbGllbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNw
cCBcCisJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgXAorCVNv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBcCiAJU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb24uaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBcCiAJU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50RnJhZ21lbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnRGcmFnbWVudC5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IDE1M2YxMzljMzNlYjdiY2QwODNm
MmI0MmQxOGYzMjkxMWFmZDgyZGUuLjE3NjFhMTJjYjY5OTRhN2JjNjc5NzZjMzdiMGJmZjJkZmM3
NWNjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNl
L1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNTMzLDggKzUzMyw4IEBAIFNPVVJDRVMgKz0gXAogICAg
IGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcCBcCiAgICAgZG9tL0RldmljZU1vdGlvbkRh
dGEuY3BwIFwKICAgICBkb20vRGV2aWNlTW90aW9uRXZlbnQuY3BwIFwKLSAgICBkb20vRGV2aWNl
T3JpZW50YXRpb24uY3BwIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cCBcCisgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgXCAgICAKICAgICBkb20vRGV2
aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogICAgIGRvbS9Eb2N1bWVudC5jcHAgXAogICAgIGRv
bS9Eb2N1bWVudEV2ZW50UXVldWUuY3BwIFwKQEAgLTE3MDYsOSArMTcwNiw5IEBAIEhFQURFUlMg
Kz0gXAogICAgIGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmggXAogICAgIGRvbS9EZXZpY2VN
b3Rpb25EYXRhLmggXAogICAgIGRvbS9EZXZpY2VNb3Rpb25FdmVudC5oIFwKLSAgICBkb20vRGV2
aWNlT3JpZW50YXRpb24uaCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmggXAog
ICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCBcCisgICAgZG9tL0RldmljZU9y
aWVudGF0aW9uRGF0YS5oIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKICAg
ICBkb20vRG9jdW1lbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50RnJhZ21lbnQuaCBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkKaW5kZXggYjNlNjYyN2VjZDI0NGY0ZDdjNzM3NGUyYzRkNjg3NDg3NWEzNDQ5Zi4uMThh
NzMxZjUyOTdkYTMyNzNiNWM3MjcwMjdhNDBkMWY5NzdjMTJhNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpA
QCAtNjE4LDggKzYxOCw4IEBACiAgICAgICAgICAgICAnZG9tL0NvbnRleHREZXN0cnVjdGlvbk9i
c2VydmVyLmgnLAogICAgICAgICAgICAgJ2RvbS9ET01JbXBsZW1lbnRhdGlvbi5oJywKICAgICAg
ICAgICAgICdkb20vRE9NVGltZVN0YW1wLmgnLAotICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmll
bnRhdGlvbi5oJywKICAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCcs
CisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5oJywKICAgICAgICAgICAg
ICdkb20vRG9jdW1lbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50RnJhZ21lbnQuaCcs
CiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50TWFya2VyLmgnLApAQCAtNTI1NSw5ICs1MjU1LDkg
QEAKICAgICAgICAgICAgICdkb20vRGV2aWNlTW90aW9uRGF0YS5oJywKICAgICAgICAgICAgICdk
b20vRGV2aWNlTW90aW9uRXZlbnQuY3BwJywKICAgICAgICAgICAgICdkb20vRGV2aWNlTW90aW9u
RXZlbnQuaCcsCi0gICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcCcsCiAgICAg
ICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAnLAogICAgICAgICAg
ICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCcsCisgICAgICAgICAgICAnZG9t
L0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZl
bnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50LmNwcCcsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IGIxNmE5NjJlMGViMjBkZTA3Njcz
MDEzZjgwODA3OGI2Y2Y3NmMwN2MuLjU0MDQyYzIzNWQyYjVlYjQwYTFiMDU1MTE2YTVmMzc4YjRm
OTY4Y2UgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
CkBAIC00OTEyNyw3ICs0OTEyNywxMSBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0J
CQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb24uY3BwIgorCQkJCVJlbGF0
aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisJCQkJPgorCQkJPC9G
aWxlPgorCQkJPEZpbGUKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KIAkJCQkJTmFt
ZT0iRGVidWd8V2luMzIiCkBAIC00OTE3OSwxNSArNDkxODMsMTEgQEAKIAkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRv
bVxEZXZpY2VPcmllbnRhdGlvbi5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJ
UmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKwkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKIAkJCQk+CiAJ
CQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3Jp
ZW50YXRpb25EYXRhLmNwcCIKIAkJCQk+CiAJCQkJPEZpbGVDb25maWd1cmF0aW9uCiAJCQkJCU5h
bWU9IkRlYnVnfFdpbjMyIgpAQCAtNDkyMzksOSArNDkyMzksOSBAQAogCQkJCTwvRmlsZUNvbmZp
Z3VyYXRpb24+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9t
XERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9t
XERldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCQkJCT4KLQkJCTwvRmlsZT4KKwkJCTwvRmlsZT4J
CiAJCQk8RmlsZQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uRXZl
bnQuY3BwIgogCQkJCT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBiMWQwY2ZiZmQxOGRkNmM3NzcxMzgxMmYyNmUwMTdmNTNjOWI0
YjVkLi42MTJjOGYzYjZjNDY3NDhlODZiYjZlYTE3OWMyZDg0NDNlYjFiNjA2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNTk5
LDcgKzE1OTksNyBAQAogCQk1N0NGNEM4NzE0Rjc1OTdBMDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRv
dy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdDRjRD
ODUxNEY3NTk3QTAwRUNGRjE0IC8qIEVsZW1lbnRTaGFkb3cuaCAqLzsgfTsKIAkJNTkwNUFEQkYx
MzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkwNUFEQkQxMzAyRjNDRTAwRjExNkRGIC8qIFhN
TFRyZWVWaWV3ZXIuY3BwICovOyB9OwogCQk1OTA1QURDMDEzMDJGM0NFMDBGMTE2REYgLyogWE1M
VHJlZVZpZXdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTkwNUFEQkUxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuaCAqLzsgfTsKLQkJ
NTkwRTFCNDkxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2
OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNl
T3JpZW50YXRpb25EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRh
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTkw
RTFCNEIxMUU0RUY3MDAwNjlGNzg0IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0
QTExRTRFRjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCAq
LzsgfTsKIAkJNTkxMDJGQkIxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTEwMkZC
OTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCAqLzsgfTsKIAkJNTkx
MDJGQkMxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkxMDJGQkExNDMyN0QzQjAwM0M5
RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oICovOyB9OwpAQCAtMTYzNSw3ICsxNjM1LDcgQEAK
IAkJNTlDMjdGMDcxMzhEMjhDRjAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJjZXNEYXRhLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUMyN0YwNjEzOEQy
OENGMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCAqLzsgfTsKIAkJNTlDMjgwNDUx
MzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUMyODA0MzEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJy
b3JzLmNwcCAqLzsgfTsKIAkJNTlDMjgwNDYxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlDMjgwNDQx
MzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5oICovOyB9OwotCQk1OUQxQzEwNDExRUI1RENG
MDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmlj
ZU9yaWVudGF0aW9uLmNwcCAqLzsgfTsKKwkJNTlEMUMxMDQxMUVCNURDRjAwQjYzOEM4IC8qIERl
dmljZU9yaWVudGF0aW9uRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRp
b25EYXRhLmNwcCAqLzsgfTsKIAkJNTlERTc5MDQxM0YxNkM3RjAwMDdGQ0RGIC8qIEphdmFNZXRo
b2RKU0MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTlERTc5MDMxM0YxNkM3RjAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuY3BwICovOyB9OwogCQk1
OURFNzkwNjEzRjE2QzhDMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlERTc5MDUxM0YxNkM4QzAwMDdGQ0RG
IC8qIEphdmFNZXRob2RKU0MuaCAqLzsgfTsKIAkJNTlFNTYwQTcxMTA1MzM2NjAwQUExMjU4IC8q
IEphdmFDbGFzc0pTQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTlFNTYwQTYxMTA1MzM2NjAwQUExMjU4IC8qIEphdmFDbGFzc0pTQy5oICovOyB9OwpA
QCAtODY0Niw3ICs4NjQ2LDcgQEAKIAkJNTdDRjRDODUxNEY3NTk3QTAwRUNGRjE0IC8qIEVsZW1l
bnRTaGFkb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWxlbWVudFNoYWRv
dy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTA1QURCRDEzMDJGM0NFMDBGMTE2
REYgLyogWE1MVHJlZVZpZXdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBYTUxUcmVlVmlld2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkw
NUFEQkUxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gWE1MVHJlZVZpZXdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERl
dmljZU9yaWVudGF0aW9uRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZXZpY2VPcmllbnRhdGlvbkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkw
RTFCNEExMUU0RUY3MDAwNjlGNzg0IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RldmljZU9yaWVudGF0
aW9uRXZlbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTEwMkZC
OTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbnRlbnRTZWFyY2hVdGlscy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5MTAyRkJBMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50
U2VhcmNoVXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudFNl
YXJjaFV0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC04Njg1LDcgKzg2ODUs
NyBAQAogCQk1OUMyN0YwNjEzOEQyOENGMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1Jlc291cmNlc0RhdGEu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlDMjgwNDMxMzhEQzI0MTAwNzlCN0Uy
IC8qIFhNTEVycm9ycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBY
TUxFcnJvcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OUMyODA0NDEzOERD
MjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFhNTEVycm9ycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1OUQxQzEwMzEx
RUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50
YXRpb25EYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZU9yaWVudGF0aW9uRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5REU3
OTAzMTNGMTZDN0YwMDA3RkNERiAvKiBKYXZhTWV0aG9kSlNDLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEphdmFNZXRob2RKU0MuY3BwOyBwYXRoID0ganNjL0phdmFN
ZXRob2RKU0MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OURFNzkwNTEzRjE2
QzhDMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBKYXZhTWV0aG9kSlNDLmg7IHBhdGggPSBqc2MvSmF2YU1ldGhvZEpTQy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OUU1NjBBNjExMDUzMzY2MDBBQTEyNTggLyogSmF2
YUNsYXNzSlNDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEphdmFDbGFzc0pT
Qy5oOyBwYXRoID0ganNjL0phdmFDbGFzc0pTQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMjExNjYsMTEgKzIxMTY2LDExIEBACiAJCQkJMzFGQjFBNTQxMjBBNUQwNjAwREMwMkEw
IC8qIERldmljZU1vdGlvbkV2ZW50LmNwcCAqLywKIAkJCQkzMUZCMUE1NTEyMEE1RDA2MDBEQzAy
QTAgLyogRGV2aWNlTW90aW9uRXZlbnQuaCAqLywKIAkJCQkzMUZCMUE1NjEyMEE1RDA2MDBEQzAy
QTAgLyogRGV2aWNlTW90aW9uRXZlbnQuaWRsICovLAotCQkJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2
MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbi5jcHAgKi8sCi0JCQkJNTkwRTFCNDgxMUU0RUY0QjAw
NjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uLmggKi8sCiAJCQkJNTlBOEYxRDcxMUE2OTUyMDAw
MUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50LmggKi8sCiAJCQkJNTlBOEYxRDMxMUE2
OTUwODAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgKi8sCiAJCQkJ
NTlBOEYxRDUxMUE2OTUxMzAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
ICovLAorCQkJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRh
dGEuY3BwICovLAorCQkJCTU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRh
dGlvbkRhdGEuaCAqLywKIAkJCQk1OUE4NUVBMTExOUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5jcHAgKi8sCiAJCQkJNTlBODVFQTMxMTlENjhFQzAwREVGMUVGIC8qIERl
dmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKIAkJCQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYg
LyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwgKi8sCkBAIC0yMjEzMCwxMCArMjIxMzAsMTAg
QEAKIAkJCQkzMUZCMUE1OTEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uQ29udHJvbGxl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFGQjFBNUIxMjBBNUQwNjAwREMwMkEwIC8qIERldmlj
ZU1vdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxRkIxQTVEMTIwQTVEMDYwMERDMDJB
MCAvKiBEZXZpY2VNb3Rpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNTkwRTFCNDkxMUU0
RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk1
OUE4RjFEODExQTY5NTIwMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTU5MzA5QTEzMTFGNEFFNkEwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRh
dGlvbkNsaWVudE1vY2suaCBpbiBIZWFkZXJzICovLAogCQkJCTU5QThGMUQ2MTFBNjk1MTMwMDFB
QzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTU5MEUxQjQ5MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTU5QTg1RUE0MTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRh
dGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlDRUNBREZDNzE1Mzc3OEZGMDBFMzcwNjgg
LyogRGljdGF0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovLAogCQkJCUNFQ0FERkM5MTUz
Nzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKQEAgLTI1
NjI0LDkgKzI1NjI0LDkgQEAKIAkJCQkzMUZCMUE1ODEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNl
TW90aW9uQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUZCMUE1QTEyMEE1RDA2
MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUZC
MUE1QzEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJNTlEMUMxMDQxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTU5MzA5QTExMTFGNEFFNTgwMDI1MDYwMyAvKiBEZXZpY2VP
cmllbnRhdGlvbkNsaWVudE1vY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTlBOEYxRDQxMUE2
OTUwODAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQk1OUQxQzEwNDExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25E
YXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QTg1RUEyMTE5RDY4RDkwMERFRjFFRiAvKiBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNFQ0FERkM2MTUz
Nzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlDRUNBREZDODE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQ29tbWFuZC5jcHAgaW4g
U291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2
aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCmluZGV4IGVjNzg3MWQ1MTEyNmZl
ZDJlY2UxNzY1ZTdlNWVlZmE0YjZjZGY2N2IuLjVhMGZmN2Q3MzU4MTU4ODk2M2ZmMjg5NWM1NWUy
N2JlNDBiZjQyOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2
aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcApAQCAtMjksNyArMjksNyBA
QAogCiAjaW5jbHVkZSAiSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAKLSNpbmNsdWRlICJE
ZXZpY2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgog
I2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKIAogdXNpbmcgbmFtZXNwYWNlIEpT
QzsKQEAgLTgzLDcgKzgzLDcgQEAgSlNWYWx1ZSBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQ6Omlu
aXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KEV4ZWNTdGF0ZSogZXhlYykKICAgICBkb3VibGUgZ2Ft
bWEgPSBleGVjLT5hcmd1bWVudCg1KS50b051bWJlcihleGVjKTsKICAgICBib29sIGFic29sdXRl
UHJvdmlkZWQgPSAhZXhlYy0+YXJndW1lbnQoNSkuaXNVbmRlZmluZWRPck51bGwoKTsKICAgICBi
b29sIGFic29sdXRlID0gZXhlYy0+YXJndW1lbnQoNikudG9Cb29sZWFuKCk7Ci0gICAgUmVmUHRy
PERldmljZU9yaWVudGF0aW9uPiBvcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVh
dGUoYWxwaGFQcm92aWRlZCwgYWxwaGEsIGJldGFQcm92aWRlZCwgYmV0YSwgZ2FtbWFQcm92aWRl
ZCwgZ2FtbWEsIGFic29sdXRlUHJvdmlkZWQsIGFic29sdXRlKTsKKyAgICBSZWZQdHI8RGV2aWNl
T3JpZW50YXRpb25EYXRhPiBvcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3Jl
YXRlKGFscGhhUHJvdmlkZWQsIGFscGhhLCBiZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1hUHJvdmlk
ZWQsIGdhbW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNvbHV0ZSk7CiAgICAgRGV2aWNlT3JpZW50
YXRpb25FdmVudCogaW1wID0gc3RhdGljX2Nhc3Q8RGV2aWNlT3JpZW50YXRpb25FdmVudCo+KGlt
cGwoKSk7CiAgICAgaW1wLT5pbml0RGV2aWNlT3JpZW50YXRpb25FdmVudCh0eXBlLCBidWJibGVz
LCBjYW5jZWxhYmxlLCBvcmllbnRhdGlvbi5nZXQoKSk7CiAgICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCmluZGV4IGZjM2ZjMjAy
NmQxMDUyNWNlYWNkZTA0YTY0YTE2ZWExZGMwNGUxYjYuLmJiZGMzZmNlOGFhNjdiYzg5MjI3MjMy
MjI0ZjAzNTVhNjU1N2YyZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20u
Y3BwCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQog
Ci0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkRhdGEuaCIKICNpbmNsdWRlICJWOEJpbmRpbmcuaCIKICNpbmNsdWRlICJWOEJpbmRpbmdN
YWNyb3MuaCIKICNpbmNsdWRlICJWOFByb3h5LmgiCkBAIC05Myw3ICs5Myw3IEBAIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q2FsbGJhCiAgICAgZG91YmxlIGdhbW1hID0gYXJnc1s1XS0+TnVtYmVyVmFsdWUo
KTsKICAgICBib29sIGFic29sdXRlUHJvdmlkZWQgPSAhaXNVbmRlZmluZWRPck51bGwoYXJnc1s2
XSk7CiAgICAgYm9vbCBhYnNvbHV0ZSA9IGFyZ3NbNl0tPkJvb2xlYW5WYWx1ZSgpOwotICAgIFJl
ZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gb3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbjo6
Y3JlYXRlKGFscGhhUHJvdmlkZWQsIGFscGhhLCBiZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1hUHJv
dmlkZWQsIGdhbW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNvbHV0ZSk7CisgICAgUmVmUHRyPERl
dmljZU9yaWVudGF0aW9uRGF0YT4gb3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6
OmNyZWF0ZShhbHBoYVByb3ZpZGVkLCBhbHBoYSwgYmV0YVByb3ZpZGVkLCBiZXRhLCBnYW1tYVBy
b3ZpZGVkLCBnYW1tYSwgYWJzb2x1dGVQcm92aWRlZCwgYWJzb2x1dGUpOwogICAgIGltcC0+aW5p
dERldmljZU9yaWVudGF0aW9uRXZlbnQodHlwZSwgYnViYmxlcywgY2FuY2VsYWJsZSwgb3JpZW50
YXRpb24uZ2V0KCkpOwogICAgIHJldHVybiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4oKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01BbGxJbk9uZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRE9NQWxsSW5PbmUuY3BwCmluZGV4IDMyMGFlZjk4MjA5YTVlYjg0YTdlNzUyOGZj
YjNiNTY0OTY4NTg3NzguLmY2YTllOTRjNjliZTM5YzU4YWMyYjY2MzhhMmViN2MzYmYwYTM0ZTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01BbGxJbk9uZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RPTUFsbEluT25lLmNwcApAQCAtNTQsOCArNTQsOCBAQAogI2luY2x1
ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkRh
dGEuY3BwIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkV2ZW50LmNwcCIKLSNpbmNsdWRlICJEZXZp
Y2VPcmllbnRhdGlvbi5jcHAiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
LmNwcCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIgogI2luY2x1ZGUgIkRl
dmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIgogI2luY2x1ZGUgIkRvY3VtZW50LmNwcCIKICNpbmNs
dWRlICJEb2N1bWVudEV2ZW50UXVldWUuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmll
bnRhdGlvbi5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlhOGMyNTdjYTc0MTk3
Y2U3YjNiODI4ODY4YWY2MzQxMzc4NWQ0YzUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDEwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICog
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycn
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCi0gKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCi0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gRGV2aWNlT3JpZW50YXRpb246
OmNyZWF0ZSgpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbik7
Ci19Ci0KLVBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IERldmljZU9yaWVudGF0aW9uOjpj
cmVhdGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRl
QmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJv
b2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKQotewotICAgIHJldHVybiBhZG9w
dFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb24oY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJv
dmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEsIGNhblByb3ZpZGVBYnNvbHV0
ZSwgYWJzb2x1dGUpKTsKLX0KLQotCi1EZXZpY2VPcmllbnRhdGlvbjo6RGV2aWNlT3JpZW50YXRp
b24oKQotICAgIDogbV9jYW5Qcm92aWRlQWxwaGEoZmFsc2UpCi0gICAgLCBtX2NhblByb3ZpZGVC
ZXRhKGZhbHNlKQotICAgICwgbV9jYW5Qcm92aWRlR2FtbWEoZmFsc2UpCi0gICAgLCBtX2NhblBy
b3ZpZGVBYnNvbHV0ZShmYWxzZSkKLSAgICAsIG1fYWxwaGEoMCkKLSAgICAsIG1fYmV0YSgwKQot
ICAgICwgbV9nYW1tYSgwKQotICAgICwgbV9hYnNvbHV0ZShmYWxzZSkKLXsKLX0KLQotRGV2aWNl
T3JpZW50YXRpb246OkRldmljZU9yaWVudGF0aW9uKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3Vi
bGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3Zp
ZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNv
bHV0ZSkKLSAgICA6IG1fY2FuUHJvdmlkZUFscGhhKGNhblByb3ZpZGVBbHBoYSkKLSAgICAsIG1f
Y2FuUHJvdmlkZUJldGEoY2FuUHJvdmlkZUJldGEpCi0gICAgLCBtX2NhblByb3ZpZGVHYW1tYShj
YW5Qcm92aWRlR2FtbWEpCi0gICAgLCBtX2NhblByb3ZpZGVBYnNvbHV0ZShjYW5Qcm92aWRlQWJz
b2x1dGUpCi0gICAgLCBtX2FscGhhKGFscGhhKQotICAgICwgbV9iZXRhKGJldGEpCi0gICAgLCBt
X2dhbW1hKGdhbW1hKQotICAgICwgbV9hYnNvbHV0ZShhYnNvbHV0ZSkKLXsKLX0KLQotZG91Ymxl
IERldmljZU9yaWVudGF0aW9uOjphbHBoYSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYWxwaGE7
Ci19Ci0KLWRvdWJsZSBEZXZpY2VPcmllbnRhdGlvbjo6YmV0YSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fYmV0YTsKLX0KLQotZG91YmxlIERldmljZU9yaWVudGF0aW9uOjpnYW1tYSgpIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIG1fZ2FtbWE7Ci19Ci0KLWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmFi
c29sdXRlKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9hYnNvbHV0ZTsKLX0KLQotYm9vbCBEZXZp
Y2VPcmllbnRhdGlvbjo6Y2FuUHJvdmlkZUFscGhhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9j
YW5Qcm92aWRlQWxwaGE7Ci19Ci0KLWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVC
ZXRhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92aWRlQmV0YTsKLX0KLQotYm9vbCBE
ZXZpY2VPcmllbnRhdGlvbjo6Y2FuUHJvdmlkZUdhbW1hKCkgY29uc3QKLXsKLSAgICByZXR1cm4g
bV9jYW5Qcm92aWRlR2FtbWE7Ci19Ci0KLWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmNhblByb3Zp
ZGVBYnNvbHV0ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY2FuUHJvdmlkZUFic29sdXRlOwot
fQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNjc3ZDQzMzA4NDAyMTQ3ZmE2
MWEzNTk1MmQ0YWQ4NzNhYmU3OTA2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oCisrKyAv
ZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgotICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
Ci0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgRGV2aWNlT3JpZW50
YXRpb25faAotI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbl9oCi0KLSNpbmNsdWRlIDx3dGYvUGFz
c1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgRGV2aWNlT3JpZW50YXRpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxEZXZp
Y2VPcmllbnRhdGlvbj4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9y
aWVudGF0aW9uPiBjcmVhdGUoKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRh
dGlvbj4gY3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2Fu
UHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdh
bW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSA9IGZhbHNlLCBib29sIGFic29sdXRlID0gZmFs
c2UpOwotCi0gICAgZG91YmxlIGFscGhhKCkgY29uc3Q7Ci0gICAgZG91YmxlIGJldGEoKSBjb25z
dDsKLSAgICBkb3VibGUgZ2FtbWEoKSBjb25zdDsKLSAgICBib29sIGFic29sdXRlKCkgY29uc3Q7
Ci0gICAgYm9vbCBjYW5Qcm92aWRlQWxwaGEoKSBjb25zdDsKLSAgICBib29sIGNhblByb3ZpZGVC
ZXRhKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5Qcm92aWRlR2FtbWEoKSBjb25zdDsKLSAgICBib29s
IGNhblByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0OwotCi1wcml2YXRlOgotICAgIERldmljZU9yaWVu
dGF0aW9uKCk7Ci0gICAgRGV2aWNlT3JpZW50YXRpb24oYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRv
dWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJv
dmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFi
c29sdXRlKTsKLQotICAgIGJvb2wgbV9jYW5Qcm92aWRlQWxwaGE7Ci0gICAgYm9vbCBtX2NhblBy
b3ZpZGVCZXRhOwotICAgIGJvb2wgbV9jYW5Qcm92aWRlR2FtbWE7Ci0gICAgYm9vbCBtX2NhblBy
b3ZpZGVBYnNvbHV0ZTsKLSAgICBkb3VibGUgbV9hbHBoYTsKLSAgICBkb3VibGUgbV9iZXRhOwot
ICAgIGRvdWJsZSBtX2dhbW1hOwotICAgIGJvb2wgbV9hYnNvbHV0ZTsKLX07Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIERldmljZU9yaWVudGF0aW9uX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmgKaW5kZXggMmMxNmIwY2Q4YmM3
YTc4NTA5MTZmOGJkMDFkNjU4ZjVmZjA2OWM0Yi4uNDA0OWMwM2E0YTE0NGE3NDUyMjlhMDU0MTM4
MWNkNTdlMTRjNjViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9u
Q2xpZW50LmgKQEAgLTI4LDE4ICsyOCwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNs
YXNzIERldmljZU9yaWVudGF0aW9uOwogY2xhc3MgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
OworY2xhc3MgRGV2aWNlT3JpZW50YXRpb25EYXRhOwogY2xhc3MgUGFnZTsKIAogY2xhc3MgRGV2
aWNlT3JpZW50YXRpb25DbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgfkRldmljZU9yaWVu
dGF0aW9uQ2xpZW50KCkge30KLQogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlciopID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRh
dGluZygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCkgPSAwOwotICAgIHZp
cnR1YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0ID0gMDsKKyAg
ICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Qg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95
ZWQoKSA9IDA7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IGVhZTZmYjUwYWIxYjBkMzgxMjdhYWJjMTc4OGMxNWRh
MjUwMWIwZTUuLmZkZjI0NjUzZmEzMWE3YjEwMDA3OGEwMjU4OTBjOTMwNmRkNTEyZWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3Bw
CkBAIC0yNiw4ICsyNiw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5o
IgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01Niw3ICs1Niw3IEBAIHZvaWQgRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKFRpbWVyPERldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlcj4qCiAgICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0gJm1fdGltZXIpOwogICAg
IEFTU0VSVChtX2NsaWVudC0+bGFzdE9yaWVudGF0aW9uKCkpOwogCi0gICAgUmVmUHRyPERldmlj
ZU9yaWVudGF0aW9uPiBvcmllbnRhdGlvbiA9IG1fY2xpZW50LT5sYXN0T3JpZW50YXRpb24oKTsK
KyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBvcmllbnRhdGlvbiA9IG1fY2xpZW50
LT5sYXN0T3JpZW50YXRpb24oKTsKICAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4g
ZXZlbnQgPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRldmlj
ZW9yaWVudGF0aW9uRXZlbnQsIG9yaWVudGF0aW9uLmdldCgpKTsKIAogICAgIFZlY3RvcjxSZWZQ
dHI8RE9NV2luZG93PiA+IGxpc3RlbmVyc1ZlY3RvcjsKQEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lk
IERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lRXZlbnRzRm9yQWxsTGlzdGVuZXJz
KERPTVdpbmRvdyogd2luZG93KQogICAgICAgICBhZGRMaXN0ZW5lcih3aW5kb3cpOwogfQogCi12
b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRp
b24oRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQordm9pZCBEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9u
RGF0YSogb3JpZW50YXRpb24pCiB7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+
IGV2ZW50ID0gRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZp
Y2VvcmllbnRhdGlvbkV2ZW50LCBvcmllbnRhdGlvbik7CiAgICAgVmVjdG9yPFJlZlB0cjxET01X
aW5kb3c+ID4gbGlzdGVuZXJzVmVjdG9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCmluZGV4IDcwN2NkNWNiNmRiNTQxNGJlNTk0YTAyZTQ4
YTNiNjU2YTE5ODhkODQuLmM5MjcyYTJmYjlmNTcwMjNmMGZjMmY5N2M3NDNiMWY4YjgyZGQwYzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
LmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBEZXZp
Y2VPcmllbnRhdGlvbjsKK2NsYXNzIERldmljZU9yaWVudGF0aW9uRGF0YTsKIGNsYXNzIERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50OwogCiBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIg
OiBwdWJsaWMgU3VwcGxlbWVudDxQYWdlPiB7CkBAIC01MCw3ICs1MCw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIHN1c3BlbmRFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAgICAgdm9p
ZCByZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKLSAgICB2b2lkIGRp
ZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CisgICAgdm9pZCBk
aWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbkRhdGEqKTsKIAogICAg
IGJvb2wgaXNBY3RpdmUoKSB7IHJldHVybiAhbV9saXN0ZW5lcnMuaXNFbXB0eSgpOyB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NmU3MzAyZmQ3ZjhiYmI1Mjg5YjdmNmU2ZTU1NjE1NDkxOGJmNmFhNAotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwCkBAIC0wLDAg
KzEsMTA2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uRGF0YS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1Bhc3NSZWZQdHI8
RGV2aWNlT3JpZW50YXRpb25EYXRhPiBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZSgpCit7
CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkRhdGEpOworfQorCitQ
YXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpj
cmVhdGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRl
QmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJv
b2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKQoreworICAgIHJldHVybiBhZG9w
dFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25EYXRhKGNhblByb3ZpZGVBbHBoYSwgYWxwaGEsIGNh
blByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEsIGdhbW1hLCBjYW5Qcm92aWRlQWJz
b2x1dGUsIGFic29sdXRlKSk7Cit9CisKKworRGV2aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VP
cmllbnRhdGlvbkRhdGEoKQorICAgIDogbV9jYW5Qcm92aWRlQWxwaGEoZmFsc2UpCisgICAgLCBt
X2NhblByb3ZpZGVCZXRhKGZhbHNlKQorICAgICwgbV9jYW5Qcm92aWRlR2FtbWEoZmFsc2UpCisg
ICAgLCBtX2NhblByb3ZpZGVBYnNvbHV0ZShmYWxzZSkKKyAgICAsIG1fYWxwaGEoMCkKKyAgICAs
IG1fYmV0YSgwKQorICAgICwgbV9nYW1tYSgwKQorICAgICwgbV9hYnNvbHV0ZShmYWxzZSkKK3sK
K30KKworRGV2aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEoYm9vbCBj
YW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91Ymxl
IGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlk
ZUFic29sdXRlLCBib29sIGFic29sdXRlKQorICAgIDogbV9jYW5Qcm92aWRlQWxwaGEoY2FuUHJv
dmlkZUFscGhhKQorICAgICwgbV9jYW5Qcm92aWRlQmV0YShjYW5Qcm92aWRlQmV0YSkKKyAgICAs
IG1fY2FuUHJvdmlkZUdhbW1hKGNhblByb3ZpZGVHYW1tYSkKKyAgICAsIG1fY2FuUHJvdmlkZUFi
c29sdXRlKGNhblByb3ZpZGVBYnNvbHV0ZSkKKyAgICAsIG1fYWxwaGEoYWxwaGEpCisgICAgLCBt
X2JldGEoYmV0YSkKKyAgICAsIG1fZ2FtbWEoZ2FtbWEpCisgICAgLCBtX2Fic29sdXRlKGFic29s
dXRlKQoreworfQorCitkb3VibGUgRGV2aWNlT3JpZW50YXRpb25EYXRhOjphbHBoYSgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fYWxwaGE7Cit9CisKK2RvdWJsZSBEZXZpY2VPcmllbnRhdGlvbkRh
dGE6OmJldGEoKSBjb25zdAoreworICAgIHJldHVybiBtX2JldGE7Cit9CisKK2RvdWJsZSBEZXZp
Y2VPcmllbnRhdGlvbkRhdGE6OmdhbW1hKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9nYW1tYTsK
K30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmFic29sdXRlKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbV9hYnNvbHV0ZTsKK30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNh
blByb3ZpZGVBbHBoYSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY2FuUHJvdmlkZUFscGhhOwor
fQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUJldGEoKSBjb25zdAor
eworICAgIHJldHVybiBtX2NhblByb3ZpZGVCZXRhOworfQorCitib29sIERldmljZU9yaWVudGF0
aW9uRGF0YTo6Y2FuUHJvdmlkZUdhbW1hKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jYW5Qcm92
aWRlR2FtbWE7Cit9CisKK2Jvb2wgRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJz
b2x1dGUoKSBjb25zdAoreworICAgIHJldHVybiBtX2NhblByb3ZpZGVBYnNvbHV0ZTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uRGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkZjliNjU4ZmFiODlmOGUxYTRlN2FhYmZkMmRjN2U5Mzll
MDY1MDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50
YXRpb25EYXRhLmgKQEAgLTAsMCArMSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRGV2aWNlT3Jp
ZW50YXRpb25EYXRhX2gKKyNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25EYXRhX2gKKworI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEgOiBwdWJsaWMg
UmVmQ291bnRlZDxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
UGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IGNyZWF0ZSgpOworICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gY3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFs
cGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29s
IGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSA9
IGZhbHNlLCBib29sIGFic29sdXRlID0gZmFsc2UpOworCisgICAgZG91YmxlIGFscGhhKCkgY29u
c3Q7CisgICAgZG91YmxlIGJldGEoKSBjb25zdDsKKyAgICBkb3VibGUgZ2FtbWEoKSBjb25zdDsK
KyAgICBib29sIGFic29sdXRlKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92aWRlQWxwaGEoKSBj
b25zdDsKKyAgICBib29sIGNhblByb3ZpZGVCZXRhKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92
aWRlR2FtbWEoKSBjb25zdDsKKyAgICBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0Owor
Citwcml2YXRlOgorICAgIERldmljZU9yaWVudGF0aW9uRGF0YSgpOworICAgIERldmljZU9yaWVu
dGF0aW9uRGF0YShib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblBy
b3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1t
YSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpOworCisgICAgYm9vbCBt
X2NhblByb3ZpZGVBbHBoYTsKKyAgICBib29sIG1fY2FuUHJvdmlkZUJldGE7CisgICAgYm9vbCBt
X2NhblByb3ZpZGVHYW1tYTsKKyAgICBib29sIG1fY2FuUHJvdmlkZUFic29sdXRlOworICAgIGRv
dWJsZSBtX2FscGhhOworICAgIGRvdWJsZSBtX2JldGE7CisgICAgZG91YmxlIG1fZ2FtbWE7Cisg
ICAgYm9vbCBtX2Fic29sdXRlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gRGV2aWNlT3JpZW50YXRpb25EYXRhX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmNwcAppbmRleCA3ZGVjYzdjMDYzMjEzMmIzMjYxZmQ4NDAyZTVk
NDBjNDUxYzg3MzY3Li5iYWJjNzdlNmJmYjAyMmJlNzVmNzMyZGQzOTNjNjRmNDRlMjYzMzY0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwCkBAIC0y
Niw3ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25FdmVudC5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRl
ICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM2LDE3ICszNiwxNyBAQCBEZXZpY2VPcmllbnRhdGlvbkV2
ZW50Ojp+RGV2aWNlT3JpZW50YXRpb25FdmVudCgpCiB9CiAKIERldmljZU9yaWVudGF0aW9uRXZl
bnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQoKQotICAgIDogbV9vcmllbnRhdGlvbihEZXZpY2VP
cmllbnRhdGlvbjo6Y3JlYXRlKCkpCisgICAgOiBtX29yaWVudGF0aW9uKERldmljZU9yaWVudGF0
aW9uRGF0YTo6Y3JlYXRlKCkpCiB7CiB9CiAKLURldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmlj
ZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9y
aWVudGF0aW9uKiBvcmllbnRhdGlvbikKK0RldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9y
aWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVu
dGF0aW9uRGF0YSogb3JpZW50YXRpb24pCiAgICAgOiBFdmVudChldmVudFR5cGUsIGZhbHNlLCBm
YWxzZSkgLy8gQ2FuJ3QgYnViYmxlLCBub3QgY2FuY2VsYWJsZQogICAgICwgbV9vcmllbnRhdGlv
bihvcmllbnRhdGlvbikKIHsKIH0KIAotdm9pZCBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0
RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnVi
YmxlcywgYm9vbCBjYW5jZWxhYmxlLCBEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCit2
b2lkIERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNv
bnN0IEF0b21pY1N0cmluZyYgdHlwZSwgYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIERl
dmljZU9yaWVudGF0aW9uRGF0YSogb3JpZW50YXRpb24pCiB7CiAgICAgaWYgKGRpc3BhdGNoZWQo
KSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlv
bkV2ZW50LmgKaW5kZXggZDk1OTg0MzEyZmIxNTMwYmIwYmJkYzNhMDQ0MmUxNTU3YWExYWNmOS4u
ZTE5NmVhNWI5M2U0Y2Y3NDg0YjkzY2I3ZWNmZWVhZGI3ZmM0MjNiYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRGV2aWNlT3JpZW50YXRpb247CitjbGFzcyBEZXZp
Y2VPcmllbnRhdGlvbkRhdGE7CiAKIGNsYXNzIERldmljZU9yaWVudGF0aW9uRXZlbnQgOiBwdWJs
aWMgRXZlbnQgewogcHVibGljOgpAQCAtMzksMjIgKzM5LDIyIEBAIHB1YmxpYzoKICAgICB7CiAg
ICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25FdmVudCk7CiAgICAg
fQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZShj
b25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0
aW9uKQorICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0
ZShjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBv
cmllbnRhdGlvbikKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3Jp
ZW50YXRpb25FdmVudChldmVudFR5cGUsIG9yaWVudGF0aW9uKSk7CiAgICAgfQogCi0gICAgdm9p
ZCBpbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJv
b2wgYnViYmxlcywgYm9vbCBjYW5jZWxhYmxlLCBEZXZpY2VPcmllbnRhdGlvbiopOworICAgIHZv
aWQgaW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBi
b29sIGJ1YmJsZXMsIGJvb2wgY2FuY2VsYWJsZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKik7CiAK
LSAgICBEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX29y
aWVudGF0aW9uLmdldCgpOyB9CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlv
bigpIGNvbnN0IHsgcmV0dXJuIG1fb3JpZW50YXRpb24uZ2V0KCk7IH0KIAogICAgIHZpcnR1YWwg
Y29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7CiAKIHByaXZhdGU6CiAg
ICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCgpOwotICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9uKik7CisgICAg
RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2
aWNlT3JpZW50YXRpb25EYXRhKik7CiAKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1f
b3JpZW50YXRpb247CisgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRh
dGlvbjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0
eUNsaWVudHMuaAppbmRleCBiZWNjZjg4MDE2NjZhN2QwYTlkYjQzYzQ3MmU5ZWFhZGJkMDhmMjBm
Li5kNmY3OThlZjc3MjY5ZDBlNzBjYjgwZjNhNWY0YjhiZDQ2YjE3MDZjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC01OTEsNyArNTkxLDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciopIHsg
fQogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCkgeyB9CiAgICAgdmlydHVhbCB2b2lk
IHN0b3BVcGRhdGluZygpIHsgfQotICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RP
cmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIERldmljZU9yaWVu
dGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gMDsgfQogICAgIHZp
cnR1YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSB7IH0KIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50
YXRpb25DbGllbnRNb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNl
T3JpZW50YXRpb25DbGllbnRNb2NrLmNwcAppbmRleCAyZmE1YWNiZWVmZWM4ZmMzNTc0ZmExMjFj
YmQxNTg4YWQwZGE3NjZjLi5jN2RiOTA5OWVlMmQ5NDkxYWQyYTM0MjNkZDM2Y2EyMzZmNjkwMTBm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0
aW9uQ2xpZW50TW9jay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZp
Y2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwCkBAIC01NSw3ICs1NSw3IEBAIHZvaWQgRGV2aWNl
T3JpZW50YXRpb25DbGllbnRNb2NrOjpzdG9wVXBkYXRpbmcoKQogICAgIG1fdGltZXIuc3RvcCgp
OwogfQogCi12b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24o
UGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gb3JpZW50YXRpb24pCit2b2lkIERldmljZU9y
aWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmll
bnRhdGlvbkRhdGE+IG9yaWVudGF0aW9uKQogewogICAgIG1fb3JpZW50YXRpb24gPSBvcmllbnRh
dGlvbjsKICAgICBpZiAobV9pc1VwZGF0aW5nICYmICFtX3RpbWVyLmlzQWN0aXZlKCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50TW9jay5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2suaAppbmRleCBiYWE0MjQ1NWMyNjg5Y2MyOGRiMzQ4OTEzMjExOTk0MzI3ZjUy
OWRhLi5jNGExODRhYzIyYTVkZDUyYjFhZjQ5MTVmNzI4MmFjNmVlZDQ3NmRhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
ay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrLmgKQEAgLTI2LDggKzI2LDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrX2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrX2gKIAotI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25D
bGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJU
aW1lci5oIgogCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTQ4LDE1ICs0OCwxNSBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2
aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlv
biogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9vcmllbnRhdGlvbi5nZXQoKTsg
fQorICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBj
b25zdCB7IHJldHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9CiAgICAgdmlydHVhbCB2b2lkIGRl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpIHsgfQogCi0gICAgdm9pZCBzZXRP
cmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPik7CisgICAgdm9pZCBzZXRP
cmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4pOwogCiBwcml2YXRl
OgogICAgIHZvaWQgdGltZXJGaXJlZChUaW1lcjxEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s+
Kik7CiAKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fb3JpZW50YXRpb247CisgICAg
UmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlvbjsKICAgICBEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKICAgICBUaW1lcjxEZXZpY2VPcmll
bnRhdGlvbkNsaWVudE1vY2s+IG1fdGltZXI7CiAgICAgYm9vbCBtX2lzVXBkYXRpbmc7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50UXQuY3BwCmluZGV4IDVmY2E4NTlmYzAwMTQwOGM1Zjc5MzlmYmMyZTdjNGIwNzcxMWE3ZDgu
LjIwZDllOWQ4YTk5YTVmZTY4ZTNhNDM2YTcxZDJlNmViOTgxZTkwOTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQu
Y3BwCkBAIC01MCw3ICs1MCw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdDo6c3Rv
cFVwZGF0aW5nKCkKICAgICAgICAgbV9wcm92aWRlci0+c3RvcCgpOwogfQogCi1EZXZpY2VPcmll
bnRhdGlvbiogRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdDo6bGFzdE9yaWVudGF0aW9uKCkgY29u
c3QKK0RldmljZU9yaWVudGF0aW9uRGF0YSogRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdDo6bGFz
dE9yaWVudGF0aW9uKCkgY29uc3QKIHsKICAgICByZXR1cm4gKG1fcHJvdmlkZXIpID8gbV9wcm92
aWRlci0+bGFzdE9yaWVudGF0aW9uKCkgOiAwOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5oCmluZGV4IDkxMjQ0ZGJh
NjhjNzVhZWQ4ZDRkODE0YWZjY2U3ZmE5MzczYjE2MTkuLjZhMmQ1ZGQwZDVkY2I1OGVlNDU4MTU0
N2FlMmYyMjlkYzU1N2MxZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0LmgKQEAgLTIwLDggKzIwLDggQEAKICNpZm5k
ZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdF9oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9u
Q2xpZW50UXRfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0
YS5oIgogCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCiAjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmgiCkBAIC0zNyw3ICszNyw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOwogICAgIHZpcnR1YWwg
dm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0
T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSog
bGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5jcHAK
aW5kZXggNDg4NTMwYmIzNWFiZDA4NzRlODU0YjhjNzc3MDA2NGQ2MmRhNmNjNi4uOGNjNmZjNGMw
NTg2NDJkMzc3MzRiZjcwYjdjMDVkMGMyM2M0Y2JiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQuY3BwCkBA
IC0yNiw3ICsyNiw3IEBAIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdDo6RGV2aWNlT3JpZW50
YXRpb25Qcm92aWRlclF0KCkKICAgICA6IG1fY29udHJvbGxlcigwKQogewogICAgIG1fc2Vuc29y
LmFkZEZpbHRlcih0aGlzKTsKLSAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0
aW9uOjpjcmVhdGUoKTsKKyAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9u
RGF0YTo6Y3JlYXRlKCk7CiB9CiAKIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdDo6fkRldmlj
ZU9yaWVudGF0aW9uUHJvdmlkZXJRdCgpCkBAIC02Niw3ICs2Niw3IEBAIGJvb2wgRGV2aWNlT3Jp
ZW50YXRpb25Qcm92aWRlclF0OjpmaWx0ZXIoUVJvdGF0aW9uUmVhZGluZyogcmVhZGluZykKICAg
ICAgICAgLy8gVGhlIFogKGFscGhhKSByb3RhdGlvbiBhbmdsZSBpcyBjaGVja2VkIHZpYSBoYXNB
bHBoYSgpIHByaXZhdGUgbWV0aG9kLAogICAgICAgICAvLyBkZXBlbmRpbmcgaWYgdGhlIGRldmlj
ZSBpcyBhYmxlIGRvIGRldGVjdCB0aGUgYWxwaGEgcm90YXRpb24uIFggKGJldGEpIGFuZAogICAg
ICAgICAvLyBZIChnYW1tYSkgYXhpcyBhcmUgYXZhaWxibGUgaW4gdGhpcyBjb250ZXh0LgotICAg
ICAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoaGFzQWxw
aGEoKSwgcmVhZGluZy0+eigpLAorICAgICAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9y
aWVudGF0aW9uRGF0YTo6Y3JlYXRlKGhhc0FscGhhKCksIHJlYWRpbmctPnooKSwKICAgICAgICAg
ICAgICAgICAvKiB4IGF2YWlsYWJsZSAqLyB0cnVlLCByZWFkaW5nLT54KCksCiAgICAgICAgICAg
ICAgICAgLyogeSBhdmFpbGFibGUgKi8gdHJ1ZSwgcmVhZGluZy0+eSgpKTsKICAgICAgICAgbV9j
b250cm9sbGVyLT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihtX2xhc3RPcmllbnRhdGlvbi5n
ZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmll
bnRhdGlvblByb3ZpZGVyUXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9y
aWVudGF0aW9uUHJvdmlkZXJRdC5oCmluZGV4IGM3ZjZkMjMzN2NhOGU3NGM4NGI1YjBkM2UxMjQw
YmMwZWU5NTVkM2EuLmM0YTIyZjc0ZTJkMThlNjdkMTU1NTFlODM3MzdkYTZhOTk1NzI5YTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJv
dmlkZXJRdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0
aW9uUHJvdmlkZXJRdC5oCkBAIC0yMCw4ICsyMCw4IEBACiAjaWZuZGVmIERldmljZU9yaWVudGF0
aW9uUHJvdmlkZXJRdF9oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdF9oCiAK
LSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2lu
Y2x1ZGUgPFFSb3RhdGlvbkZpbHRlcj4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTQ1
LDExICs0NSwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGFydCgpOwogICAgIHZvaWQgc3RvcCgp
OwogICAgIGJvb2wgaXNBY3RpdmUoKSBjb25zdCB7IHJldHVybiBtX3NlbnNvci5pc0FjdGl2ZSgp
OyB9Ci0gICAgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fbGFzdE9yaWVudGF0aW9uLmdldCgpOyB9CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRh
KiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2xhc3RPcmllbnRhdGlvbi5nZXQo
KTsgfQogICAgIGJvb2wgaGFzQWxwaGEoKSBjb25zdCB7IHJldHVybiBtX3NlbnNvci5wcm9wZXJ0
eSgiaGFzWiIpLnRvQm9vbCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgUmVmUHRyPERldmljZU9yaWVu
dGF0aW9uPiBtX2xhc3RPcmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25E
YXRhPiBtX2xhc3RPcmllbnRhdGlvbjsKICAgICBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIq
IG1fY29udHJvbGxlcjsKICAgICBRUm90YXRpb25TZW5zb3IgbV9zZW5zb3I7CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNv
cmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oCmluZGV4IDc2MTBm
YjFkNGRiODgxZGIyMWNiZTY0OTZlNTAxYWJjZDc3NjhiZGMuLmNhMWRkOWQ0ZGZiMWNjN2NmZGFk
ZmMwYzU5YmVhMTJlNjlkNjhiYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJy
eS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRCbGFja0JlcnJ5LmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5kZWYgRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRCbGFja0JlcnJ5X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGll
bnRCbGFja0JlcnJ5X2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bkRhdGEuaCIKIAogI2luY2x1ZGUgPEJsYWNrQmVycnlQbGF0Zm9ybURldmljZU9yaWVudGF0aW9u
VHJhY2tlckxpc3RlbmVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNDcsNyArNDcs
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRh
dGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBkZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKICAgICB2aXJ0dWFsIHZvaWQgb25P
cmllbnRhdGlvbihjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25F
dmVudCopOwogCkBAIC01NSw3ICs1NSw3IEBAIHByaXZhdGU6CiAgICAgQmxhY2tCZXJyeTo6V2Vi
S2l0OjpXZWJQYWdlUHJpdmF0ZSogbV93ZWJQYWdlUHJpdmF0ZTsKICAgICBCbGFja0JlcnJ5OjpQ
bGF0Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25UcmFja2VyKiBtX3RyYWNrZXI7CiAgICAgRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyKiBtX2NvbnRyb2xsZXI7Ci0gICAgUmVmUHRyPERldmljZU9y
aWVudGF0aW9uPiBtX2N1cnJlbnRPcmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50
YXRpb25EYXRhPiBtX2N1cnJlbnRPcmllbnRhdGlvbjsKIH07CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRldmljZU9yaWVudGF0aW9uLmggYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oCmluZGV4IGJj
YTM2OTJmOWJmNDIzOWMwYTc5ZDQyYWExMTFiNGUwYmI1OTlkYTcuLjg0YjFiYjNkNGRkN2ZhMTNh
ZDE3ZGFlOGY1MTBhOTcyYmZhYmYzMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYkRldmljZU9yaWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViRGV2aWNlT3JpZW50YXRpb24uaApAQCAtMjgsNyArMjgsNyBAQAogCiAj
aWYgV0VCS0lUX0lNUExFTUVOVEFUSU9OCiBuYW1lc3BhY2UgV1RGIHsgdGVtcGxhdGUgPHR5cGVu
YW1lIFQ+IGNsYXNzIFBhc3NSZWZQdHI7IH0KLW5hbWVzcGFjZSBXZWJDb3JlIHsgY2xhc3MgRGV2
aWNlT3JpZW50YXRpb247IH0KK25hbWVzcGFjZSBXZWJDb3JlIHsgY2xhc3MgRGV2aWNlT3JpZW50
YXRpb25EYXRhOyB9CiAjZW5kaWYKIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC05OSw5ICs5OSw5
IEBAIHB1YmxpYzoKICAgICBib29sIGFic29sdXRlKCkgeyByZXR1cm4gbV9hYnNvbHV0ZTsgfQog
CiAjaWYgV0VCS0lUX0lNUExFTUVOVEFUSU9OCi0gICAgV2ViRGV2aWNlT3JpZW50YXRpb24oY29u
c3QgV1RGOjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiYpOwotICAgIFdl
YkRldmljZU9yaWVudGF0aW9uJiBvcGVyYXRvcj0oY29uc3QgV1RGOjpQYXNzUmVmUHRyPFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uPiYpOwotICAgIG9wZXJhdG9yIFdURjo6UGFzc1JlZlB0cjxX
ZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4oKSBjb25zdDsKKyAgICBXZWJEZXZpY2VPcmllbnRh
dGlvbihjb25zdCBXVEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
PiYpOworICAgIFdlYkRldmljZU9yaWVudGF0aW9uJiBvcGVyYXRvcj0oY29uc3QgV1RGOjpQYXNz
UmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4mKTsKKyAgICBvcGVyYXRvciBX
VEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPigpIGNvbnN0Owog
I2VuZGlmCiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCmluZGV4IDI5YjQzYmE1NmRh
NWNiODk2MmQ5YTY1NzEzMjlkNDFlZmIzZGVkNmQuLmYxZjBiMzNmOWU3ZGJlOThkZTE3MjEwZGI5
Zjc2YTNhMjdhNjVkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCkBAIC0yNiw3ICsyNiw3IEBA
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnRQ
cm94eS5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZp
Y2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbi5oIgog
I2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgPHd0
Zi9Pd25QdHIuaD4KQEAgLTYwLDEyICs2MCwxMiBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ2xp
ZW50UHJveHk6OnN0b3BVcGRhdGluZygpCiAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwog
fQogCi1XZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogRGV2aWNlT3JpZW50YXRpb25DbGllbnRQ
cm94eTo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKK1dlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RGF0YSogRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6bGFzdE9yaWVudGF0aW9uKCkgY29u
c3QKIHsKICAgICBpZiAoIW1fY2xpZW50KQogICAgICAgICByZXR1cm4gMDsKIAotICAgIC8vIENh
Y2hlIHRoZSBEZXZpY2VPcmllbnRhdGlvbiBwb2ludGVyIHNvIGl0cyByZWZlcmVuY2UgY291bnQg
ZG9lcyBub3QgZHJvcCB0byB6ZXJvIHVwb24gcmV0dXJuLgorICAgIC8vIENhY2hlIHRoZSBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEgcG9pbnRlciBzbyBpdHMgcmVmZXJlbmNlIGNvdW50IGRvZXMgbm90
IGRyb3AgdG8gemVybyB1cG9uIHJldHVybi4KICAgICBtX2xhc3RPcmllbnRhdGlvbiA9IG1fY2xp
ZW50LT5sYXN0T3JpZW50YXRpb24oKTsKIAogICAgIHJldHVybiBtX2xhc3RPcmllbnRhdGlvbi5n
ZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9y
aWVudGF0aW9uQ2xpZW50UHJveHkuaAppbmRleCBlOTBkNzdmZDliYTY4N2FmYWU4ZmFiMGJjMTU1
NDVjNThlNTAzOTVkLi41YTFhZmM2ZTg1ZDc4OWQzNDkxZWU1NDdhODExNTJkNzEyYTZhNGM5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNs
aWVudFByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50
YXRpb25DbGllbnRQcm94eS5oCkBAIC0yNiw4ICsyNiw4IEBACiAjaWZuZGVmIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50UHJveHlfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5
X2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNp
bmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgogI2luY2x1ZGUgPHd0Zi9SZWZQ
dHIuaD4KIApAQCAtNDcsMTIgKzQ3LDEyIEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENvbnRyb2xs
ZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKik7CiAgICAgdm9pZCBzdGFy
dFVwZGF0aW5nKCk7CiAgICAgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICBXZWJDb3JlOjpEZXZp
Y2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgV2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFs
IHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6
CiAgICAgV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQqIG1fY2xpZW50OwotICAgIG11dGFibGUg
UmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiBtX2xhc3RPcmllbnRhdGlvbjsKKyAg
ICBtdXRhYmxlIFJlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fbGFzdE9y
aWVudGF0aW9uOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5jcHAKaW5kZXggMDk4Y2I0
MjVjNjgzNDFhYTU2OWNhMTBlNTJmZjk4OTM0MWFjYWI1NC4uMmJmYTRjMTc1ZjhiZTJlZmI4MDA2
MDY5MjUzNThkNWQ0NzZiOGU0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRGV2aWNlT3JpZW50YXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcApAQCAtMjYsMTIgKzI2LDEyIEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb24uaCIKIAotI2luY2x1
ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRh
LmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAK
LVdlYkRldmljZU9yaWVudGF0aW9uOjpXZWJEZXZpY2VPcmllbnRhdGlvbihjb25zdCBQYXNzUmVm
UHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiYgb3JpZW50YXRpb24pCitXZWJEZXZpY2VP
cmllbnRhdGlvbjo6V2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgUGFzc1JlZlB0cjxXZWJDb3Jl
OjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+JiBvcmllbnRhdGlvbikKIHsKICAgICBpZiAoIW9yaWVu
dGF0aW9uKSB7CiAgICAgICAgIG1faXNOdWxsID0gdHJ1ZTsKQEAgLTU3LDcgKzU3LDcgQEAgV2Vi
RGV2aWNlT3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKGNvbnN0IFBhc3NSZWZQdHI8
V2ViQ29yZTo6RGV2aWNlT3JpZW4KICAgICBtX2Fic29sdXRlID0gb3JpZW50YXRpb24tPmFic29s
dXRlKCk7CiB9CiAKLVdlYkRldmljZU9yaWVudGF0aW9uJiBXZWJEZXZpY2VPcmllbnRhdGlvbjo6
b3BlcmF0b3I9KGNvbnN0IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+JiBv
cmllbnRhdGlvbikKK1dlYkRldmljZU9yaWVudGF0aW9uJiBXZWJEZXZpY2VPcmllbnRhdGlvbjo6
b3BlcmF0b3I9KGNvbnN0IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
PiYgb3JpZW50YXRpb24pCiB7CiAgICAgaWYgKCFvcmllbnRhdGlvbikgewogICAgICAgICBtX2lz
TnVsbCA9IHRydWU7CkBAIC04NCwxMSArODQsMTEgQEAgV2ViRGV2aWNlT3JpZW50YXRpb24mIFdl
YkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvcj0oY29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjoK
ICAgICByZXR1cm4gKnRoaXM7CiB9CiAKLVdlYkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvciBQ
YXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPigpIGNvbnN0CitXZWJEZXZpY2VP
cmllbnRhdGlvbjo6b3BlcmF0b3IgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bkRhdGE+KCkgY29uc3QKIHsKICAgICBpZiAobV9pc051bGwpCiAgICAgICAgIHJldHVybiAwOwot
ICAgIHJldHVybiBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKG1fY2FuUHJvdmlk
ZUFscGhhLCBtX2FscGhhLCBtX2NhblByb3ZpZGVCZXRhLCBtX2JldGEsIG1fY2FuUHJvdmlkZUdh
bW1hLCBtX2dhbW1hLCBtX2NhblByb3ZpZGVBYnNvbHV0ZSwgbV9hYnNvbHV0ZSk7CisgICAgcmV0
dXJuIFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKG1fY2FuUHJvdmlkZUFs
cGhhLCBtX2FscGhhLCBtX2NhblByb3ZpZGVCZXRhLCBtX2JldGEsIG1fY2FuUHJvdmlkZUdhbW1h
LCBtX2dhbW1hLCBtX2NhblByb3ZpZGVBYnNvbHV0ZSwgbV9hYnNvbHV0ZSk7CiB9CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggYWE5MjQ5Zjc2
NzEwZjg3MGMwM2JkMzkxZDFmZTFjODcxM2ZlMmZiMi4uNDM1NTg0MWM2ZmQ0MTU4ZjM1YzM2OThk
MjEyNjhiYTVlMmQ4ZmNlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC0yNiw4ICsy
Niw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1
ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KIApAQCAtMzUsOCArMzUsNyBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIAogdm9pZCBXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmlj
ZU9yaWVudGF0aW9uKGNvbnN0IFdlYkRldmljZU9yaWVudGF0aW9uJiBvcmllbnRhdGlvbikKIHsK
LSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiBkZXZpY2VPcmllbnRh
dGlvbihvcmllbnRhdGlvbik7Ci0gICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VEZXZpY2VPcmll
bnRhdGlvbihkZXZpY2VPcmllbnRhdGlvbi5nZXQoKSk7CisgICAgbV9jb250cm9sbGVyLT5kaWRD
aGFuZ2VEZXZpY2VPcmllbnRhdGlvbihzdGF0aWNfY2FzdDxQYXNzUmVmUHRyPFdlYkNvcmU6OkRl
dmljZU9yaWVudGF0aW9uRGF0YT4gPihvcmllbnRhdGlvbikuZ2V0KCkpOwogfQogCiBXZWJDb3Jl
OjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIFdlYkRldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlcjo6Y29udHJvbGxlcigpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9X
ZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oIGIvU291cmNlL1dlYktp
dC9lZmwvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaAppbmRleCBi
ODAwNzdjYTVlZDE1ZGQxZWE2NGE3ZDljM2IwZjJhMzcxNDlhYjdjLi4wYmIxOTdjYjdmOWY0NmE0
NTg0OWE1Y2YzYWQxMjk5ODEyOWZlODcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9X
ZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmgKQEAg
LTIwLDggKzIwLDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmxfaAogI2Rl
ZmluZSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbF9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAt
MzMsNyArMzMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRp
bmcoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBEZXZp
Y2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwg
dm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAogcHJpdmF0ZToK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50R3RrLmggYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EZXZp
Y2VPcmllbnRhdGlvbkNsaWVudEd0ay5oCmluZGV4IDJjNTI5NDk1ZjA1NDc5NzBiMDFhOTRiMjVl
ZjA0NTI1YWQ2YjgxM2UuLmZjYWEyZDJlODFkZDczM2IxOWNlNTA3OTFkMWI5ODY4MDA1OWNlNTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50R3RrLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQv
RGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGsuaApAQCAtMjEsOCArMjEsOCBAQAogI2lmbmRlZiBE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0a19oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xp
ZW50R3RrX2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2
aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEu
aCIKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKQEAgLTM0LDcgKzM0LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlciopOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCk7CiAgICAgdmlydHVh
bCB2b2lkIHN0b3BVcGRhdGluZygpOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OworICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFs
IHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
RGV2aWNlT3JpZW50YXRpb25DbGllbnQuaAppbmRleCBlZDQwN2ViODAxY2FlNDkzMzNjODUzNDg3
YWIwM2E1YWUxMmU2YzliLi43ZTQ5ODcxYzAwYTkxODJhMWQ2ZjBkZGVjOWM5OTAyMjlkOGU1YTc5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgKQEAgLTQ2LDcgKzQ2LDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlciopIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCkg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpIE9WRVJSSURFOwotICAg
IHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNv
bnN0IE9WRVJSSURFOworICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
KiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgZGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCkgT1ZFUlJJREU7CiAKIHByaXZhdGU6
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tCmluZGV4IDNhNGQ1ZDdkZDg5OTcxNGE3NTRkNmY1
ODljYzM2MTg2YTM3ZmJiNjMuLmFhYTAzMWE0YjgxNzA2NzFhYzlkMWI0ODVjZTg2YTVlOWY1ZWUx
ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmlj
ZU9yaWVudGF0aW9uQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tCkBAIC01NSw3ICs1NSw3IEBAIHZvaWQg
V2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQ6OnN0b3BVcGRhdGluZygpCiAgICAgW2dldFByb3Zp
ZGVyKCkgc3RvcFVwZGF0aW5nXTsKIH0KIAotRGV2aWNlT3JpZW50YXRpb24qIFdlYkRldmljZU9y
aWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAorRGV2aWNlT3JpZW50YXRp
b25EYXRhKiBXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudDo6bGFzdE9yaWVudGF0aW9uKCkgY29u
c3QKIHsKICAgICByZXR1cm4gY29yZShbZ2V0UHJvdmlkZXIoKSBsYXN0T3JpZW50YXRpb25dKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50
YXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9u
Lm1tCmluZGV4IDdiZTVkMGNhMzA5Nzk5NWIyOGU5Yzc2OTdhNTM4MTg3NmQzNzc1MGMuLmRiNzg5
NGY5YzY5YWE3MmY1NjcxNDMwOGI2ZDk5NTlkMzgzNTdjYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb24ubW0KKysrIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbQpAQCAtMjksNyArMjksNyBA
QCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYkRldmljZU9y
aWVudGF0aW9uSW50ZXJuYWwKIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246
KFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbgorLSAo
aWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50
YXRpb25EYXRhPiljb3JlRGV2aWNlT3JpZW50YXRpb24KIHsKICAgICBzZWxmID0gW3N1cGVyIGlu
aXRdOwogICAgIGlmICghc2VsZikKQEAgLTQyLDcgKzQyLDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJEZXZpY2VPcmllbnRhdGlvbiAoSW50ZXJuYWwp
CiAKLS0gKGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uPiljb3JlRGV2aWNlT3JpZW50YXRpb24KKy0gKGlkKWluaXRX
aXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVu
dGF0aW9uRGF0YT4pY29yZURldmljZU9yaWVudGF0aW9uCiB7CiAgICAgc2VsZiA9IFtzdXBlciBp
bml0XTsKICAgICBpZiAoIXNlbGYpCkBAIC01NSw3ICs1NSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwogCiBAaW1wbGVtZW50YXRpb24gV2ViRGV2aWNlT3JpZW50YXRpb24KIAotRGV2aWNl
T3JpZW50YXRpb24qIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorRGV2
aWNlT3JpZW50YXRpb25EYXRhKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlv
bikKIHsKICAgICByZXR1cm4gb3JpZW50YXRpb24gPyBvcmllbnRhdGlvbi0+bV9pbnRlcm5hbC0+
bV9vcmllbnRhdGlvbi5nZXQoKSA6IDA7CiB9CkBAIC02NSw3ICs2NSw3IEBAIERldmljZU9yaWVu
dGF0aW9uKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKICAgICBzZWxm
ID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAg
ICBtX2ludGVybmFsID0gW1tXZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsIGFsbG9jXSBpbml0
V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjpEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKGNhblBy
b3ZpZGVBbHBoYSwgYWxwaGEsIGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEs
IGdhbW1hKV07CisgICAgbV9pbnRlcm5hbCA9IFtbV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5h
bCBhbGxvY10gaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246RGV2aWNlT3JpZW50YXRpb25E
YXRhOjpjcmVhdGUoY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEs
IGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbkludGVy
bmFsLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50
ZXJuYWwuaAppbmRleCBiN2M2YWE1M2I0YmEzZTI4ZmEzYzJkM2NkNjRkZDg2MTExY2I4NTFjLi41
ZGVkZDA4MGM3NmY0NDg1NDkyOTkyZjk0NzdhOGVjYmE0MWRlZTllIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwu
aApAQCAtMjUsMjEgKzI1LDIxIEBACiAKICNpbXBvcnQgIldlYkRldmljZU9yaWVudGF0aW9uLmgi
CiAKLSNpbXBvcnQgPFdlYkNvcmUvRGV2aWNlT3JpZW50YXRpb24uaD4KKyNpbXBvcnQgPFdlYkNv
cmUvRGV2aWNlT3JpZW50YXRpb25EYXRhLmg+CiAjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CiAKIEBp
bnRlcmZhY2UgV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbCA6IE5TT2JqZWN0IHsKIEBwdWJs
aWMKLSAgICBSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+IG1fb3JpZW50YXRpb247
CisgICAgUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlv
bjsKIH0KIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8
V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbjsKKy0gKGlk
KWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uRGF0YT4pY29yZURldmljZU9yaWVudGF0aW9uOwogQGVuZAogCiBAaW50ZXJm
YWNlIFdlYkRldmljZU9yaWVudGF0aW9uIChJbnRlcm5hbCkKIAotLSAoaWQpaW5pdFdpdGhDb3Jl
RGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+
KWNvcmVEZXZpY2VPcmllbnRhdGlvbjsKKy0gKGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0
aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4pY29yZURldmlj
ZU9yaWVudGF0aW9uOwogCiBAZW5kCiAKLVdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uKiBjb3Jl
KFdlYkRldmljZU9yaWVudGF0aW9uKik7CitXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEq
IGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwIGIvU291cmNlL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKaW5kZXgg
ZTcwYmYwMDRhNDkxMjZmNDRiZDE0NzVkZDQ4MmNhODI3MjVkZGZlZS4uNTg0MDE5OWU2NmU1NDg1
YjM3NTRiMTA5MzNhMTgyNWE3ZWJkMGZlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKQEAgLTMz
LDkgKzMzLDkgQEAKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogI2luY2x1ZGUgIkNvbnRleHRN
ZW51Q2xpZW50UXQuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUNvbnRyb2xsZXIuaCIKLSNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xp
ZW50TW9jay5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgorI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVy
LmgiCiAjaW5jbHVkZSAiRWRpdG9yLmgiCiAjaW5jbHVkZSAiRWRpdG9yQ2xpZW50UXQuaCIKQEAg
LTc3OSw3ICs3NzksNyBAQCB2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRNb2NrRGV2
aWNlT3JpZW50YXRpb24oUVdlYlBhZ2UqIHBhZ2UsIGJvb2wgY2FuUAogI2lmIEVOQUJMRShERVZJ
Q0VfT1JJRU5UQVRJT04pCiAgICAgUGFnZSogY29yZVBhZ2UgPSBRV2ViUGFnZVByaXZhdGU6OmNv
cmUocGFnZSk7CiAgICAgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrKiBtb2NrQ2xpZW50ID0g
dG9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2soRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
Ojpmcm9tKGNvcmVQYWdlKS0+Y2xpZW50KCkpOwotICAgIG1vY2tDbGllbnQtPnNldE9yaWVudGF0
aW9uKERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2Fu
UHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEpKTsKKyAgICBtb2NrQ2xp
ZW50LT5zZXRPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShjYW5Qcm92
aWRlQWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBn
YW1tYSkpOwogI2VuZGlmCiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146841</attachid>
            <date>2012-06-11 06:07:00 -0700</date>
            <delta_ts>2012-06-11 08:58:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88663-20120611140659.patch</filename>
            <type>text/plain</type>
            <size>69665</size>
            <attacher name="Amy Ousterhout">aousterh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5ODE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGFlMzY5ZWZiODM1NjQ5
NzZmYjAwNDU4NDc2ZTkzYWIyMWMxY2FmYS4uYTkxZDQ3MmE1OTQzY2UyMjlmNTExODA3NjA1YTQ4
YTQyNmVjNzkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcwIEBACisyMDEyLTA2LTA4ICBBbXkg
T3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERl
dmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlz
IGlzIHNpbXBseSBhIG5hbWUgY2hhbmdlLgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50
YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhIGluIG9yZGVyIHRvIGJlIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICBVZGF0ZWQgYWxsIGZpbGVzIHRoYXQgdXNl
IERldmljZU9yaWVudGF0aW9uLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAg
ICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAgICAq
IFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkpTRGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9u
RXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9u
RXZlbnRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhEZXZpY2VPcmllbnRhdGlvbkV2
ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudENhbGxiYWNrKToKKyAgICAgICAgKiBkb20v
RE9NQWxsSW5PbmUuY3BwOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5o
OgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudCk6
CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZp
Y2VPcmllbnRhdGlvbik6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwOiBSZW5hbWVk
IGZyb20gU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcC4KKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmll
bnRhdGlvbkRhdGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjph
bHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmJldGEpOgor
ICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpnYW1tYSk6CisgICAgICAg
IChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmFic29sdXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUFscGhhKToKKyAgICAgICAg
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUJldGEpOgorICAgICAg
ICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlR2FtbWEpOgorICAg
ICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUp
OgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oLgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkRhdGEpOgorICAgICAgICAqIGRvbS9EZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAq
IGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRXZlbnQ6Om9yaWVudGF0aW9uKToKKyAgICAgICAgKiBsb2FkZXIvRW1wdHlDbGllbnRzLmg6
CisgICAgICAgIChXZWJDb3JlOjpFbXB0eURldmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3Jp
ZW50YXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGll
bnRNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
azo6c2V0T3JpZW50YXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50
YXRpb25DbGllbnRNb2NrLmg6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2s6Omxhc3RPcmllbnRhdGlvbik6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2spOgorICAgICAgICAqIHBsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50
UXQuaDoKKyAgICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50UXQpOgorICAgICAgICAqIHBs
YXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oOgorICAgICAgICAoRGV2aWNl
T3JpZW50YXRpb25Qcm92aWRlclF0KToKKwogMjAxMi0wNi0wOCAgS2VudGFybyBIYXJhICA8aGFy
YWtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUkVHUkVTU0lPTiByMTE5ODAyOiBSZW1vdmUg
dW5uZWNlc3NhcnkgQVNTRVJUKCFtX2RlbGV0aW9uSGFzQmVndW4pIGZyb20gRG9jdW1lbnQuaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggOTk5ZTlhYTAwY2Y2ZGE0NzFmMWU2ODY2
NzFiZmE1NTgwYzI0YWJmOS4uMGZhMThkNzIxYTY1MWM1OWE0MDBjMTA5ODY4MDVjZTkxYzc3OWE1
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTIt
MDYtMDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMg
dG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmlj
ZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlv
bkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisKKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaDoKKyAgICAgICAg
KERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeSk6CisKIDIwMTItMDYtMDcgIENyeXN0
YWwgWmhhbmcgIDxoYWl6aGFuZ0ByaW0uY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5XSBTaG91
bGQgVXNlIHRoZSBXZWJQYWdlIEFscmVhZHkgQ3JlYXRlZCBieSBDbGllbnQsIE5vIE5lZWQgdG8g
Q3JlYXRlIE5ldyBPbmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDFlN2ExOWRkODAz
Nzc3NmZjNTc5YjZiNzdjZWMyMTM1ZDRiMDQzOWUuLmUyZjRkZjY0ZjZhYjg2OWI4M2ZjZDU1NWQ4
N2RjMGZjODY5NmVmYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTItMDYtMDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25E
YXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2
MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0
ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFk
IG9mIERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VP
cmllbnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAg
IAorICAgICAgICAqIHB1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oOgorICAgICAgICAoV2Vi
RGV2aWNlT3JpZW50YXRpb24pOgorICAgICAgICAqIHNyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6RGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94
eTo6bGFzdE9yaWVudGF0aW9uKToKKyAgICAgICAgKiBzcmMvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRQcm94eS5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eSk6CisgICAg
ICAgICogc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
RGV2aWNlT3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uRGF0YT4pOgorICAgICAgICAqIHNyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKToKKwogMjAxMi0wNi0wOCAgUGV0ZXIgQmV2
ZXJsb28gIDxwZXRlckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBSZS1lbmFi
bGUgU0hBUkVEX1dPUktFUlMgZm9yIEFuZHJvaWQgdW50aWwgYSBidWlsZCBmaXggaGFzIGJlZW4g
cmVzb2x2ZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggODk3MDEwZTBjZTMyMTE1NWRlYWJjMjY3MmI1
NjFiYzEwZTQzOWQxOC4uYzc3ZjIzNjQyNWZiODFmYzBkODkwNWZkZDk0NzYxYjRlOWNiODRiMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTA2LTA4ICBBbXkgT3VzdGVy
aG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERldmljZU9y
aWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGVkIGZpbGVzIHRvIHVzZSB0aGUgcmVuYW1l
ZCBEZXZpY2VPcmllbnRhdGlvbkRhdGEgaW5zdGVhZCBvZiBEZXZpY2VPcmllbnRhdGlvbi4KKyAg
ICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgRGV2aWNlT3JpZW50YXRpb25EYXRhIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICAKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRp
b25DbGllbnRFZmwpOgorCiAyMDEyLTA2LTA1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIHRhcmdldC1kZW5zaXR5ZHBpIGluIHRo
ZSB2aWV3cG9ydCBtZXRhIHRhZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCmluZGV4IDAwZGZlZmM2MWMwNmZjNzky
ZTFlNWEwYTU3ZmE3ZDZhOWY5ODEyYmQuLmYwMmJjZDgzODFhMzk2NjM4YTAyODZlZDIzY2RkM2M2
Y2IyNWU2MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNi0wOCAg
QW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1l
ZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2Ug
dGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50
YXRpb24uCisgICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBj
b25zaXN0ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGsuaDoKKyAgICAgICAgKERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50R3RrKToKKwogMjAxMi0wNi0wNyAgU2ltb24gUGVuYSAgPHNwZW5h
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gZGV2aWNlU2NhbGVGYWN0b3Igc2V0dGluZyBp
cyBub3QgaG9ub3JlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDhkNDQzMTIzYTZiYTAwNDlmNDdkYmVl
OTZlMTRjZmY1NzY3Nzk0NzkuLjVlMDNhM2U0MmMyZmUyNGU4MjlmNzg3MGRiZDkzMTA3NDNhMzc1
NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wNi0wOCAgQW15IE91
c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZp
Y2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJl
bmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24u
CisgICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBjb25zaXN0
ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICogV2ViVmlldy9X
ZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsLmg6CisKIDIwMTItMDYtMDcgIEtlbnRhcm8gSGFy
YSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlZHVjZSBOb2RlIG9iamVjdCBz
aXplIGZyb20gNzIgYnl0ZSB0byA2NCBieXRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDhiZTljZDM4OGFi
MTE4OGI3Y2FkYzI0YzkwY2U0Mjc4ZWMxYTcxODguLjhjNDBiMDg4YzRkNTkwYzQ3MjMxODIzZmY2
MzdkNTc2YjVhYTRjNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDYt
MDggIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
bmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8g
dXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9y
aWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRh
dGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcDoKKyAgICAgICAgKER1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRNb2NrRGV2aWNlT3JpZW50YXRpb24pOgorCiAyMDEy
LTA2LTA3ICBab2x0YW4gSG9ydmF0aCAgPHpvbHRhbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFtR
dF0gUXQgRFJUIHNob3VsZCBsb2FkIGV4dGVybmFsIHJlc291cmNlcyAtIGNsZWFudXAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggN2I5Nzc4MzQ2MzkxZTYwNDQ5MjlkYzQwZDI2MzU5OWFiNzBiOTNh
Ny4uYjY2ODE3MjA2ZjE5YTA2ZjVlMjgzMzRkOGY3NmExOGViMTM5NmZjYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTU2NSw4ICs1NjUsOCBAQCBTRVQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgZG9t
L0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCiAgICAgZG9tL0RldmljZU1vdGlvbkRhdGEuY3Bw
CiAgICAgZG9tL0RldmljZU1vdGlvbkV2ZW50LmNwcAotICAgIGRvbS9EZXZpY2VPcmllbnRhdGlv
bi5jcHAKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAorICAgIGRvbS9E
ZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQu
Y3BwCiAgICAgZG9tL0RvY3VtZW50LmNwcAogICAgIGRvbS9Eb2N1bWVudE1hcmtlckNvbnRyb2xs
ZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIv
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBhOWM3NWUyNjAzNzJkMGMz
YmFmMGNiMWYyOTJmZTUwODAzYTA1MDZmLi40ZDkwOWM4NmVkZGEyMWJhNjBkNzJjYzE2ZGNiMTkx
Y2RlNGY2YWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFt
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTE4MTksMTAgKzE4
MTksMTAgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb25DbGllbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNw
cCBcCisJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgXAorCVNv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBcCiAJU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb24uaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBcCiAJU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50RnJhZ21lbnQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnRGcmFnbWVudC5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IDE1M2YxMzljMzNlYjdiY2QwODNm
MmI0MmQxOGYzMjkxMWFmZDgyZGUuLjE3NjFhMTJjYjY5OTRhN2JjNjc5NzZjMzdiMGJmZjJkZmM3
NWNjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNl
L1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNTMzLDggKzUzMyw4IEBAIFNPVVJDRVMgKz0gXAogICAg
IGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcCBcCiAgICAgZG9tL0RldmljZU1vdGlvbkRh
dGEuY3BwIFwKICAgICBkb20vRGV2aWNlTW90aW9uRXZlbnQuY3BwIFwKLSAgICBkb20vRGV2aWNl
T3JpZW50YXRpb24uY3BwIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cCBcCisgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgXCAgICAKICAgICBkb20vRGV2
aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogICAgIGRvbS9Eb2N1bWVudC5jcHAgXAogICAgIGRv
bS9Eb2N1bWVudEV2ZW50UXVldWUuY3BwIFwKQEAgLTE3MDYsOSArMTcwNiw5IEBAIEhFQURFUlMg
Kz0gXAogICAgIGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmggXAogICAgIGRvbS9EZXZpY2VN
b3Rpb25EYXRhLmggXAogICAgIGRvbS9EZXZpY2VNb3Rpb25FdmVudC5oIFwKLSAgICBkb20vRGV2
aWNlT3JpZW50YXRpb24uaCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmggXAog
ICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCBcCisgICAgZG9tL0RldmljZU9y
aWVudGF0aW9uRGF0YS5oIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIFwKICAg
ICBkb20vRG9jdW1lbnQuaCBcCiAgICAgZG9tL0RvY3VtZW50RnJhZ21lbnQuaCBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUuZXhwLmluCmluZGV4IGRmMzdlMzdjOTI4MDUwYWIzMzMwZjlkZGViN2Q1ZmM5NTMxZWU5ZjUu
LjYwOWRkN2FmMWViNzZjMjIwZGUwMzIxODYyMmZkZjExZjM5NzljNzAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
ZXhwLmluCkBAIC01MzgsNyArNTM4LDcgQEAgX19aTjdXZWJDb3JlMTdDcmVkZW50aWFsU3RvcmFn
ZTI0Z2V0RnJvbVBlcnNpc3RlbnRTdG9yYWdlRVJLTlNfMTVQcm90ZWN0aW9uU3BhY2UKIF9fWk43
V2ViQ29yZTE3Q3JlZGVudGlhbFN0b3JhZ2UzZ2V0RVJLTlNfMTVQcm90ZWN0aW9uU3BhY2VFCiBf
X1pON1dlYkNvcmUxN0RPTUltcGxlbWVudGF0aW9uMTNpc1hNTE1JTUVUeXBlRVJLTjNXVEY2U3Ry
aW5nRQogX19aTjdXZWJDb3JlMTdET01JbXBsZW1lbnRhdGlvbjE0aXNUZXh0TUlNRVR5cGVFUktO
M1dURjZTdHJpbmdFCi1fX1pON1dlYkNvcmUxN0RldmljZU9yaWVudGF0aW9uNmNyZWF0ZUViZGJk
YmRiYgorX19aTjdXZWJDb3JlMTdEZXZpY2VPcmllbnRhdGlvbkRhdGE2Y3JlYXRlRWJkYmRiZGJi
CiBfX1pON1dlYkNvcmUxN0dseXBoUGFnZVRyZWVOb2RlMTh0cmVlR2x5cGhQYWdlQ291bnRFdgog
X19aTjdXZWJDb3JlMTdIaXN0b3J5Q29udHJvbGxlcjI2c2F2ZURvY3VtZW50QW5kU2Nyb2xsU3Rh
dGVFdgogX19aTjdXZWJDb3JlMTdIaXN0b3J5Q29udHJvbGxlcjMzcmVzdG9yZVNjcm9sbFBvc2l0
aW9uQW5kVmlld1N0YXRlRXYKQEAgLTcxNCw3ICs3MTQsNyBAQCBfX1pON1dlYkNvcmUyNnN0b3BP
YnNlcnZpbmdDb29raWVDaGFuZ2VzRXYKIF9fWk43V2ViQ29yZTI2dXNlc1Rlc3RNb2RlRm9jdXNS
aW5nQ29sb3JFdgogX19aTjdXZWJDb3JlMjdBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2VDMkV2
CiBfX1pON1dlYkNvcmUyN0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbkMxRU4zV1RGMTBQYXNz
UmVmUHRySU5TXzROb2RlRUVFYlJLTlMxXzZTdHJpbmdFCi1fX1pON1dlYkNvcmUyN0RldmljZU9y
aWVudGF0aW9uQ2xpZW50TW9jazE0c2V0T3JpZW50YXRpb25FTjNXVEYxMFBhc3NSZWZQdHJJTlNf
MTdEZXZpY2VPcmllbnRhdGlvbkVFRQorX19aTjdXZWJDb3JlMjdEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2sxNHNldE9yaWVudGF0aW9uRU4zV1RGMTBQYXNzUmVmUHRySU5TXzE3RGV2aWNlT3Jp
ZW50YXRpb25EYXRhRUVFCiBfX1pON1dlYkNvcmUyN0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
a0MxRXYKIF9fWk43V2ViQ29yZTI3YXBwbGljYXRpb25Jc0Fkb2JlSW5zdGFsbGVyRXYKIF9fWk43
V2ViQ29yZTI3YXBwbGljYXRpb25Jc01pY3Jvc29mdE15RGF5RXYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRl
eCBiM2U2NjI3ZWNkMjQ0ZjRkN2M3Mzc0ZTJjNGQ2ODc0ODc1YTM0NDlmLi4xOGE3MzFmNTI5N2Rh
MzI3M2I1YzcyNzAyN2E0MGQxZjk3N2MxMmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC02MTgsOCAr
NjE4LDggQEAKICAgICAgICAgICAgICdkb20vQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIuaCcs
CiAgICAgICAgICAgICAnZG9tL0RPTUltcGxlbWVudGF0aW9uLmgnLAogICAgICAgICAgICAgJ2Rv
bS9ET01UaW1lU3RhbXAuaCcsCi0gICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uLmgn
LAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oJywKKyAgICAgICAg
ICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1
bWVudC5oJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnRGcmFnbWVudC5oJywKICAgICAgICAg
ICAgICdkb20vRG9jdW1lbnRNYXJrZXIuaCcsCkBAIC01MjU1LDkgKzUyNTUsOSBAQAogICAgICAg
ICAgICAgJ2RvbS9EZXZpY2VNb3Rpb25EYXRhLmgnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VN
b3Rpb25FdmVudC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VNb3Rpb25FdmVudC5oJywK
LSAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb24uY3BwJywKICAgICAgICAgICAgICdk
b20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCcsCiAgICAgICAgICAgICAnZG9tL0Rl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oJywKKyAgICAgICAgICAgICdkb20vRGV2aWNlT3Jp
ZW50YXRpb25EYXRhLmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZl
bnQuY3BwJywKICAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oJywKICAg
ICAgICAgICAgICdkb20vRG9jdW1lbnQuY3BwJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggYjE2YTk2MmUwZWIyMGRlMDc2NzMwMTNmODA4MDc4
YjZjZjc2YzA3Yy4uNTQwNDJjMjM1ZDJiNWViNDBhMWIwNTUxMTZhNWYzNzhiNGY5NjhjZSAxMDA3
NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTQ5MTI3
LDcgKzQ5MTI3LDExIEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbi5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIu
Llxkb21cRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKwkJCQk+CisJCQk8L0ZpbGU+CisJCQk8
RmlsZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5jcHAiCiAJCQkJPgogCQkJCTxGaWxlQ29uZmlndXJhdGlvbgogCQkJCQlOYW1lPSJEZWJ1Z3xX
aW4zMiIKQEAgLTQ5MTc5LDE1ICs0OTE4MywxMSBAQAogCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9y
aWVudGF0aW9uLmgiCi0JCQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBh
dGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorCQkJCVJlbGF0aXZlUGF0aD0i
Li5cZG9tXERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogCQkJCT4KIAkJCTwvRmlsZT4K
IAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyLmNwcCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkRh
dGEuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KIAkJCQkJTmFtZT0iRGVidWd8
V2luMzIiCkBAIC00OTIzOSw5ICs0OTIzOSw5IEBACiAJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4K
IAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmgiCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3Jp
ZW50YXRpb25EYXRhLmgiCiAJCQkJPgotCQkJPC9GaWxlPgorCQkJPC9GaWxlPgkKIAkJCTxGaWxl
CiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAiCiAJ
CQkJPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IGIxZDBjZmJmZDE4ZGQ2Yzc3NzEzODEyZjI2ZTAxN2Y1M2M5YjRiNWQuLjYxMmM4
ZjNiNmM0Njc0OGU4NmJiNmVhMTc5YzJkODQ0M2ViMWI2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1OTksNyArMTU5OSw3
IEBACiAJCTU3Q0Y0Qzg3MTRGNzU5N0EwMEVDRkYxNCAvKiBFbGVtZW50U2hhZG93LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0NGNEM4NTE0Rjc1OTdB
MDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRvdy5oICovOyB9OwogCQk1OTA1QURCRjEzMDJGM0NFMDBG
MTE2REYgLyogWE1MVHJlZVZpZXdlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1OTA1QURCRDEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdl
ci5jcHAgKi87IH07CiAJCTU5MDVBREMwMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2Vy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTA1QURC
RTEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5oICovOyB9OwotCQk1OTBFMUI0OTEx
RTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBE
ZXZpY2VPcmllbnRhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTU5MEUxQjQ5MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlv
bkRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5
MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk1OTBFMUI0QjExRTRF
RjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MEUxQjRBMTFFNEVGNzAw
MDY5Rjc4NCAvKiBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwICovOyB9OwogCQk1
OTEwMkZCQjE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MTAyRkI5MTQzMjdEM0Iw
MDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuY3BwICovOyB9OwogCQk1OTEwMkZCQzE0MzI3
RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTEwMkZCQTE0MzI3RDNCMDAzQzlEMDQgLyogQ29u
dGVudFNlYXJjaFV0aWxzLmggKi87IH07CkBAIC0xNjM1LDcgKzE2MzUsNyBAQAogCQk1OUMyN0Yw
NzEzOEQyOENGMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QzI3RjA2MTM4RDI4Q0YwMDc5QjdF
MiAvKiBOZXR3b3JrUmVzb3VyY2VzRGF0YS5oICovOyB9OwogCQk1OUMyODA0NTEzOERDMjQxMDA3
OUI3RTIgLyogWE1MRXJyb3JzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU5QzI4MDQzMTM4REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuY3BwICov
OyB9OwogCQk1OUMyODA0NjEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUMyODA0NDEzOERDMjQxMDA3
OUI3RTIgLyogWE1MRXJyb3JzLmggKi87IH07Ci0JCTU5RDFDMTA0MTFFQjVEQ0YwMEI2MzhDOCAv
KiBEZXZpY2VPcmllbnRhdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRp
b24uY3BwICovOyB9OworCQk1OUQxQzEwNDExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50
YXRpb25EYXRhLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3Bw
ICovOyB9OwogCQk1OURFNzkwNDEzRjE2QzdGMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OURFNzkwMzEz
RjE2QzdGMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5jcHAgKi87IH07CiAJCTU5REU3OTA2MTNG
MTZDOEMwMDA3RkNERiAvKiBKYXZhTWV0aG9kSlNDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OURFNzkwNTEzRjE2QzhDMDAwN0ZDREYgLyogSmF2YU1l
dGhvZEpTQy5oICovOyB9OwogCQk1OUU1NjBBNzExMDUzMzY2MDBBQTEyNTggLyogSmF2YUNsYXNz
SlNDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUU1
NjBBNjExMDUzMzY2MDBBQTEyNTggLyogSmF2YUNsYXNzSlNDLmggKi87IH07CkBAIC04NjQ2LDcg
Kzg2NDYsNyBAQAogCQk1N0NGNEM4NTE0Rjc1OTdBMDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRvdy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50U2hhZG93Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5MDVBREJEMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxU
cmVlVmlld2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTFRy
ZWVWaWV3ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTA1QURCRTEzMDJG
M0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBYTUxUcmVlVmlld2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTU5
MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50
YXRpb25EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZU9yaWVu
dGF0aW9uRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTBFMUI0QTExRTRF
RjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1
c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5MTAyRkI5MTQzMjdEM0Iw
MDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ29udGVudFNlYXJjaFV0aWxzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTkxMDJGQkExNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGls
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50U2VhcmNoVXRpbHMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTg2ODUsNyArODY4NSw3IEBACiAJCTU5
QzI3RjA2MTM4RDI4Q0YwMDc5QjdFMiAvKiBOZXR3b3JrUmVzb3VyY2VzRGF0YS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VzRGF0YS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1OUMyODA0MzEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJy
b3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTEVycm9ycy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5QzI4MDQ0MTM4REMyNDEwMDc5QjdF
MiAvKiBYTUxFcnJvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MRXJy
b3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTU5RDFDMTAzMTFFQjVEQ0YwMEI2
MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlT3JpZW50YXRp
b25EYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlERTc5MDMxM0YxNkM3
RjAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gSmF2YU1ldGhvZEpTQy5jcHA7IHBhdGggPSBqc2MvSmF2YU1ldGhvZEpTQy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5REU3OTA1MTNGMTZDOEMwMDA3RkNE
RiAvKiBKYXZhTWV0aG9kSlNDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEph
dmFNZXRob2RKU0MuaDsgcGF0aCA9IGpzYy9KYXZhTWV0aG9kSlNDLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTU5RTU2MEE2MTEwNTMzNjYwMEFBMTI1OCAvKiBKYXZhQ2xhc3NKU0Mu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSmF2YUNsYXNzSlNDLmg7IHBhdGgg
PSBqc2MvSmF2YUNsYXNzSlNDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMTE2
NiwxMSArMjExNjYsMTEgQEAKIAkJCQkzMUZCMUE1NDEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNl
TW90aW9uRXZlbnQuY3BwICovLAogCQkJCTMxRkIxQTU1MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZp
Y2VNb3Rpb25FdmVudC5oICovLAogCQkJCTMxRkIxQTU2MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZp
Y2VNb3Rpb25FdmVudC5pZGwgKi8sCi0JCQkJNTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERl
dmljZU9yaWVudGF0aW9uLmNwcCAqLywKLQkJCQk1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyog
RGV2aWNlT3JpZW50YXRpb24uaCAqLywKIAkJCQk1OUE4RjFENzExQTY5NTIwMDAxQUMzNEEgLyog
RGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCAqLywKIAkJCQk1OUE4RjFEMzExQTY5NTA4MDAxQUMz
NEEgLyogRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCAqLywKIAkJCQk1OUE4RjFENTEx
QTY5NTEzMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggKi8sCisJCQkJ
NTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgKi8s
CisJCQkJNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5o
ICovLAogCQkJCTU5QTg1RUExMTE5RDY4RDkwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2
ZW50LmNwcCAqLywKIAkJCQk1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50
YXRpb25FdmVudC5oICovLAogCQkJCTU5QTg1RUFBMTE5RDdCNkUwMERFRjFFRiAvKiBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmlkbCAqLywKQEAgLTIyMTMwLDEwICsyMjEzMCwxMCBAQAogCQkJCTMx
RkIxQTU5MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25Db250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkzMUZCMUE1QjEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFGQjFBNUQxMjBBNUQwNjAwREMwMkEwIC8qIERldmlj
ZU1vdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3
ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTU5QThGMUQ4MTFB
Njk1MjAwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTkzMDlBMTMxMUY0QUU2QTAwMjUwNjAzIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50
TW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTlBOEYxRDYxMUE2OTUxMzAwMUFDMzRBIC8qIERl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTkwRTFCNDkx
MUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTlBODVFQTQxMTlENjhFQzAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCUNFQ0FERkM3MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRp
b25BbHRlcm5hdGl2ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0VDQURGQzkxNTM3NzhGRjAwRTM3
MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLApAQCAtMjU2MjQsOSArMjU2
MjQsOSBAQAogCQkJCTMxRkIxQTU4MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25Db250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxRkIxQTVBMTIwQTVEMDYwMERDMDJBMCAv
KiBEZXZpY2VNb3Rpb25EYXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxRkIxQTVDMTIwQTVE
MDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1
OUQxQzEwNDExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24uY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNTkzMDlBMTExMUY0QUU1ODAwMjUwNjAzIC8qIERldmljZU9yaWVudGF0aW9u
Q2xpZW50TW9jay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1OUE4RjFENDExQTY5NTA4MDAxQUMz
NEEgLyogRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTU5RDFDMTA0MTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNTlBODVFQTIxMTlENjhEOTAwREVGMUVGIC8qIERldmljZU9yaWVu
dGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0VDQURGQzYxNTM3NzhGRjAwRTM3
MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0aXZlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNFQ0FE
RkM4MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25Db21tYW5kLmNwcCBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2aWNl
T3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKaW5kZXggZWM3ODcxZDUxMTI2ZmVkMmVjZTE3NjVl
N2U1ZWVmYTRiNmNkZjY3Yi4uNWEwZmY3ZDczNTgxNTg4OTYzZmYyODk1YzU1ZTI3YmU0MGJmNDI5
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Rl
dmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCkBAIC0yOSw3ICsyOSw3IEBACiAKICNpbmNs
dWRlICJKU0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAi
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwpAQCAtODMs
NyArODMsNyBAQCBKU1ZhbHVlIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9y
aWVudGF0aW9uRXZlbnQoRXhlY1N0YXRlKiBleGVjKQogICAgIGRvdWJsZSBnYW1tYSA9IGV4ZWMt
PmFyZ3VtZW50KDUpLnRvTnVtYmVyKGV4ZWMpOwogICAgIGJvb2wgYWJzb2x1dGVQcm92aWRlZCA9
ICFleGVjLT5hcmd1bWVudCg1KS5pc1VuZGVmaW5lZE9yTnVsbCgpOwogICAgIGJvb2wgYWJzb2x1
dGUgPSBleGVjLT5hcmd1bWVudCg2KS50b0Jvb2xlYW4oKTsKLSAgICBSZWZQdHI8RGV2aWNlT3Jp
ZW50YXRpb24+IG9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZShhbHBoYVBy
b3ZpZGVkLCBhbHBoYSwgYmV0YVByb3ZpZGVkLCBiZXRhLCBnYW1tYVByb3ZpZGVkLCBnYW1tYSwg
YWJzb2x1dGVQcm92aWRlZCwgYWJzb2x1dGUpOworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlv
bkRhdGE+IG9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoYWxwaGFQ
cm92aWRlZCwgYWxwaGEsIGJldGFQcm92aWRlZCwgYmV0YSwgZ2FtbWFQcm92aWRlZCwgZ2FtbWEs
IGFic29sdXRlUHJvdmlkZWQsIGFic29sdXRlKTsKICAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
KiBpbXAgPSBzdGF0aWNfY2FzdDxEZXZpY2VPcmllbnRhdGlvbkV2ZW50Kj4oaW1wbCgpKTsKICAg
ICBpbXAtPmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KHR5cGUsIGJ1YmJsZXMsIGNhbmNlbGFi
bGUsIG9yaWVudGF0aW9uLmdldCgpKTsKICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0
aW9uRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4
RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKaW5kZXggZmMzZmMyMDI2ZDEwNTI1Y2Vh
Y2RlMDRhNjRhMTZlYTFkYzA0ZTFiNi4uYmJkYzNmY2U4YWE2N2JjODkyMjcyMzIyMjRmMDM1NWE2
NTU3ZjJlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4
RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKQEAgLTI4
LDcgKzI4LDcgQEAKIAogI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCiAKLSNpbmNsdWRl
ICJEZXZpY2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5o
IgogI2luY2x1ZGUgIlY4QmluZGluZy5oIgogI2luY2x1ZGUgIlY4QmluZGluZ01hY3Jvcy5oIgog
I2luY2x1ZGUgIlY4UHJveHkuaCIKQEAgLTkzLDcgKzkzLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IFY4RGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnRD
YWxsYmEKICAgICBkb3VibGUgZ2FtbWEgPSBhcmdzWzVdLT5OdW1iZXJWYWx1ZSgpOwogICAgIGJv
b2wgYWJzb2x1dGVQcm92aWRlZCA9ICFpc1VuZGVmaW5lZE9yTnVsbChhcmdzWzZdKTsKICAgICBi
b29sIGFic29sdXRlID0gYXJnc1s2XS0+Qm9vbGVhblZhbHVlKCk7Ci0gICAgUmVmUHRyPERldmlj
ZU9yaWVudGF0aW9uPiBvcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoYWxw
aGFQcm92aWRlZCwgYWxwaGEsIGJldGFQcm92aWRlZCwgYmV0YSwgZ2FtbWFQcm92aWRlZCwgZ2Ft
bWEsIGFic29sdXRlUHJvdmlkZWQsIGFic29sdXRlKTsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50
YXRpb25EYXRhPiBvcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGFs
cGhhUHJvdmlkZWQsIGFscGhhLCBiZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1hUHJvdmlkZWQsIGdh
bW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNvbHV0ZSk7CiAgICAgaW1wLT5pbml0RGV2aWNlT3Jp
ZW50YXRpb25FdmVudCh0eXBlLCBidWJibGVzLCBjYW5jZWxhYmxlLCBvcmllbnRhdGlvbi5nZXQo
KSk7CiAgICAgcmV0dXJuIHY4OjpIYW5kbGU8djg6OlZhbHVlPigpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL0RPTUFsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
T01BbGxJbk9uZS5jcHAKaW5kZXggMzIwYWVmOTgyMDlhNWViODRhN2U3NTI4ZmNiM2I1NjQ5Njg1
ODc3OC4uZjZhOWU5NGM2OWJlMzljNThhYzJiNjYzOGEyZWI3YzNiZjBhMzRlMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RPTUFsbEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRE9NQWxsSW5PbmUuY3BwCkBAIC01NCw4ICs1NCw4IEBACiAjaW5jbHVkZSAiRGV2aWNl
TW90aW9uQ29udHJvbGxlci5jcHAiCiAjaW5jbHVkZSAiRGV2aWNlTW90aW9uRGF0YS5jcHAiCiAj
aW5jbHVkZSAiRGV2aWNlTW90aW9uRXZlbnQuY3BwIgotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0
aW9uLmNwcCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIgorI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5jcHAiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25FdmVudC5jcHAiCiAjaW5jbHVkZSAiRG9jdW1lbnQuY3BwIgogI2luY2x1ZGUgIkRvY3Vt
ZW50RXZlbnRRdWV1ZS5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNw
cApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWE4YzI1N2NhNzQxOTdjZTdiM2I4Mjg4
NjhhZjYzNDEzNzg1ZDRjNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb24uY3BwCisrKyAvZGV2
L251bGwKQEAgLTEsMTA2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKLSAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAot
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0j
aW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1Q
YXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKCkK
LXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uKTsKLX0KLQotUGFz
c1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZShib29s
IGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3Vi
bGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92
aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBE
ZXZpY2VPcmllbnRhdGlvbihjYW5Qcm92aWRlQWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0YSwg
YmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1tYSwgY2FuUHJvdmlkZUFic29sdXRlLCBhYnNvbHV0
ZSkpOwotfQotCi0KLURldmljZU9yaWVudGF0aW9uOjpEZXZpY2VPcmllbnRhdGlvbigpCi0gICAg
OiBtX2NhblByb3ZpZGVBbHBoYShmYWxzZSkKLSAgICAsIG1fY2FuUHJvdmlkZUJldGEoZmFsc2Up
Ci0gICAgLCBtX2NhblByb3ZpZGVHYW1tYShmYWxzZSkKLSAgICAsIG1fY2FuUHJvdmlkZUFic29s
dXRlKGZhbHNlKQotICAgICwgbV9hbHBoYSgwKQotICAgICwgbV9iZXRhKDApCi0gICAgLCBtX2dh
bW1hKDApCi0gICAgLCBtX2Fic29sdXRlKGZhbHNlKQotewotfQotCi1EZXZpY2VPcmllbnRhdGlv
bjo6RGV2aWNlT3JpZW50YXRpb24oYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwg
Ym9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBk
b3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKQotICAg
IDogbV9jYW5Qcm92aWRlQWxwaGEoY2FuUHJvdmlkZUFscGhhKQotICAgICwgbV9jYW5Qcm92aWRl
QmV0YShjYW5Qcm92aWRlQmV0YSkKLSAgICAsIG1fY2FuUHJvdmlkZUdhbW1hKGNhblByb3ZpZGVH
YW1tYSkKLSAgICAsIG1fY2FuUHJvdmlkZUFic29sdXRlKGNhblByb3ZpZGVBYnNvbHV0ZSkKLSAg
ICAsIG1fYWxwaGEoYWxwaGEpCi0gICAgLCBtX2JldGEoYmV0YSkKLSAgICAsIG1fZ2FtbWEoZ2Ft
bWEpCi0gICAgLCBtX2Fic29sdXRlKGFic29sdXRlKQotewotfQotCi1kb3VibGUgRGV2aWNlT3Jp
ZW50YXRpb246OmFscGhhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9hbHBoYTsKLX0KLQotZG91
YmxlIERldmljZU9yaWVudGF0aW9uOjpiZXRhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9iZXRh
OwotfQotCi1kb3VibGUgRGV2aWNlT3JpZW50YXRpb246OmdhbW1hKCkgY29uc3QKLXsKLSAgICBy
ZXR1cm4gbV9nYW1tYTsKLX0KLQotYm9vbCBEZXZpY2VPcmllbnRhdGlvbjo6YWJzb2x1dGUoKSBj
b25zdAotewotICAgIHJldHVybiBtX2Fic29sdXRlOwotfQotCi1ib29sIERldmljZU9yaWVudGF0
aW9uOjpjYW5Qcm92aWRlQWxwaGEoKSBjb25zdAotewotICAgIHJldHVybiBtX2NhblByb3ZpZGVB
bHBoYTsKLX0KLQotYm9vbCBEZXZpY2VPcmllbnRhdGlvbjo6Y2FuUHJvdmlkZUJldGEoKSBjb25z
dAotewotICAgIHJldHVybiBtX2NhblByb3ZpZGVCZXRhOwotfQotCi1ib29sIERldmljZU9yaWVu
dGF0aW9uOjpjYW5Qcm92aWRlR2FtbWEoKSBjb25zdAotewotICAgIHJldHVybiBtX2NhblByb3Zp
ZGVHYW1tYTsKLX0KLQotYm9vbCBEZXZpY2VPcmllbnRhdGlvbjo6Y2FuUHJvdmlkZUFic29sdXRl
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92aWRlQWJzb2x1dGU7Ci19Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmgKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM2NzdkNDMzMDg0MDIxNDdmYTYxYTM1OTUyZDRh
ZDg3M2FiZTc5MDYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw2NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbl9oCi0j
ZGVmaW5lIERldmljZU9yaWVudGF0aW9uX2gKLQotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+
Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1j
bGFzcyBEZXZpY2VPcmllbnRhdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPERldmljZU9yaWVudGF0
aW9uPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+
IGNyZWF0ZSgpOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBjcmVh
dGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0
YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wg
Y2FuUHJvdmlkZUFic29sdXRlID0gZmFsc2UsIGJvb2wgYWJzb2x1dGUgPSBmYWxzZSk7Ci0KLSAg
ICBkb3VibGUgYWxwaGEoKSBjb25zdDsKLSAgICBkb3VibGUgYmV0YSgpIGNvbnN0OwotICAgIGRv
dWJsZSBnYW1tYSgpIGNvbnN0OwotICAgIGJvb2wgYWJzb2x1dGUoKSBjb25zdDsKLSAgICBib29s
IGNhblByb3ZpZGVBbHBoYSgpIGNvbnN0OwotICAgIGJvb2wgY2FuUHJvdmlkZUJldGEoKSBjb25z
dDsKLSAgICBib29sIGNhblByb3ZpZGVHYW1tYSgpIGNvbnN0OwotICAgIGJvb2wgY2FuUHJvdmlk
ZUFic29sdXRlKCkgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgRGV2aWNlT3JpZW50YXRpb24oKTsK
LSAgICBEZXZpY2VPcmllbnRhdGlvbihib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhh
LCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEs
IGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpOwot
Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVBbHBoYTsKLSAgICBib29sIG1fY2FuUHJvdmlkZUJldGE7
Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVHYW1tYTsKLSAgICBib29sIG1fY2FuUHJvdmlkZUFic29s
dXRlOwotICAgIGRvdWJsZSBtX2FscGhhOwotICAgIGRvdWJsZSBtX2JldGE7Ci0gICAgZG91Ymxl
IG1fZ2FtbWE7Ci0gICAgYm9vbCBtX2Fic29sdXRlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRGV2aWNlT3JpZW50YXRpb25faApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaAppbmRleCAyYzE2YjBjZDhiYzdhNzg1MDkxNmY4
YmQwMWQ2NThmNWZmMDY5YzRiLi40MDQ5YzAzYTRhMTQ0YTc0NTIyOWEwNTQxMzgxY2Q1N2UxNGM2
NWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25DbGll
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaApA
QCAtMjgsMTggKzI4LDE3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRGV2aWNl
T3JpZW50YXRpb247CiBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI7CitjbGFzcyBE
ZXZpY2VPcmllbnRhdGlvbkRhdGE7CiBjbGFzcyBQYWdlOwogCiBjbGFzcyBEZXZpY2VPcmllbnRh
dGlvbkNsaWVudCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+RGV2aWNlT3JpZW50YXRpb25DbGll
bnQoKSB7fQotCiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyKikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKSA9IDA7Ci0gICAgdmlydHVhbCBEZXZp
Y2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwg
RGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpID0gMDsK
IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHAKaW5kZXggZWFlNmZiNTBhYjFiMGQzODEyN2FhYmMxNzg4YzE1ZGEyNTAxYjBlNS4u
ZmRmMjQ2NTNmYTMxYTdiMTAwMDc4YTAyNTg5MGM5MzA2ZGQ1MTJlYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKQEAgLTI2LDgg
KzI2LDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bkRhdGEuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTU2LDcgKzU2LDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXI6OnRpbWVyRmlyZWQoVGltZXI8RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyPioKICAg
ICBBU1NFUlRfVU5VU0VEKHRpbWVyLCB0aW1lciA9PSAmbV90aW1lcik7CiAgICAgQVNTRVJUKG1f
Y2xpZW50LT5sYXN0T3JpZW50YXRpb24oKSk7CiAKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRp
b24+IG9yaWVudGF0aW9uID0gbV9jbGllbnQtPmxhc3RPcmllbnRhdGlvbigpOworICAgIFJlZlB0
cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG9yaWVudGF0aW9uID0gbV9jbGllbnQtPmxhc3RPcmll
bnRhdGlvbigpOwogICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBldmVudCA9IERl
dmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlb3JpZW50YXRp
b25FdmVudCwgb3JpZW50YXRpb24uZ2V0KCkpOwogCiAgICAgVmVjdG9yPFJlZlB0cjxET01XaW5k
b3c+ID4gbGlzdGVuZXJzVmVjdG9yOwpAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93
KiB3aW5kb3cpCiAgICAgICAgIGFkZExpc3RlbmVyKHdpbmRvdyk7CiB9CiAKLXZvaWQgRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VP
cmllbnRhdGlvbiogb3JpZW50YXRpb24pCit2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmll
bnRhdGlvbikKIHsKICAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gZXZlbnQgPSBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRldmljZW9yaWVudGF0
aW9uRXZlbnQsIG9yaWVudGF0aW9uKTsKICAgICBWZWN0b3I8UmVmUHRyPERPTVdpbmRvdz4gPiBs
aXN0ZW5lcnNWZWN0b3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmgKaW5kZXggNzA3Y2Q1Y2I2ZGI1NDE0YmU1OTRhMDJlNDhhM2I2NTZhMTk4
OGQ4NC4uYzkyNzJhMmZiOWY1NzAyM2YwZmMyZjk3Yzc0M2IxZjhiODJkZDBjOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaApAQCAtMzQs
NyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERldmljZU9yaWVudGF0
aW9uOworY2xhc3MgRGV2aWNlT3JpZW50YXRpb25EYXRhOwogY2xhc3MgRGV2aWNlT3JpZW50YXRp
b25DbGllbnQ7CiAKIGNsYXNzIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciA6IHB1YmxpYyBT
dXBwbGVtZW50PFBhZ2U+IHsKQEAgLTUwLDcgKzUwLDcgQEAgcHVibGljOgogICAgIHZvaWQgc3Vz
cGVuZEV2ZW50c0ZvckFsbExpc3RlbmVycyhET01XaW5kb3cqKTsKICAgICB2b2lkIHJlc3VtZUV2
ZW50c0ZvckFsbExpc3RlbmVycyhET01XaW5kb3cqKTsKIAotICAgIHZvaWQgZGlkQ2hhbmdlRGV2
aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb24qKTsKKyAgICB2b2lkIGRpZENoYW5nZURl
dmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YSopOwogCiAgICAgYm9vbCBpc0Fj
dGl2ZSgpIHsgcmV0dXJuICFtX2xpc3RlbmVycy5pc0VtcHR5KCk7IH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZTczMDJmZDdm
OGJiYjUyODliN2Y2ZTZlNTU2MTU0OTE4YmY2YWE0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAKQEAgLTAsMCArMSwxMDYgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRp
b25EYXRhLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworUGFzc1JlZlB0cjxEZXZpY2VPcmll
bnRhdGlvbkRhdGE+IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKCkKK3sKKyAgICByZXR1
cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVudGF0aW9uRGF0YSk7Cit9CisKK1Bhc3NSZWZQdHI8
RGV2aWNlT3JpZW50YXRpb25EYXRhPiBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShib29s
IGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3Vi
bGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92
aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBE
ZXZpY2VPcmllbnRhdGlvbkRhdGEoY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJl
dGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEsIGNhblByb3ZpZGVBYnNvbHV0ZSwgYWJz
b2x1dGUpKTsKK30KKworCitEZXZpY2VPcmllbnRhdGlvbkRhdGE6OkRldmljZU9yaWVudGF0aW9u
RGF0YSgpCisgICAgOiBtX2NhblByb3ZpZGVBbHBoYShmYWxzZSkKKyAgICAsIG1fY2FuUHJvdmlk
ZUJldGEoZmFsc2UpCisgICAgLCBtX2NhblByb3ZpZGVHYW1tYShmYWxzZSkKKyAgICAsIG1fY2Fu
UHJvdmlkZUFic29sdXRlKGZhbHNlKQorICAgICwgbV9hbHBoYSgwKQorICAgICwgbV9iZXRhKDAp
CisgICAgLCBtX2dhbW1hKDApCisgICAgLCBtX2Fic29sdXRlKGZhbHNlKQoreworfQorCitEZXZp
Y2VPcmllbnRhdGlvbkRhdGE6OkRldmljZU9yaWVudGF0aW9uRGF0YShib29sIGNhblByb3ZpZGVB
bHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9v
bCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUs
IGJvb2wgYWJzb2x1dGUpCisgICAgOiBtX2NhblByb3ZpZGVBbHBoYShjYW5Qcm92aWRlQWxwaGEp
CisgICAgLCBtX2NhblByb3ZpZGVCZXRhKGNhblByb3ZpZGVCZXRhKQorICAgICwgbV9jYW5Qcm92
aWRlR2FtbWEoY2FuUHJvdmlkZUdhbW1hKQorICAgICwgbV9jYW5Qcm92aWRlQWJzb2x1dGUoY2Fu
UHJvdmlkZUFic29sdXRlKQorICAgICwgbV9hbHBoYShhbHBoYSkKKyAgICAsIG1fYmV0YShiZXRh
KQorICAgICwgbV9nYW1tYShnYW1tYSkKKyAgICAsIG1fYWJzb2x1dGUoYWJzb2x1dGUpCit7Cit9
CisKK2RvdWJsZSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmFscGhhKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9hbHBoYTsKK30KKworZG91YmxlIERldmljZU9yaWVudGF0aW9uRGF0YTo6YmV0YSgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYmV0YTsKK30KKworZG91YmxlIERldmljZU9yaWVudGF0
aW9uRGF0YTo6Z2FtbWEoKSBjb25zdAoreworICAgIHJldHVybiBtX2dhbW1hOworfQorCitib29s
IERldmljZU9yaWVudGF0aW9uRGF0YTo6YWJzb2x1dGUoKSBjb25zdAoreworICAgIHJldHVybiBt
X2Fic29sdXRlOworfQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUFs
cGhhKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jYW5Qcm92aWRlQWxwaGE7Cit9CisKK2Jvb2wg
RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlQmV0YSgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fY2FuUHJvdmlkZUJldGE7Cit9CisKK2Jvb2wgRGV2aWNlT3JpZW50YXRpb25EYXRhOjpj
YW5Qcm92aWRlR2FtbWEoKSBjb25zdAoreworICAgIHJldHVybiBtX2NhblByb3ZpZGVHYW1tYTsK
K30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNhblByb3ZpZGVBYnNvbHV0ZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fY2FuUHJvdmlkZUFic29sdXRlOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50
YXRpb25EYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMWRmOWI2NThmYWI4OWY4ZTFhNGU3YWFiZmQyZGM3ZTkzOWUwNjUwNwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEu
aApAQCAtMCwwICsxLDY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkRh
dGFfaAorI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbkRhdGFfaAorCisjaW5jbHVkZSA8d3RmL1Bh
c3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisKK2NsYXNzIERldmljZU9yaWVudGF0aW9uRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVk
PERldmljZU9yaWVudGF0aW9uRGF0YT4geworcHVibGljOgorICAgIHN0YXRpYyBQYXNzUmVmUHRy
PERldmljZU9yaWVudGF0aW9uRGF0YT4gY3JlYXRlKCk7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8
RGV2aWNlT3JpZW50YXRpb25EYXRhPiBjcmVhdGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJs
ZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlk
ZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlID0gZmFsc2UsIGJv
b2wgYWJzb2x1dGUgPSBmYWxzZSk7CisKKyAgICBkb3VibGUgYWxwaGEoKSBjb25zdDsKKyAgICBk
b3VibGUgYmV0YSgpIGNvbnN0OworICAgIGRvdWJsZSBnYW1tYSgpIGNvbnN0OworICAgIGJvb2wg
YWJzb2x1dGUoKSBjb25zdDsKKyAgICBib29sIGNhblByb3ZpZGVBbHBoYSgpIGNvbnN0OworICAg
IGJvb2wgY2FuUHJvdmlkZUJldGEoKSBjb25zdDsKKyAgICBib29sIGNhblByb3ZpZGVHYW1tYSgp
IGNvbnN0OworICAgIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlKCkgY29uc3Q7CisKK3ByaXZhdGU6
CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRhKCk7CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRh
KGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEs
IGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNh
blByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNvbHV0ZSk7CisKKyAgICBib29sIG1fY2FuUHJvdmlk
ZUFscGhhOworICAgIGJvb2wgbV9jYW5Qcm92aWRlQmV0YTsKKyAgICBib29sIG1fY2FuUHJvdmlk
ZUdhbW1hOworICAgIGJvb2wgbV9jYW5Qcm92aWRlQWJzb2x1dGU7CisgICAgZG91YmxlIG1fYWxw
aGE7CisgICAgZG91YmxlIG1fYmV0YTsKKyAgICBkb3VibGUgbV9nYW1tYTsKKyAgICBib29sIG1f
YWJzb2x1dGU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBEZXZp
Y2VPcmllbnRhdGlvbkRhdGFfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuY3BwCmluZGV4IDdkZWNjN2MwNjMyMTMyYjMyNjFmZDg0MDJlNWQ0MGM0NTFjODcz
NjcuLmJhYmM3N2U2YmZiMDIyYmU3NWY3MzJkZDM5M2M2NGY0NGUyNjMzNjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAKQEAgLTI2LDcgKzI2LDcg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50
LmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9y
aWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpAQCAtMzYsMTcgKzM2LDE3IEBAIERldmljZU9yaWVudGF0aW9uRXZlbnQ6On5EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50KCkKIH0KIAogRGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2aWNl
T3JpZW50YXRpb25FdmVudCgpCi0gICAgOiBtX29yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9u
OjpjcmVhdGUoKSkKKyAgICA6IG1fb3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb25EYXRhOjpj
cmVhdGUoKSkKIHsKIH0KIAotRGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRp
b25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb24q
IG9yaWVudGF0aW9uKQorRGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25F
dmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb25EYXRh
KiBvcmllbnRhdGlvbikKICAgICA6IEV2ZW50KGV2ZW50VHlwZSwgZmFsc2UsIGZhbHNlKSAvLyBD
YW4ndCBidWJibGUsIG5vdCBjYW5jZWxhYmxlCiAgICAgLCBtX29yaWVudGF0aW9uKG9yaWVudGF0
aW9uKQogewogfQogCi12b2lkIERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmll
bnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgYm9vbCBidWJibGVzLCBib29s
IGNhbmNlbGFibGUsIERldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKK3ZvaWQgRGV2aWNl
T3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWlj
U3RyaW5nJiB0eXBlLCBib29sIGJ1YmJsZXMsIGJvb2wgY2FuY2VsYWJsZSwgRGV2aWNlT3JpZW50
YXRpb25EYXRhKiBvcmllbnRhdGlvbikKIHsKICAgICBpZiAoZGlzcGF0Y2hlZCgpKQogICAgICAg
ICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b25FdmVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaApp
bmRleCBkOTU5ODQzMTJmYjE1MzBiYjBiYmRjM2EwNDQyZTE1NTdhYTFhY2Y5Li5lMTk2ZWE1Yjkz
ZTRjZjc0ODRiOTNjYjdlY2ZlZWFkYjdmYzQyM2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1jbGFzcyBEZXZpY2VPcmllbnRhdGlvbjsKK2NsYXNzIERldmljZU9yaWVudGF0
aW9uRGF0YTsKIAogY2xhc3MgRGV2aWNlT3JpZW50YXRpb25FdmVudCA6IHB1YmxpYyBFdmVudCB7
CiBwdWJsaWM6CkBAIC0zOSwyMiArMzksMjIgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KTsKICAgICB9Ci0gICAgc3Rh
dGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gY3JlYXRlKGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlLCBEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCisgICAg
c3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gY3JlYXRlKGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIG9yaWVudGF0aW9u
KQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkV2
ZW50KGV2ZW50VHlwZSwgb3JpZW50YXRpb24pKTsKICAgICB9CiAKLSAgICB2b2lkIGluaXREZXZp
Y2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgYm9vbCBidWJibGVz
LCBib29sIGNhbmNlbGFibGUsIERldmljZU9yaWVudGF0aW9uKik7CisgICAgdm9pZCBpbml0RGV2
aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxl
cywgYm9vbCBjYW5jZWxhYmxlLCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqKTsKIAotICAgIERldmlj
ZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fb3JpZW50YXRpb24u
Z2V0KCk7IH0KKyAgICBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIG9yaWVudGF0aW9uKCkgY29uc3Qg
eyByZXR1cm4gbV9vcmllbnRhdGlvbi5nZXQoKTsgfQogCiAgICAgdmlydHVhbCBjb25zdCBBdG9t
aWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdDsKIAogcHJpdmF0ZToKICAgICBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50KCk7Ci0gICAgRGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9t
aWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb24qKTsKKyAgICBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEZXZpY2VPcmllbnRh
dGlvbkRhdGEqKTsKIAotICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gbV9vcmllbnRhdGlv
bjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX29yaWVudGF0aW9uOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0VtcHR5Q2xpZW50cy5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5o
CmluZGV4IGJlY2NmODgwMTY2NmE3ZDBhOWRiNDNjNDcyZTllYWFkYmQwOGYyMGYuLmQ2Zjc5OGVm
NzcyNjlkMGU3MGNiODBmM2E1ZjRiOGJkNDZiMTcwNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1w
dHlDbGllbnRzLmgKQEAgLTU5MSw3ICs1OTEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKikgeyB9CiAgICAgdmly
dHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0
aW5nKCkgeyB9Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9u
KCkgY29uc3QgeyByZXR1cm4gMDsgfQorICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRh
KiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCB7IHJldHVybiAwOyB9CiAgICAgdmlydHVhbCB2b2lk
IGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpIHsgfQogfTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dE1vY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2suY3BwCmluZGV4IDJmYTVhY2JlZWZlYzhmYzM1NzRmYTEyMWNiZDE1ODhhZDBk
YTc2NmMuLmM3ZGI5MDk5ZWUyZDk0OTFhZDJhMzQyM2RkMzZjYTIzNmY2OTAxMGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRN
b2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0
aW9uQ2xpZW50TW9jay5jcHAKQEAgLTU1LDcgKzU1LDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2s6OnN0b3BVcGRhdGluZygpCiAgICAgbV90aW1lci5zdG9wKCk7CiB9CiAKLXZv
aWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrOjpzZXRPcmllbnRhdGlvbihQYXNzUmVmUHRy
PERldmljZU9yaWVudGF0aW9uPiBvcmllbnRhdGlvbikKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrOjpzZXRPcmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0
YT4gb3JpZW50YXRpb24pCiB7CiAgICAgbV9vcmllbnRhdGlvbiA9IG9yaWVudGF0aW9uOwogICAg
IGlmIChtX2lzVXBkYXRpbmcgJiYgIW1fdGltZXIuaXNBY3RpdmUoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9j
ay5oCmluZGV4IGJhYTQyNDU1YzI2ODljYzI4ZGIzNDg5MTMyMTE5OTQzMjdmNTI5ZGEuLmM0YTE4
NGFjMjJhNWRkNTJiMWFmNDkxNWY3MjgyYWM2ZWVkNDc2ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2su
aApAQCAtMjYsOCArMjYsOCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2tf
aAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2tfaAogCi0jaW5jbHVkZSAiRGV2
aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgor
I2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAK
ICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgpAQCAtNDgsMTUgKzQ4LDE1IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOwogICAgIHZpcnR1YWwgdm9p
ZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3Jp
ZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9CisgICAgdmly
dHVhbCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fb3JpZW50YXRpb24uZ2V0KCk7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCkgeyB9CiAKLSAgICB2b2lkIHNldE9yaWVudGF0aW9u
KFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+KTsKKyAgICB2b2lkIHNldE9yaWVudGF0aW9u
KFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPik7CiAKIHByaXZhdGU6CiAgICAgdm9p
ZCB0aW1lckZpcmVkKFRpbWVyPERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jaz4qKTsKIAotICAg
IFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gbV9vcmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2
aWNlT3JpZW50YXRpb25EYXRhPiBtX29yaWVudGF0aW9uOwogICAgIERldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlciogbV9jb250cm9sbGVyOwogICAgIFRpbWVyPERldmljZU9yaWVudGF0aW9uQ2xp
ZW50TW9jaz4gbV90aW1lcjsKICAgICBib29sIG1faXNVcGRhdGluZzsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5jcHAK
aW5kZXggNWZjYTg1OWZjMDAxNDA4YzVmNzkzOWZiYzJlN2M0YjA3NzExYTdkOC4uMjBkOWU5ZDhh
OTlhNWZlNjhlM2E0MzZhNzFkMmU2ZWI5ODFlOTA5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5jcHAKQEAgLTUw
LDcgKzUwLDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0OjpzdG9wVXBkYXRpbmco
KQogICAgICAgICBtX3Byb3ZpZGVyLT5zdG9wKCk7CiB9CiAKLURldmljZU9yaWVudGF0aW9uKiBE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAorRGV2aWNl
T3JpZW50YXRpb25EYXRhKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0OjpsYXN0T3JpZW50YXRp
b24oKSBjb25zdAogewogICAgIHJldHVybiAobV9wcm92aWRlcikgPyBtX3Byb3ZpZGVyLT5sYXN0
T3JpZW50YXRpb24oKSA6IDA7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0LmgKaW5kZXggOTEyNDRkYmE2OGM3NWFlZDhk
NGQ4MTRhZmNjZTdmYTkzNzNiMTYxOS4uNmEyZDVkZDBkNWRjYjU4ZWU0NTgxNTQ3YWUyZjIyOWRj
NTU3YzFmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRRdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0Rldmlj
ZU9yaWVudGF0aW9uQ2xpZW50UXQuaApAQCAtMjAsOCArMjAsOCBAQAogI2lmbmRlZiBEZXZpY2VP
cmllbnRhdGlvbkNsaWVudFF0X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdF9o
CiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAKICNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvblByb3ZpZGVyUXQuaCIKQEAgLTM3LDcgKzM3LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciopOwog
ICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCk7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BV
cGRhdGluZygpOwotICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlv
bigpIGNvbnN0OworICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50
YXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmNwcAppbmRleCA0ODg1
MzBiYjM1YWJkMDg3NGU4NTRiOGM3NzcwMDY0ZDYyZGE2Y2M2Li44Y2M2ZmM0YzA1ODY0MmQzNzcz
NGJmNzBiN2MwNWQwYzIzYzRjYmIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9xdC9EZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5jcHAKQEAgLTI2LDcgKzI2
LDcgQEAgRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0OjpEZXZpY2VPcmllbnRhdGlvblByb3Zp
ZGVyUXQoKQogICAgIDogbV9jb250cm9sbGVyKDApCiB7CiAgICAgbV9zZW5zb3IuYWRkRmlsdGVy
KHRoaXMpOwotICAgIG1fbGFzdE9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0
ZSgpOworICAgIG1fbGFzdE9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVh
dGUoKTsKIH0KIAogRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0Ojp+RGV2aWNlT3JpZW50YXRp
b25Qcm92aWRlclF0KCkKQEAgLTY2LDcgKzY2LDcgQEAgYm9vbCBEZXZpY2VPcmllbnRhdGlvblBy
b3ZpZGVyUXQ6OmZpbHRlcihRUm90YXRpb25SZWFkaW5nKiByZWFkaW5nKQogICAgICAgICAvLyBU
aGUgWiAoYWxwaGEpIHJvdGF0aW9uIGFuZ2xlIGlzIGNoZWNrZWQgdmlhIGhhc0FscGhhKCkgcHJp
dmF0ZSBtZXRob2QsCiAgICAgICAgIC8vIGRlcGVuZGluZyBpZiB0aGUgZGV2aWNlIGlzIGFibGUg
ZG8gZGV0ZWN0IHRoZSBhbHBoYSByb3RhdGlvbi4gWCAoYmV0YSkgYW5kCiAgICAgICAgIC8vIFkg
KGdhbW1hKSBheGlzIGFyZSBhdmFpbGJsZSBpbiB0aGlzIGNvbnRleHQuCi0gICAgICAgIG1fbGFz
dE9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZShoYXNBbHBoYSgpLCByZWFk
aW5nLT56KCksCisgICAgICAgIG1fbGFzdE9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb25E
YXRhOjpjcmVhdGUoaGFzQWxwaGEoKSwgcmVhZGluZy0+eigpLAogICAgICAgICAgICAgICAgIC8q
IHggYXZhaWxhYmxlICovIHRydWUsIHJlYWRpbmctPngoKSwKICAgICAgICAgICAgICAgICAvKiB5
IGF2YWlsYWJsZSAqLyB0cnVlLCByZWFkaW5nLT55KCkpOwogICAgICAgICBtX2NvbnRyb2xsZXIt
PmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKG1fbGFzdE9yaWVudGF0aW9uLmdldCgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJv
dmlkZXJRdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Q
cm92aWRlclF0LmgKaW5kZXggYzdmNmQyMzM3Y2E4ZTc0Yzg0YjViMGQzZTEyNDBiYzBlZTk1NWQz
YS4uYzRhMjJmNzRlMmQxOGU2N2QxNTU1MWU4MzczN2RhNmE5OTU3MjlhMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRl
clF0LmgKQEAgLTIwLDggKzIwLDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25Qcm92aWRl
clF0X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0X2gKIAotI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSA8UVJv
dGF0aW9uRmlsdGVyPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIApAQCAtNDUsMTEgKzQ1LDEx
IEBAIHB1YmxpYzoKICAgICB2b2lkIHN0YXJ0KCk7CiAgICAgdm9pZCBzdG9wKCk7CiAgICAgYm9v
bCBpc0FjdGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vuc29yLmlzQWN0aXZlKCk7IH0KLSAgICBE
ZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9sYXN0
T3JpZW50YXRpb24uZ2V0KCk7IH0KKyAgICBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmll
bnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbGFzdE9yaWVudGF0aW9uLmdldCgpOyB9CiAgICAg
Ym9vbCBoYXNBbHBoYSgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vuc29yLnByb3BlcnR5KCJoYXNaIiku
dG9Cb29sKCk7IH0KIAogcHJpdmF0ZToKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1f
bGFzdE9yaWVudGF0aW9uOworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fbGFz
dE9yaWVudGF0aW9uOwogICAgIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciogbV9jb250cm9s
bGVyOwogICAgIFFSb3RhdGlvblNlbnNvciBtX3NlbnNvcjsKIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRCbGFja0JlcnJ5LmggYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQv
RGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5LmgKaW5kZXggNzYxMGZiMWQ0ZGI4ODFk
YjIxY2JlNjQ5NmU1MDFhYmNkNzc2OGJkYy4uY2ExZGQ5ZDRkZmIxY2M3Y2ZkYWRmYzBjNTliZWEx
MmU2OWQ2OGJhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVT
dXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJs
YWNrQmVycnkuaApAQCAtMTksOCArMTksOCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNs
aWVudEJsYWNrQmVycnlfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVy
cnlfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgog
CiAjaW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRmb3JtRGV2aWNlT3JpZW50YXRpb25UcmFja2VyTGlz
dGVuZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC00Nyw3ICs0Nyw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOwogICAgIHZpcnR1YWwg
dm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0
T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSog
bGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogICAgIHZpcnR1YWwgdm9pZCBvbk9yaWVudGF0aW9u
KGNvbnN0IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50Kik7CiAK
QEAgLTU1LDcgKzU1LDcgQEAgcHJpdmF0ZToKICAgICBCbGFja0JlcnJ5OjpXZWJLaXQ6OldlYlBh
Z2VQcml2YXRlKiBtX3dlYlBhZ2VQcml2YXRlOwogICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpE
ZXZpY2VPcmllbnRhdGlvblRyYWNrZXIqIG1fdHJhY2tlcjsKICAgICBEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+
IG1fY3VycmVudE9yaWVudGF0aW9uOworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+
IG1fY3VycmVudE9yaWVudGF0aW9uOwogfTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViRGV2aWNlT3JpZW50YXRpb24uaCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYkRldmljZU9yaWVudGF0aW9uLmgKaW5kZXggYmNhMzY5MmY5YmY0
MjM5YzBhNzlkNDJhYTExMWI0ZTBiYjU5OWRhNy4uODRiMWJiM2Q0ZGQ3ZmExM2FkMTdkYWU4ZjUx
MGE5NzJiZmFiZjMwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViRGV2aWNlT3JpZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpZiBXRUJLSVRf
SU1QTEVNRU5UQVRJT04KIG5hbWVzcGFjZSBXVEYgeyB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gY2xh
c3MgUGFzc1JlZlB0cjsgfQotbmFtZXNwYWNlIFdlYkNvcmUgeyBjbGFzcyBEZXZpY2VPcmllbnRh
dGlvbjsgfQorbmFtZXNwYWNlIFdlYkNvcmUgeyBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGE7
IH0KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKQEAgLTk5LDkgKzk5LDkgQEAgcHVibGlj
OgogICAgIGJvb2wgYWJzb2x1dGUoKSB7IHJldHVybiBtX2Fic29sdXRlOyB9CiAKICNpZiBXRUJL
SVRfSU1QTEVNRU5UQVRJT04KLSAgICBXZWJEZXZpY2VPcmllbnRhdGlvbihjb25zdCBXVEY6OlBh
c3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+Jik7Ci0gICAgV2ViRGV2aWNlT3Jp
ZW50YXRpb24mIG9wZXJhdG9yPShjb25zdCBXVEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb24+Jik7Ci0gICAgb3BlcmF0b3IgV1RGOjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRl
dmljZU9yaWVudGF0aW9uPigpIGNvbnN0OworICAgIFdlYkRldmljZU9yaWVudGF0aW9uKGNvbnN0
IFdURjo6UGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+Jik7CisgICAg
V2ViRGV2aWNlT3JpZW50YXRpb24mIG9wZXJhdG9yPShjb25zdCBXVEY6OlBhc3NSZWZQdHI8V2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiYpOworICAgIG9wZXJhdG9yIFdURjo6UGFzc1Jl
ZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+KCkgY29uc3Q7CiAjZW5kaWYKIAog
cHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9y
aWVudGF0aW9uQ2xpZW50UHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2
aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5jcHAKaW5kZXggMjliNDNiYTU2ZGE1Y2I4OTYyZDlh
NjU3MTMyOWQ0MWVmYjNkZWQ2ZC4uZjFmMGIzM2Y5ZTdkYmU5OGRlMTcyMTBkYjlmNzZhM2EyN2E2
NWQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50
YXRpb25DbGllbnRQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2
aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmgiCiAK
LSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0
aW9uRGF0YS5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAi
V2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCiAjaW5jbHVkZSA8d3RmL093blB0ci5o
PgpAQCAtNjAsMTIgKzYwLDEyIEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6
c3RvcFVwZGF0aW5nKCkKICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKLVdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5OjpsYXN0
T3JpZW50YXRpb24oKSBjb25zdAorV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhKiBEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudFByb3h5OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAogewogICAg
IGlmICghbV9jbGllbnQpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgLy8gQ2FjaGUgdGhlIERl
dmljZU9yaWVudGF0aW9uIHBvaW50ZXIgc28gaXRzIHJlZmVyZW5jZSBjb3VudCBkb2VzIG5vdCBk
cm9wIHRvIHplcm8gdXBvbiByZXR1cm4uCisgICAgLy8gQ2FjaGUgdGhlIERldmljZU9yaWVudGF0
aW9uRGF0YSBwb2ludGVyIHNvIGl0cyByZWZlcmVuY2UgY291bnQgZG9lcyBub3QgZHJvcCB0byB6
ZXJvIHVwb24gcmV0dXJuLgogICAgIG1fbGFzdE9yaWVudGF0aW9uID0gbV9jbGllbnQtPmxhc3RP
cmllbnRhdGlvbigpOwogCiAgICAgcmV0dXJuIG1fbGFzdE9yaWVudGF0aW9uLmdldCgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRQcm94eS5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50YXRpb25D
bGllbnRQcm94eS5oCmluZGV4IGU5MGQ3N2ZkOWJhNjg3YWZhZThmYWIwYmMxNTU0NWM1OGU1MDM5
NWQuLjVhMWFmYzZlODVkNzg5ZDM0OTFlZTU0N2E4MTE1MmQ3MTJhNmE0YzkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHku
aAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dFByb3h5LmgKQEAgLTI2LDggKzI2LDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGll
bnRQcm94eV9oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHlfaAogCi0jaW5j
bHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNs
aWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIldl
YkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCkBA
IC00NywxMiArNDcsMTIgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q29udHJvbGxlcihXZWJDb3Jl
OjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKTsKICAgICB2b2lkIHN0YXJ0VXBkYXRpbmco
KTsKICAgICB2b2lkIHN0b3BVcGRhdGluZygpOwotICAgIFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICBXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBkZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAogcHJpdmF0ZToKICAgICBXZWJE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudCogbV9jbGllbnQ7Ci0gICAgbXV0YWJsZSBSZWZQdHI8V2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb24+IG1fbGFzdE9yaWVudGF0aW9uOworICAgIG11dGFibGUg
UmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4gbV9sYXN0T3JpZW50YXRpb247
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcAppbmRleCAwOThjYjQyNWM2ODM0MWFh
NTY5Y2ExMGU1MmZmOTg5MzQxYWNhYjU0Li4yYmZhNGMxNzVmOGJlMmVmYjgwMDYwNjkyNTM1OGQ1
ZDQ3NmI4ZTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZp
Y2VPcmllbnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2
aWNlT3JpZW50YXRpb24uY3BwCkBAIC0yNiwxMiArMjYsMTIgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbi5oIgogCi0jaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotV2ViRGV2aWNl
T3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKGNvbnN0IFBhc3NSZWZQdHI8V2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb24+JiBvcmllbnRhdGlvbikKK1dlYkRldmljZU9yaWVudGF0aW9u
OjpXZWJEZXZpY2VPcmllbnRhdGlvbihjb25zdCBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uRGF0YT4mIG9yaWVudGF0aW9uKQogewogICAgIGlmICghb3JpZW50YXRpb24pIHsK
ICAgICAgICAgbV9pc051bGwgPSB0cnVlOwpAQCAtNTcsNyArNTcsNyBAQCBXZWJEZXZpY2VPcmll
bnRhdGlvbjo6V2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjpE
ZXZpY2VPcmllbgogICAgIG1fYWJzb2x1dGUgPSBvcmllbnRhdGlvbi0+YWJzb2x1dGUoKTsKIH0K
IAotV2ViRGV2aWNlT3JpZW50YXRpb24mIFdlYkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvcj0o
Y29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4mIG9yaWVudGF0aW9u
KQorV2ViRGV2aWNlT3JpZW50YXRpb24mIFdlYkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvcj0o
Y29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+JiBvcmllbnRh
dGlvbikKIHsKICAgICBpZiAoIW9yaWVudGF0aW9uKSB7CiAgICAgICAgIG1faXNOdWxsID0gdHJ1
ZTsKQEAgLTg0LDExICs4NCwxMSBAQCBXZWJEZXZpY2VPcmllbnRhdGlvbiYgV2ViRGV2aWNlT3Jp
ZW50YXRpb246Om9wZXJhdG9yPShjb25zdCBQYXNzUmVmUHRyPFdlYkNvcmU6OgogICAgIHJldHVy
biAqdGhpczsKIH0KIAotV2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yIFBhc3NSZWZQdHI8
V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KCkgY29uc3QKK1dlYkRldmljZU9yaWVudGF0aW9u
OjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4oKSBj
b25zdAogewogICAgIGlmIChtX2lzTnVsbCkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJu
IFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uOjpjcmVhdGUobV9jYW5Qcm92aWRlQWxwaGEsIG1f
YWxwaGEsIG1fY2FuUHJvdmlkZUJldGEsIG1fYmV0YSwgbV9jYW5Qcm92aWRlR2FtbWEsIG1fZ2Ft
bWEsIG1fY2FuUHJvdmlkZUFic29sdXRlLCBtX2Fic29sdXRlKTsKKyAgICByZXR1cm4gV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUobV9jYW5Qcm92aWRlQWxwaGEsIG1fYWxw
aGEsIG1fY2FuUHJvdmlkZUJldGEsIG1fYmV0YSwgbV9jYW5Qcm92aWRlR2FtbWEsIG1fZ2FtbWEs
IG1fY2FuUHJvdmlkZUFic29sdXRlLCBtX2Fic29sdXRlKTsKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAppbmRleCBhYTkyNDlmNzY3MTBmODcwYzAz
YmQzOTFkMWZlMWM4NzEzZmUyZmIyLi40MzU1ODQxYzZmZDQxNThmMzVjMzY5OGQyMTI2OGJhNWUy
ZDhmY2UzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKQEAgLTI2LDggKzI2LDggQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRh
LmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlIDx3dGYvUGFz
c1JlZlB0ci5oPgogCkBAIC0zNSw4ICszNSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lk
IFdlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRp
b24oY29uc3QgV2ViRGV2aWNlT3JpZW50YXRpb24mIG9yaWVudGF0aW9uKQogewotICAgIFBhc3NS
ZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+IGRldmljZU9yaWVudGF0aW9uKG9yaWVu
dGF0aW9uKTsKLSAgICBtX2NvbnRyb2xsZXItPmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKGRl
dmljZU9yaWVudGF0aW9uLmdldCgpKTsKKyAgICBtX2NvbnRyb2xsZXItPmRpZENoYW5nZURldmlj
ZU9yaWVudGF0aW9uKHN0YXRpY19jYXN0PFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhPiA+KG9yaWVudGF0aW9uKS5nZXQoKSk7CiB9CiAKIFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlciogV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpjb250
cm9sbGVyKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBw
b3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJD
b3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oCmluZGV4IGI4MDA3N2NhNWVk
MTVkZDFlYTY0YTdkOWMzYjBmMmEzNzE0OWFiN2MuLjBiYjE5N2NiN2Y5ZjQ2YTQ1ODQ5YTVjZjNh
ZDEyOTk4MTI5ZmU4NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBw
b3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwv
V2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaApAQCAtMjAsOCArMjAs
OCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbF9oCiAjZGVmaW5lIERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50RWZsX2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgi
CiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkRhdGEuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zMyw3ICszMyw3
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOwogICAg
IHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0
aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0
aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIGRldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRHdGsuaCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0
aW9uQ2xpZW50R3RrLmgKaW5kZXggMmM1Mjk0OTVmMDU0Nzk3MGIwMWE5NGIyNWVmMDQ1MjVhZDZi
ODEzZS4uZmNhYTJkMmU4MWRkNzMzYjE5Y2U1MDc5MWQxYjk4NjgwMDU5Y2U1MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRHdGsuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmll
bnRhdGlvbkNsaWVudEd0ay5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaWZuZGVmIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50R3RrX2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGtfaAog
Ci0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCiBuYW1l
c3BhY2UgV2ViS2l0IHsKIApAQCAtMzQsNyArMzQsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIHNldENvbnRyb2xsZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKik7
CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogbGFz
dE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBkZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9u
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VPcmll
bnRhdGlvbkNsaWVudC5oCmluZGV4IGVkNDA3ZWI4MDFjYWU0OTMzM2M4NTM0ODdhYjAzYTVhZTEy
ZTZjOWIuLjdlNDk4NzFjMDBhOTE4MmExZDZmMGRkZWM5Yzk5MDIyOWQ4ZTVhNzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9u
Q2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRGV2aWNl
T3JpZW50YXRpb25DbGllbnQuaApAQCAtNDYsNyArNDYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHNldENvbnRyb2xsZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
KikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKSBPVkVSUklERTsK
ICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCBX
ZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgT1ZFUlJJ
REU7CisgICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmll
bnRhdGlvbigpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSBPVkVSUklERTsKIAogcHJpdmF0ZToKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9u
Q2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnQubW0KaW5kZXggM2E0ZDVkN2RkODk5NzE0YTc1NGQ2ZjU4OWNjMzYxODZh
MzdmYmI2My4uYWFhMDMxYTRiODE3MDY3MWFjOWQxYjQ4NWNlODZhNWU5ZjVlZTFmZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRGV2aWNlT3JpZW50YXRp
b25DbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRGV2
aWNlT3JpZW50YXRpb25DbGllbnQubW0KQEAgLTU1LDcgKzU1LDcgQEAgdm9pZCBXZWJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudDo6c3RvcFVwZGF0aW5nKCkKICAgICBbZ2V0UHJvdmlkZXIoKSBzdG9w
VXBkYXRpbmddOwogfQogCi1EZXZpY2VPcmllbnRhdGlvbiogV2ViRGV2aWNlT3JpZW50YXRpb25D
bGllbnQ6Omxhc3RPcmllbnRhdGlvbigpIGNvbnN0CitEZXZpY2VPcmllbnRhdGlvbkRhdGEqIFdl
YkRldmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAogewogICAg
IHJldHVybiBjb3JlKFtnZXRQcm92aWRlcigpIGxhc3RPcmllbnRhdGlvbl0pOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbSBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb24ubW0KaW5kZXgg
N2JlNWQwY2EzMDk3OTk1YjI4ZTljNzY5N2E1MzgxODc2ZDM3NzUwYy4uZGI3ODk0ZjljNjlhYTcy
ZjU2NzE0MzA4YjZkOTk1OWQzODM1N2NiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uLm1tCkBAIC0yOSw3ICsyOSw3IEBAIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCiBAaW1wbGVtZW50YXRpb24gV2ViRGV2aWNlT3JpZW50YXRpb25J
bnRlcm5hbAogCi0tIChpZClpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0
cjxEZXZpY2VPcmllbnRhdGlvbj4pY29yZURldmljZU9yaWVudGF0aW9uCistIChpZClpbml0V2l0
aENvcmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+
KWNvcmVEZXZpY2VPcmllbnRhdGlvbgogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAg
aWYgKCFzZWxmKQpAQCAtNDIsNyArNDIsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAog
QGltcGxlbWVudGF0aW9uIFdlYkRldmljZU9yaWVudGF0aW9uIChJbnRlcm5hbCkKIAotLSAoaWQp
aW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbgorLSAoaWQpaW5pdFdpdGhDb3JlRGV2
aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
Piljb3JlRGV2aWNlT3JpZW50YXRpb24KIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAg
IGlmICghc2VsZikKQEAgLTU1LDcgKzU1LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAK
IEBpbXBsZW1lbnRhdGlvbiBXZWJEZXZpY2VPcmllbnRhdGlvbgogCi1EZXZpY2VPcmllbnRhdGlv
biogY29yZShXZWJEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCitEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQogewogICAg
IHJldHVybiBvcmllbnRhdGlvbiA/IG9yaWVudGF0aW9uLT5tX2ludGVybmFsLT5tX29yaWVudGF0
aW9uLmdldCgpIDogMDsKIH0KQEAgLTY1LDcgKzY1LDcgQEAgRGV2aWNlT3JpZW50YXRpb24qIGNv
cmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQogICAgIHNlbGYgPSBbc3VwZXIg
aW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwotICAgIG1faW50ZXJu
YWwgPSBbW1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwgYWxsb2NdIGluaXRXaXRoQ29yZURl
dmljZU9yaWVudGF0aW9uOkRldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoY2FuUHJvdmlkZUFscGhh
LCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEpXTsK
KyAgICBtX2ludGVybmFsID0gW1tXZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsIGFsbG9jXSBp
bml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0
ZShjYW5Qcm92aWRlQWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlk
ZUdhbW1hLCBnYW1tYSldOwogICAgIHJldHVybiBzZWxmOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwuaCBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbC5oCmlu
ZGV4IGI3YzZhYTUzYjRiYTNlMjhmYTNjMmQzY2Q2NGRkODYxMTFjYjg1MWMuLjVkZWRkMDgwYzc2
ZjQ0ODU0OTI5OTJmOTQ3N2E4ZWNiYTQxZGVlOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbC5oCkBAIC0yNSwy
MSArMjUsMjEgQEAKIAogI2ltcG9ydCAiV2ViRGV2aWNlT3JpZW50YXRpb24uaCIKIAotI2ltcG9y
dCA8V2ViQ29yZS9EZXZpY2VPcmllbnRhdGlvbi5oPgorI2ltcG9ydCA8V2ViQ29yZS9EZXZpY2VP
cmllbnRhdGlvbkRhdGEuaD4KICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogQGludGVyZmFjZSBX
ZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsIDogTlNPYmplY3QgewogQHB1YmxpYwotICAgIFJl
ZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4gbV9vcmllbnRhdGlvbjsKKyAgICBSZWZQ
dHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX29yaWVudGF0aW9uOwogfQogCi0t
IChpZClpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0cjxXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbj4pY29yZURldmljZU9yaWVudGF0aW9uOworLSAoaWQpaW5pdFdpdGhD
b3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhPiljb3JlRGV2aWNlT3JpZW50YXRpb247CiBAZW5kCiAKIEBpbnRlcmZhY2UgV2ViRGV2
aWNlT3JpZW50YXRpb24gKEludGVybmFsKQogCi0tIChpZClpbml0V2l0aENvcmVEZXZpY2VPcmll
bnRhdGlvbjooUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4pY29yZURldmlj
ZU9yaWVudGF0aW9uOworLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NS
ZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiljb3JlRGV2aWNlT3JpZW50YXRp
b247CiAKIEBlbmQKIAotV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGNvcmUoV2ViRGV2aWNl
T3JpZW50YXRpb24qKTsKK1dlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YSogY29yZShXZWJE
ZXZpY2VPcmllbnRhdGlvbiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAppbmRleCBlNzBiZjAwNGE0
OTEyNmY0NGJkMTQ3NWRkNDgyY2E4MjcyNWRkZmVlLi41ODQwMTk5ZTY2ZTU0ODViMzc1NGIxMDkz
M2ExODI1YTdlYmQwZmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBw
b3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcApAQCAtMzMsOSArMzMsOSBA
QAogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDbGllbnRR
dC5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51Q29udHJvbGxlci5oIgotI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmgi
CiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiRGV2
aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKICNpbmNs
dWRlICJFZGl0b3IuaCIKICNpbmNsdWRlICJFZGl0b3JDbGllbnRRdC5oIgpAQCAtNzc5LDcgKzc3
OSw3IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldE1vY2tEZXZpY2VPcmllbnRh
dGlvbihRV2ViUGFnZSogcGFnZSwgYm9vbCBjYW5QCiAjaWYgRU5BQkxFKERFVklDRV9PUklFTlRB
VElPTikKICAgICBQYWdlKiBjb3JlUGFnZSA9IFFXZWJQYWdlUHJpdmF0ZTo6Y29yZShwYWdlKTsK
ICAgICBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2sqIG1vY2tDbGllbnQgPSB0b0RldmljZU9y
aWVudGF0aW9uQ2xpZW50TW9jayhEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmZyb20oY29y
ZVBhZ2UpLT5jbGllbnQoKSk7Ci0gICAgbW9ja0NsaWVudC0+c2V0T3JpZW50YXRpb24oRGV2aWNl
T3JpZW50YXRpb246OmNyZWF0ZShjYW5Qcm92aWRlQWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0
YSwgYmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1tYSkpOworICAgIG1vY2tDbGllbnQtPnNldE9y
aWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGNhblByb3ZpZGVBbHBoYSwg
YWxwaGEsIGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEsIGdhbW1hKSk7CiAj
ZW5kaWYKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146863</attachid>
            <date>2012-06-11 08:58:39 -0700</date>
            <delta_ts>2012-06-21 09:42:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88663-20120611165837.patch</filename>
            <type>text/plain</type>
            <size>70065</size>
            <attacher name="Amy Ousterhout">aousterh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5OTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTNmMTY5MjllNGZiNWZj
ZThkOWU4YzA0MjJkNGYxMmI4Y2M4M2ZmYS4uMzIyYmI0ZTNmMjM0MWM2MTBlNmVmYmI2ZjMyY2Nm
NmVkN2FiMzI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc1IEBACisyMDEyLTA2LTExICBBbXkg
T3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERl
dmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlz
IGlzIHNpbXBseSBhIG5hbWUgY2hhbmdlLgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50
YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhIGluIG9yZGVyIHRvIGJlIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICBVZGF0ZWQgYWxsIGZpbGVzIHRoYXQgdXNl
IERldmljZU9yaWVudGF0aW9uLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAg
ICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAgICAq
IFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlv
bkV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRGV2aWNlT3JpZW50YXRpb25F
dmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4
L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVu
dENhbGxiYWNrKToKKyAgICAgICAgKiBkb20vRE9NQWxsSW5PbmUuY3BwOgorICAgICAgICAqIGRv
bS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
IChEZXZpY2VPcmllbnRhdGlvbkNsaWVudCk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbik6CisgICAgICAgICogZG9t
L0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIpOgorICAgICAgICAqIGRvbS9EZXZpY2VP
cmllbnRhdGlvbkRhdGEuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uLmNwcC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjphbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZp
Y2VPcmllbnRhdGlvbkRhdGE6OmJldGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhOjpnYW1tYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRh
dGE6OmFic29sdXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6
Y2FuUHJvdmlkZUFscGhhKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0
YTo6Y2FuUHJvdmlkZUJldGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25E
YXRhOjpjYW5Qcm92aWRlR2FtbWEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRh
dGlvbkRhdGEuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbi5oLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkRh
dGEpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQp
OgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9y
aWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmg6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6Om9yaWVudGF0aW9uKToKKyAgICAg
ICAgKiBsb2FkZXIvRW1wdHlDbGllbnRzLmg6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eURldmlj
ZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24pOgorICAgICAgICAqIHBsYXRmb3Jt
L21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24pOgorICAgICAgICAq
IHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmg6CisgICAgICAgIChX
ZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6Omxhc3RPcmllbnRhdGlvbik6Cisg
ICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2spOgorICAgICAgICAqIHBsYXRmb3Jt
L3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwOgorICAgICAgICAoRGV2aWNlT3JpZW50
YXRpb25DbGllbnRRdCk6CisgICAgICAgICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25D
bGllbnRRdC5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdCk6CisgICAgICAg
ICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0Lmg6CisgICAgICAgIChE
ZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQpOgorICAgICAgICAqIHBsYXRmb3JtL3F0L0Rldmlj
ZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25Qcm92
aWRlclF0KToKKwogMjAxMi0wNi0xMSAgTWljaGFlbCBCcsO8bmluZyAgPG1pY2hhZWwuYnJ1bmlu
Z0Bub2tpYS5jb20+CiAKICAgICAgICAgW1F0XVtXSzJdIENvbXB1dGUgYW5kIHNldCBjYWNoZSBj
YXBhY2l0aWVzIHVzaW5nIHRoZSBjdXJyZW50IENhY2hlTW9kZWwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkv
Q2hhbmdlTG9nCmluZGV4IGE3ZjY0YjE5MzUxNjQwM2RjMDNkY2RkZTllZTExNGJjM2IwMWUwOGQu
LjlkMjcwYTYwODhlYTAzZWI5ZDk2ZmVmNzQ1MTFkYmYwMGMxMmEwMGMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ibGFj
a2JlcnJ5L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTA2LTExICBBbXkgT3VzdGVy
aG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERldmljZU9y
aWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGVkIGZpbGVzIHRvIHVzZSB0aGUgcmVuYW1l
ZCBEZXZpY2VPcmllbnRhdGlvbkRhdGEgaW5zdGVhZCBvZiBEZXZpY2VPcmllbnRhdGlvbi4KKyAg
ICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgRGV2aWNlT3JpZW50YXRpb25EYXRhIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRGV2aWNl
T3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5Lmg6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlv
bkNsaWVudEJsYWNrQmVycnkpOgorICAgICAgICAKIDIwMTItMDYtMDggIENyeXN0YWwgWmhhbmcg
IDxoYWl6aGFuZ0ByaW0uY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5XSBGaXggY3Jhc2ggb24g
UGFnZVBvcHVwQ2hyb21lQ2xpZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGYwMjFh
MWVlNzg5NWU1MzllY2I4NjNlOTA1Y2EwMWZjMWQ1YzUxZjEuLjI3ZTI2NTMyYWI1OGFlN2JlOTBh
ZGIyYTc0NzNjNzNjM2U1MTA0ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjYgQEAKKzIwMTItMDYtMTEgIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0u
b3JnPgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50
YXRpb25EYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04ODY2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFVwZGF0ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBp
bnN0ZWFkIG9mIERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBE
ZXZpY2VPcmllbnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisg
ICAgICAgIAorICAgICAgICAqIHB1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oOgorICAgICAg
ICAoV2ViRGV2aWNlT3JpZW50YXRpb24pOgorICAgICAgICAqIHNyYy9EZXZpY2VPcmllbnRhdGlv
bkNsaWVudFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6RGV2aWNlT3JpZW50YXRpb25DbGll
bnRQcm94eTo6bGFzdE9yaWVudGF0aW9uKToKKyAgICAgICAgKiBzcmMvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRQcm94eS5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eSk6
CisgICAgICAgICogc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViRGV2aWNlT3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKToKKyAgICAgICAg
KFdlYktpdDo6V2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPSk6CisgICAgICAgIChXZWJL
aXQ6OldlYkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRl
dmljZU9yaWVudGF0aW9uRGF0YT4pOgorICAgICAgICAqIHNyYy9XZWJEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKToKKwogMjAxMi0wNi0wOSAgRXVn
ZW5lIEtseXVjaG5pa292ICA8ZXVzdGFzLmJ1Z0BnbWFpbC5jb20+CiAKICAgICAgICAgV2ViIElu
c3BlY3RvcjogQWRkIG1lc3NhZ2UgbG9vcCBpbnN0cnVtZW50YXRpb24gdG8gcHVibGljIEFQSSBh
bmQgdGltZWxpbmUgYWdlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCA4OTcwMTBlMGNlMzIxMTU1ZGVh
YmMyNjcyYjU2MWJjMTBlNDM5ZDE4Li5hMTYwMDIxYWY3MGUwMDQxMTMyNTRmMTFjYjQxODRkY2Nm
NmJiNGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDYtMTEgIEFt
eSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbmFtZWQg
RGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8gdXNlIHRo
ZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9yaWVudGF0
aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEgY29u
c2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmg6CisgICAgICAgIChEZXZpY2VP
cmllbnRhdGlvbkNsaWVudEVmbCk6CisKIDIwMTItMDYtMDUgIEFkYW0gQmFydGggIDxhYmFydGhA
d2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgc3VwcG9ydCBmb3IgdGFyZ2V0LWRlbnNpdHlk
cGkgaW4gdGhlIHZpZXdwb3J0IG1ldGEgdGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0
ay9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggMDBkZmVmYzYx
YzA2ZmM3OTJlMWU1YTBhNTdmYTdkNmE5Zjk4MTJiZC4uNjUzOGM0NmY0Yzk1NGVkNWMxNzdlNmIx
MjJiOTc0Yjc4OGYzNWQ1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEy
LTA2LTExICBBbXkgT3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZW5hbWVkIERldmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGVkIGZpbGVz
IHRvIHVzZSB0aGUgcmVuYW1lZCBEZXZpY2VPcmllbnRhdGlvbkRhdGEgaW5zdGVhZCBvZiBEZXZp
Y2VPcmllbnRhdGlvbi4KKyAgICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgRGV2aWNlT3JpZW50YXRp
b25EYXRhIGNvbnNpc3RlbnQgd2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICAKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0ay5oOgorICAgICAg
ICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGspOgorCiAyMDEyLTA2LTA3ICBTaW1vbiBQZW5h
ICA8c3BlbmFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBkZXZpY2VTY2FsZUZhY3RvciBz
ZXR0aW5nIGlzIG5vdCBob25vcmVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggODU3Njc0ZDQ4ZWNiMTgy
NGM4ZmVkZWI2OTk2MGIzY2FiNGQzYTEwNi4uMGU0MzI0MjE2N2QxMWQ5NTBmZDhhNTY1MGYyNjA4
YzA2NmJhMWVlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTA2LTEx
ICBBbXkgT3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5h
bWVkIERldmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGVkIGZpbGVzIHRvIHVz
ZSB0aGUgcmVuYW1lZCBEZXZpY2VPcmllbnRhdGlvbkRhdGEgaW5zdGVhZCBvZiBEZXZpY2VPcmll
bnRhdGlvbi4KKyAgICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgRGV2aWNlT3JpZW50YXRpb25EYXRh
IGNvbnNpc3RlbnQgd2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lmg6CisgICAgICAgIChXZWJEZXZpY2VPcmll
bnRhdGlvbkNsaWVudCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRGV2aWNlT3JpZW50
YXRpb25DbGllbnQubW06CisgICAgICAgIChXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudDo6bGFz
dE9yaWVudGF0aW9uKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uLm1t
OgorICAgICAgICAqIFdlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbC5oOgorCiAy
MDEyLTA2LTEwICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KIAog
ICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTE5OTU1LgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwppbmRl
eCAwMDgwOTQ0NmQ5NDg3NTRkNWJkZmRjYjg3YzljYjQxZWVmNTJlZDQxLi4yZDA0OTBiMDc5MGJm
NzcyMWM3OTAyNmUyMGJiZThmYmMyNmYwYjg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEyLTA2LTExICBBbXkgT3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4K
KworICAgICAgICBSZW5hbWVkIERldmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9u
RGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2
NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGVkIGZpbGVzIHRvIHVzZSB0aGUgcmVuYW1lZCBEZXZpY2VPcmllbnRhdGlvbkRhdGEgaW5zdGVh
ZCBvZiBEZXZpY2VPcmllbnRhdGlvbi4KKyAgICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgRGV2aWNl
T3JpZW50YXRpb25EYXRhIGNvbnNpc3RlbnQgd2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAg
ICAKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHA6
CisgICAgICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0TW9ja0RldmljZU9yaWVudGF0
aW9uKToKKwogMjAxMi0wNi0wOCAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tp
YS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgZml4IGZpbGUgcGVybWlzc2lvbnMuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CmluZGV4IGU0YzA0Y2MyNDAzZjUzNzBiY2QwOTU2NmUyMjljNDc4ZjdiY2Vk
N2MuLjE0MjI4YjJmYTJiNGZkYjFjNzNlZTVlMTFjNDFhMzExNzk5NGYwZDUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC01NjUsOCArNTY1LDggQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAgIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcAogICAgIGRvbS9EZXZpY2VNb3Rpb25EYXRhLmNw
cAogICAgIGRvbS9EZXZpY2VNb3Rpb25FdmVudC5jcHAKLSAgICBkb20vRGV2aWNlT3JpZW50YXRp
b24uY3BwCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKyAgICBkb20v
RGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50
LmNwcAogICAgIGRvbS9Eb2N1bWVudC5jcHAKICAgICBkb20vRG9jdW1lbnRNYXJrZXJDb250cm9s
bGVyLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBi
L1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggNzU2ODVmNzgxYTU2OWQ5
NjU3MGNkYjMxMjY3ODdmMTQ5MGU1NWU2NS4uMzkzMDQ4YTcyMDkzOWQxZGVlYWVhYjRmNjkyZGFh
ZWRiNTkzYTg0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5h
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC0xODE4LDEwICsx
ODE4LDEwIEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uQ2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5j
cHAgXAorCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIFwKKwlT
b3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmggXAogCVNvdXJjZS9XZWJD
b3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCi0JU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9y
aWVudGF0aW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgXAogCVNvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZG9t
L0RvY3VtZW50RnJhZ21lbnQuaCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCAwOTA2MDYxNjRlNjA5OGU0M2Y4
ZDI2MmM0ZTQxNzJkNmE1YjYxN2RkLi4xMzQ2MTBmODJlMjgyYzRmZjRiYmZlNmJhMjAzMjU1NmE0
NTY4OGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTUzNCw4ICs1MzQsOCBAQCBTT1VSQ0VTICs9IFwKICAg
ICBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgXAogICAgIGRvbS9EZXZpY2VNb3Rpb25E
YXRhLmNwcCBcCiAgICAgZG9tL0RldmljZU1vdGlvbkV2ZW50LmNwcCBcCi0gICAgZG9tL0Rldmlj
ZU9yaWVudGF0aW9uLmNwcCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5j
cHAgXAorICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIFwgICAgCiAgICAgZG9tL0Rl
dmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIFwKICAgICBkb20vRG9jdW1lbnQuY3BwIFwKICAgICBk
b20vRG9jdW1lbnRFdmVudFF1ZXVlLmNwcCBcCkBAIC0xNzA4LDkgKzE3MDgsOSBAQCBIRUFERVJT
ICs9IFwKICAgICBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIFwKICAgICBkb20vRGV2aWNl
TW90aW9uRGF0YS5oIFwKICAgICBkb20vRGV2aWNlTW90aW9uRXZlbnQuaCBcCi0gICAgZG9tL0Rl
dmljZU9yaWVudGF0aW9uLmggXAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIFwK
ICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggXAorICAgIGRvbS9EZXZpY2VP
cmllbnRhdGlvbkRhdGEuaCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBcCiAg
ICAgZG9tL0RvY3VtZW50LmggXAogICAgIGRvbS9Eb2N1bWVudEZyYWdtZW50LmggXApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmV4cC5pbgppbmRleCA3YTdjNjcwNjZlYzIzMTlhMTBhNDZjZWM3NmQ0ZWMzMGUyZjhkYTM0
Li4xYmFmYzkwOWYzMTY5NWVkMmFlYjI0NDIzOWNhMzMxMTc0OWU1MmRlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LmV4cC5pbgpAQCAtNTM5LDcgKzUzOSw3IEBAIF9fWk43V2ViQ29yZTE3Q3JlZGVudGlhbFN0b3Jh
Z2UyNGdldEZyb21QZXJzaXN0ZW50U3RvcmFnZUVSS05TXzE1UHJvdGVjdGlvblNwYWNlCiBfX1pO
N1dlYkNvcmUxN0NyZWRlbnRpYWxTdG9yYWdlM2dldEVSS05TXzE1UHJvdGVjdGlvblNwYWNlRQog
X19aTjdXZWJDb3JlMTdET01JbXBsZW1lbnRhdGlvbjEzaXNYTUxNSU1FVHlwZUVSS04zV1RGNlN0
cmluZ0UKIF9fWk43V2ViQ29yZTE3RE9NSW1wbGVtZW50YXRpb24xNGlzVGV4dE1JTUVUeXBlRVJL
TjNXVEY2U3RyaW5nRQotX19aTjdXZWJDb3JlMTdEZXZpY2VPcmllbnRhdGlvbjZjcmVhdGVFYmRi
ZGJkYmIKK19fWk43V2ViQ29yZTIxRGV2aWNlT3JpZW50YXRpb25EYXRhNmNyZWF0ZUViZGJkYmRi
YgogX19aTjdXZWJDb3JlMTdHbHlwaFBhZ2VUcmVlTm9kZTE4dHJlZUdseXBoUGFnZUNvdW50RXYK
IF9fWk43V2ViQ29yZTE3SGlzdG9yeUNvbnRyb2xsZXIyNnNhdmVEb2N1bWVudEFuZFNjcm9sbFN0
YXRlRXYKIF9fWk43V2ViQ29yZTE3SGlzdG9yeUNvbnRyb2xsZXIzM3Jlc3RvcmVTY3JvbGxQb3Np
dGlvbkFuZFZpZXdTdGF0ZUV2CkBAIC03MjUsNyArNzI1LDcgQEAgX19aTjdXZWJDb3JlMjZzdG9w
T2JzZXJ2aW5nQ29va2llQ2hhbmdlc0V2CiBfX1pON1dlYkNvcmUyNnVzZXNUZXN0TW9kZUZvY3Vz
UmluZ0NvbG9yRXYKIF9fWk43V2ViQ29yZTI3QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlQzJF
dgogX19aTjdXZWJDb3JlMjdDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb25DMUVOM1dURjEwUGFz
c1JlZlB0cklOU180Tm9kZUVFRWJSS05TMV82U3RyaW5nRQotX19aTjdXZWJDb3JlMjdEZXZpY2VP
cmllbnRhdGlvbkNsaWVudE1vY2sxNHNldE9yaWVudGF0aW9uRU4zV1RGMTBQYXNzUmVmUHRySU5T
XzE3RGV2aWNlT3JpZW50YXRpb25FRUUKK19fWk43V2ViQ29yZTI3RGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrMTRzZXRPcmllbnRhdGlvbkVOM1dURjEwUGFzc1JlZlB0cklOU18yMURldmljZU9y
aWVudGF0aW9uRGF0YUVFRQogX19aTjdXZWJDb3JlMjdEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1v
Y2tDMUV2CiBfX1pON1dlYkNvcmUyN2FwcGxpY2F0aW9uSXNBZG9iZUluc3RhbGxlckV2CiBfX1pO
N1dlYkNvcmUyN2FwcGxpY2F0aW9uSXNNaWNyb3NvZnRNeURheUV2CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5k
ZXggNTIzNTEyMmY5MWNjOWIxYmNlNjhlM2NlYWI0YjAzZDBlZTE4NzUxMC4uMzg2ZDA0YjY5NDVi
MzY4MWRiMDY0ZDM4NjAwNzI5NzU4NzNhZmYwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtNjE4LDgg
KzYxOCw4IEBACiAgICAgICAgICAgICAnZG9tL0NvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyLmgn
LAogICAgICAgICAgICAgJ2RvbS9ET01JbXBsZW1lbnRhdGlvbi5oJywKICAgICAgICAgICAgICdk
b20vRE9NVGltZVN0YW1wLmgnLAotICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbi5o
JywKICAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCcsCisgICAgICAg
ICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5oJywKICAgICAgICAgICAgICdkb20vRG9j
dW1lbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50RnJhZ21lbnQuaCcsCiAgICAgICAg
ICAgICAnZG9tL0RvY3VtZW50TWFya2VyLmgnLApAQCAtNTI1OCw5ICs1MjU4LDkgQEAKICAgICAg
ICAgICAgICdkb20vRGV2aWNlTW90aW9uRGF0YS5oJywKICAgICAgICAgICAgICdkb20vRGV2aWNl
TW90aW9uRXZlbnQuY3BwJywKICAgICAgICAgICAgICdkb20vRGV2aWNlTW90aW9uRXZlbnQuaCcs
Ci0gICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcCcsCiAgICAgICAgICAgICAn
ZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAnLAogICAgICAgICAgICAgJ2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9y
aWVudGF0aW9uRGF0YS5jcHAnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2
ZW50LmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCcsCiAg
ICAgICAgICAgICAnZG9tL0RvY3VtZW50LmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDUxOWE2ODlkMmJkNDVmYmE0NzNhZjlkMzJhMTVk
ZmIwOTAxMWM3YzEuLmZhOTVmZDQzYjM2MTk2ZjMwMDBmMjc2ZDhkN2FiY2ZmM2NiMzY2YzYgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC00OTE1
OSw3ICs0OTE1OSwxMSBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRp
dmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb24uY3BwIgorCQkJCVJlbGF0aXZlUGF0aD0i
Li5cZG9tXERldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJ
PEZpbGUKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KIAkJCQkJTmFtZT0iRGVidWd8
V2luMzIiCkBAIC00OTIxMSwxNSArNDkyMTUsMTEgQEAKIAkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
PgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VP
cmllbnRhdGlvbi5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQ
YXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKIAkJCQk+CiAJCQk8L0ZpbGU+
CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25E
YXRhLmNwcCIKIAkJCQk+CiAJCQkJPEZpbGVDb25maWd1cmF0aW9uCiAJCQkJCU5hbWU9IkRlYnVn
fFdpbjMyIgpAQCAtNDkyNzEsOSArNDkyNzEsOSBAQAogCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlci5oIgorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9y
aWVudGF0aW9uRGF0YS5oIgogCQkJCT4KLQkJCTwvRmlsZT4KKwkJCTwvRmlsZT4JCiAJCQk8Rmls
ZQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIgog
CQkJCT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCAwYzcwMzczNDZmOGVjNjM0YzVjOWY3ZmEwZTI1OTFjM2UwMmU3YmYxLi45NTZm
YzYzYjVkY2Q0MTc0YzQwODI3NjBiNjk2NjlhNjE3NWM4MzBkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNTk5LDcgKzE1OTks
NyBAQAogCQk1N0NGNEM4NzE0Rjc1OTdBMDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRvdy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdDRjRDODUxNEY3NTk3
QTAwRUNGRjE0IC8qIEVsZW1lbnRTaGFkb3cuaCAqLzsgfTsKIAkJNTkwNUFEQkYxMzAyRjNDRTAw
RjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTkwNUFEQkQxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3
ZXIuY3BwICovOyB9OwogCQk1OTA1QURDMDEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkwNUFE
QkUxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuaCAqLzsgfTsKLQkJNTkwRTFCNDkx
MUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyog
RGV2aWNlT3JpZW50YXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRp
b25EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTkwRTFCNEIxMUU0
RUY3MDAwNjlGNzg0IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0QTExRTRFRjcw
MDA2OUY3ODQgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCAqLzsgfTsKIAkJ
NTkxMDJGQkIxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTEwMkZCOTE0MzI3RDNC
MDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCAqLzsgfTsKIAkJNTkxMDJGQkMxNDMy
N0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkxMDJGQkExNDMyN0QzQjAwM0M5RDA0IC8qIENv
bnRlbnRTZWFyY2hVdGlscy5oICovOyB9OwpAQCAtMTYzNSw3ICsxNjM1LDcgQEAKIAkJNTlDMjdG
MDcxMzhEMjhDRjAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJjZXNEYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUMyN0YwNjEzOEQyOENGMDA3OUI3
RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCAqLzsgfTsKIAkJNTlDMjgwNDUxMzhEQzI0MTAw
NzlCN0UyIC8qIFhNTEVycm9ycy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1OUMyODA0MzEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmNwcCAq
LzsgfTsKIAkJNTlDMjgwNDYxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlDMjgwNDQxMzhEQzI0MTAw
NzlCN0UyIC8qIFhNTEVycm9ycy5oICovOyB9OwotCQk1OUQxQzEwNDExRUI1RENGMDBCNjM4Qzgg
LyogRGV2aWNlT3JpZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0
aW9uLmNwcCAqLzsgfTsKKwkJNTlEMUMxMDQxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVu
dGF0aW9uRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmNw
cCAqLzsgfTsKIAkJNTlERTc5MDQxM0YxNkM3RjAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlERTc5MDMx
M0YxNkM3RjAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuY3BwICovOyB9OwogCQk1OURFNzkwNjEz
RjE2QzhDMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlERTc5MDUxM0YxNkM4QzAwMDdGQ0RGIC8qIEphdmFN
ZXRob2RKU0MuaCAqLzsgfTsKIAkJNTlFNTYwQTcxMTA1MzM2NjAwQUExMjU4IC8qIEphdmFDbGFz
c0pTQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlF
NTYwQTYxMTA1MzM2NjAwQUExMjU4IC8qIEphdmFDbGFzc0pTQy5oICovOyB9OwpAQCAtODY1Niw3
ICs4NjU2LDcgQEAKIAkJNTdDRjRDODUxNEY3NTk3QTAwRUNGRjE0IC8qIEVsZW1lbnRTaGFkb3cu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWxlbWVudFNoYWRvdy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTA1QURCRDEzMDJGM0NFMDBGMTE2REYgLyogWE1M
VHJlZVZpZXdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxU
cmVlVmlld2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkwNUFEQkUxMzAy
RjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gWE1MVHJlZVZpZXdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1
OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVu
dGF0aW9uRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmll
bnRhdGlvbkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkwRTFCNEExMUU0
RUY3MDAwNjlGNzg0IC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRD
dXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OTEwMkZCOTE0MzI3RDNC
MDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENvbnRlbnRTZWFyY2hVdGlscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTU5MTAyRkJBMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRp
bHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudFNlYXJjaFV0aWxz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC04Njk1LDcgKzg2OTUsNyBAQAogCQk1
OUMyN0YwNjEzOEQyOENGMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1Jlc291cmNlc0RhdGEuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTlDMjgwNDMxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVy
cm9ycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxFcnJvcnMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OUMyODA0NDEzOERDMjQxMDA3OUI3
RTIgLyogWE1MRXJyb3JzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTEVy
cm9ycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1OUQxQzEwMzExRUI1RENGMDBC
NjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRh
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZU9yaWVudGF0
aW9uRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5REU3OTAzMTNGMTZD
N0YwMDA3RkNERiAvKiBKYXZhTWV0aG9kSlNDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IEphdmFNZXRob2RKU0MuY3BwOyBwYXRoID0ganNjL0phdmFNZXRob2RKU0Mu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OURFNzkwNTEzRjE2QzhDMDAwN0ZD
REYgLyogSmF2YU1ldGhvZEpTQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBK
YXZhTWV0aG9kSlNDLmg7IHBhdGggPSBqc2MvSmF2YU1ldGhvZEpTQy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1OUU1NjBBNjExMDUzMzY2MDBBQTEyNTggLyogSmF2YUNsYXNzSlND
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEphdmFDbGFzc0pTQy5oOyBwYXRo
ID0ganNjL0phdmFDbGFzc0pTQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjEy
MjIsMTEgKzIxMjIyLDExIEBACiAJCQkJMzFGQjFBNTQxMjBBNUQwNjAwREMwMkEwIC8qIERldmlj
ZU1vdGlvbkV2ZW50LmNwcCAqLywKIAkJCQkzMUZCMUE1NTEyMEE1RDA2MDBEQzAyQTAgLyogRGV2
aWNlTW90aW9uRXZlbnQuaCAqLywKIAkJCQkzMUZCMUE1NjEyMEE1RDA2MDBEQzAyQTAgLyogRGV2
aWNlTW90aW9uRXZlbnQuaWRsICovLAotCQkJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBE
ZXZpY2VPcmllbnRhdGlvbi5jcHAgKi8sCi0JCQkJNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8q
IERldmljZU9yaWVudGF0aW9uLmggKi8sCiAJCQkJNTlBOEYxRDcxMUE2OTUyMDAwMUFDMzRBIC8q
IERldmljZU9yaWVudGF0aW9uQ2xpZW50LmggKi8sCiAJCQkJNTlBOEYxRDMxMUE2OTUwODAwMUFD
MzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgKi8sCiAJCQkJNTlBOEYxRDUx
MUE2OTUxMzAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oICovLAorCQkJ
CTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwICov
LAorCQkJCTU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEu
aCAqLywKIAkJCQk1OUE4NUVBMTExOUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25F
dmVudC5jcHAgKi8sCiAJCQkJNTlBODVFQTMxMTlENjhFQzAwREVGMUVGIC8qIERldmljZU9yaWVu
dGF0aW9uRXZlbnQuaCAqLywKIAkJCQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYgLyogRGV2aWNl
T3JpZW50YXRpb25FdmVudC5pZGwgKi8sCkBAIC0yMjE5MCwxMCArMjIxOTAsMTAgQEAKIAkJCQkz
MUZCMUE1OTEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMzFGQjFBNUIxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkRh
dGEuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxRkIxQTVEMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZp
Y2VNb3Rpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNTkwRTFCNDkxMUU0RUY0QjAwNjlG
Nzg0IC8qIERldmljZU9yaWVudGF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk1OUE4RjFEODEx
QTY5NTIwMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCTU5MzA5QTEzMTFGNEFFNkEwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVu
dE1vY2suaCBpbiBIZWFkZXJzICovLAogCQkJCTU5QThGMUQ2MTFBNjk1MTMwMDFBQzM0QSAvKiBE
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU5MEUxQjQ5
MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBpbiBIZWFkZXJzICov
LAogCQkJCTU5QTg1RUE0MTE5RDY4RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDRUNBREZDNzE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0
aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovLAogCQkJCUNFQ0FERkM5MTUzNzc4RkYwMEUz
NzA2OCAvKiBEaWN0YXRpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKQEAgLTI1Njg2LDkgKzI1
Njg2LDkgQEAKIAkJCQkzMUZCMUE1ODEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uQ29u
dHJvbGxlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUZCMUE1QTEyMEE1RDA2MDBEQzAyQTAg
LyogRGV2aWNlTW90aW9uRGF0YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUZCMUE1QzEyMEE1
RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJ
NTlEMUMxMDQxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTU5MzA5QTExMTFGNEFFNTgwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTlBOEYxRDQxMUE2OTUwODAwMUFD
MzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQk1OUQxQzEwNDExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTU5QTg1RUEyMTE5RDY4RDkwMERFRjFFRiAvKiBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNFQ0FERkM2MTUzNzc4RkYwMEUz
NzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRUNB
REZDODE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAq
LywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2aWNlT3JpZW50
YXRpb25FdmVudEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCmluZGV4IGVjNzg3MWQ1MTEyNmZlZDJlY2UxNzY1
ZTdlNWVlZmE0YjZjZGY2N2IuLjVhMGZmN2Q3MzU4MTU4ODk2M2ZmMjg5NWM1NWUyN2JlNDBiZjQy
OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2aWNlT3JpZW50
YXRpb25FdmVudEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcApAQCAtMjksNyArMjksNyBAQAogCiAjaW5j
bHVkZSAiSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKQEAgLTgz
LDcgKzgzLDcgQEAgSlNWYWx1ZSBKU0RldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VP
cmllbnRhdGlvbkV2ZW50KEV4ZWNTdGF0ZSogZXhlYykKICAgICBkb3VibGUgZ2FtbWEgPSBleGVj
LT5hcmd1bWVudCg1KS50b051bWJlcihleGVjKTsKICAgICBib29sIGFic29sdXRlUHJvdmlkZWQg
PSAhZXhlYy0+YXJndW1lbnQoNSkuaXNVbmRlZmluZWRPck51bGwoKTsKICAgICBib29sIGFic29s
dXRlID0gZXhlYy0+YXJndW1lbnQoNikudG9Cb29sZWFuKCk7Ci0gICAgUmVmUHRyPERldmljZU9y
aWVudGF0aW9uPiBvcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoYWxwaGFQ
cm92aWRlZCwgYWxwaGEsIGJldGFQcm92aWRlZCwgYmV0YSwgZ2FtbWFQcm92aWRlZCwgZ2FtbWEs
IGFic29sdXRlUHJvdmlkZWQsIGFic29sdXRlKTsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRp
b25EYXRhPiBvcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGFscGhh
UHJvdmlkZWQsIGFscGhhLCBiZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1hUHJvdmlkZWQsIGdhbW1h
LCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNvbHV0ZSk7CiAgICAgRGV2aWNlT3JpZW50YXRpb25FdmVu
dCogaW1wID0gc3RhdGljX2Nhc3Q8RGV2aWNlT3JpZW50YXRpb25FdmVudCo+KGltcGwoKSk7CiAg
ICAgaW1wLT5pbml0RGV2aWNlT3JpZW50YXRpb25FdmVudCh0eXBlLCBidWJibGVzLCBjYW5jZWxh
YmxlLCBvcmllbnRhdGlvbi5nZXQoKSk7CiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCmluZGV4IGZjM2ZjMjAyNmQxMDUyNWNl
YWNkZTA0YTY0YTE2ZWExZGMwNGUxYjYuLmJiZGMzZmNlOGFhNjdiYzg5MjI3MjMyMjI0ZjAzNTVh
NjU1N2YyZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCkBAIC0y
OCw3ICsyOCw3IEBACiAKICNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQogCi0jaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEu
aCIKICNpbmNsdWRlICJWOEJpbmRpbmcuaCIKICNpbmNsdWRlICJWOEJpbmRpbmdNYWNyb3MuaCIK
ICNpbmNsdWRlICJWOFByb3h5LmgiCkBAIC05Myw3ICs5Myw3IEBAIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50
Q2FsbGJhCiAgICAgZG91YmxlIGdhbW1hID0gYXJnc1s1XS0+TnVtYmVyVmFsdWUoKTsKICAgICBi
b29sIGFic29sdXRlUHJvdmlkZWQgPSAhaXNVbmRlZmluZWRPck51bGwoYXJnc1s2XSk7CiAgICAg
Ym9vbCBhYnNvbHV0ZSA9IGFyZ3NbNl0tPkJvb2xlYW5WYWx1ZSgpOwotICAgIFJlZlB0cjxEZXZp
Y2VPcmllbnRhdGlvbj4gb3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKGFs
cGhhUHJvdmlkZWQsIGFscGhhLCBiZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1hUHJvdmlkZWQsIGdh
bW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNvbHV0ZSk7CisgICAgUmVmUHRyPERldmljZU9yaWVu
dGF0aW9uRGF0YT4gb3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShh
bHBoYVByb3ZpZGVkLCBhbHBoYSwgYmV0YVByb3ZpZGVkLCBiZXRhLCBnYW1tYVByb3ZpZGVkLCBn
YW1tYSwgYWJzb2x1dGVQcm92aWRlZCwgYWJzb2x1dGUpOwogICAgIGltcC0+aW5pdERldmljZU9y
aWVudGF0aW9uRXZlbnQodHlwZSwgYnViYmxlcywgY2FuY2VsYWJsZSwgb3JpZW50YXRpb24uZ2V0
KCkpOwogICAgIHJldHVybiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4oKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9ET01BbGxJbk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RE9NQWxsSW5PbmUuY3BwCmluZGV4IDMyMGFlZjk4MjA5YTVlYjg0YTdlNzUyOGZjYjNiNTY0OTY4
NTg3NzguLmY2YTllOTRjNjliZTM5YzU4YWMyYjY2MzhhMmViN2MzYmYwYTM0ZTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01BbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RPTUFsbEluT25lLmNwcApAQCAtNTQsOCArNTQsOCBAQAogI2luY2x1ZGUgIkRldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkRhdGEuY3BwIgog
I2luY2x1ZGUgIkRldmljZU1vdGlvbkV2ZW50LmNwcCIKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbi5jcHAiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCIKKyNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIgogI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uRXZlbnQuY3BwIgogI2luY2x1ZGUgIkRvY3VtZW50LmNwcCIKICNpbmNsdWRlICJEb2N1
bWVudEV2ZW50UXVldWUuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5j
cHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlhOGMyNTdjYTc0MTk3Y2U3YjNiODI4
ODY4YWY2MzQxMzc4NWQ0YzUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcAorKysgL2Rl
di9udWxsCkBAIC0xLDEwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCi0gKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
LSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
UGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZSgp
Ci17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbik7Ci19Ci0KLVBh
c3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoYm9v
bCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91
YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJv
dmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcg
RGV2aWNlT3JpZW50YXRpb24oY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEs
IGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEsIGNhblByb3ZpZGVBYnNvbHV0ZSwgYWJzb2x1
dGUpKTsKLX0KLQotCi1EZXZpY2VPcmllbnRhdGlvbjo6RGV2aWNlT3JpZW50YXRpb24oKQotICAg
IDogbV9jYW5Qcm92aWRlQWxwaGEoZmFsc2UpCi0gICAgLCBtX2NhblByb3ZpZGVCZXRhKGZhbHNl
KQotICAgICwgbV9jYW5Qcm92aWRlR2FtbWEoZmFsc2UpCi0gICAgLCBtX2NhblByb3ZpZGVBYnNv
bHV0ZShmYWxzZSkKLSAgICAsIG1fYWxwaGEoMCkKLSAgICAsIG1fYmV0YSgwKQotICAgICwgbV9n
YW1tYSgwKQotICAgICwgbV9hYnNvbHV0ZShmYWxzZSkKLXsKLX0KLQotRGV2aWNlT3JpZW50YXRp
b246OkRldmljZU9yaWVudGF0aW9uKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEs
IGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwg
ZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNvbHV0ZSkKLSAg
ICA6IG1fY2FuUHJvdmlkZUFscGhhKGNhblByb3ZpZGVBbHBoYSkKLSAgICAsIG1fY2FuUHJvdmlk
ZUJldGEoY2FuUHJvdmlkZUJldGEpCi0gICAgLCBtX2NhblByb3ZpZGVHYW1tYShjYW5Qcm92aWRl
R2FtbWEpCi0gICAgLCBtX2NhblByb3ZpZGVBYnNvbHV0ZShjYW5Qcm92aWRlQWJzb2x1dGUpCi0g
ICAgLCBtX2FscGhhKGFscGhhKQotICAgICwgbV9iZXRhKGJldGEpCi0gICAgLCBtX2dhbW1hKGdh
bW1hKQotICAgICwgbV9hYnNvbHV0ZShhYnNvbHV0ZSkKLXsKLX0KLQotZG91YmxlIERldmljZU9y
aWVudGF0aW9uOjphbHBoYSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYWxwaGE7Ci19Ci0KLWRv
dWJsZSBEZXZpY2VPcmllbnRhdGlvbjo6YmV0YSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYmV0
YTsKLX0KLQotZG91YmxlIERldmljZU9yaWVudGF0aW9uOjpnYW1tYSgpIGNvbnN0Ci17Ci0gICAg
cmV0dXJuIG1fZ2FtbWE7Ci19Ci0KLWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmFic29sdXRlKCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbV9hYnNvbHV0ZTsKLX0KLQotYm9vbCBEZXZpY2VPcmllbnRh
dGlvbjo6Y2FuUHJvdmlkZUFscGhhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92aWRl
QWxwaGE7Ci19Ci0KLWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVCZXRhKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92aWRlQmV0YTsKLX0KLQotYm9vbCBEZXZpY2VPcmll
bnRhdGlvbjo6Y2FuUHJvdmlkZUdhbW1hKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92
aWRlR2FtbWE7Ci19Ci0KLWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVBYnNvbHV0
ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY2FuUHJvdmlkZUFic29sdXRlOwotfQotCi19IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNjc3ZDQzMzA4NDAyMTQ3ZmE2MWEzNTk1MmQ0
YWQ4NzNhYmU3OTA2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oCisrKyAvZGV2L251bGwK
QEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25faAot
I2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbl9oCi0KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
Y2xhc3MgRGV2aWNlT3JpZW50YXRpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxEZXZpY2VPcmllbnRh
dGlvbj4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9u
PiBjcmVhdGUoKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gY3Jl
YXRlKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJl
dGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29s
IGNhblByb3ZpZGVBYnNvbHV0ZSA9IGZhbHNlLCBib29sIGFic29sdXRlID0gZmFsc2UpOwotCi0g
ICAgZG91YmxlIGFscGhhKCkgY29uc3Q7Ci0gICAgZG91YmxlIGJldGEoKSBjb25zdDsKLSAgICBk
b3VibGUgZ2FtbWEoKSBjb25zdDsKLSAgICBib29sIGFic29sdXRlKCkgY29uc3Q7Ci0gICAgYm9v
bCBjYW5Qcm92aWRlQWxwaGEoKSBjb25zdDsKLSAgICBib29sIGNhblByb3ZpZGVCZXRhKCkgY29u
c3Q7Ci0gICAgYm9vbCBjYW5Qcm92aWRlR2FtbWEoKSBjb25zdDsKLSAgICBib29sIGNhblByb3Zp
ZGVBYnNvbHV0ZSgpIGNvbnN0OwotCi1wcml2YXRlOgotICAgIERldmljZU9yaWVudGF0aW9uKCk7
Ci0gICAgRGV2aWNlT3JpZW50YXRpb24oYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBo
YSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1h
LCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKTsK
LQotICAgIGJvb2wgbV9jYW5Qcm92aWRlQWxwaGE7Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVCZXRh
OwotICAgIGJvb2wgbV9jYW5Qcm92aWRlR2FtbWE7Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVBYnNv
bHV0ZTsKLSAgICBkb3VibGUgbV9hbHBoYTsKLSAgICBkb3VibGUgbV9iZXRhOwotICAgIGRvdWJs
ZSBtX2dhbW1hOwotICAgIGJvb2wgbV9hYnNvbHV0ZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIERldmljZU9yaWVudGF0aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmgKaW5kZXggMmMxNmIwY2Q4YmM3YTc4NTA5MTZm
OGJkMDFkNjU4ZjVmZjA2OWM0Yi4uNDA0OWMwM2E0YTE0NGE3NDUyMjlhMDU0MTM4MWNkNTdlMTRj
NjViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmgK
QEAgLTI4LDE4ICsyOCwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERldmlj
ZU9yaWVudGF0aW9uOwogY2xhc3MgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOworY2xhc3Mg
RGV2aWNlT3JpZW50YXRpb25EYXRhOwogY2xhc3MgUGFnZTsKIAogY2xhc3MgRGV2aWNlT3JpZW50
YXRpb25DbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgfkRldmljZU9yaWVudGF0aW9uQ2xp
ZW50KCkge30KLQogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlciopID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCkgPSAwOwotICAgIHZpcnR1YWwgRGV2
aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgPSAwOwogICAg
IHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSA9IDA7
CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuY3BwCmluZGV4IGVhZTZmYjUwYWIxYjBkMzgxMjdhYWJjMTc4OGMxNWRhMjUwMWIwZTUu
LmZkZjI0NjUzZmEzMWE3YjEwMDA3OGEwMjU4OTBjOTMwNmRkNTEyZWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC0yNiw4
ICsyNiw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1
ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRp
b25EYXRhLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CkBAIC01Niw3ICs1Niw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyOjp0aW1lckZpcmVkKFRpbWVyPERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcj4qCiAg
ICAgQVNTRVJUX1VOVVNFRCh0aW1lciwgdGltZXIgPT0gJm1fdGltZXIpOwogICAgIEFTU0VSVCht
X2NsaWVudC0+bGFzdE9yaWVudGF0aW9uKCkpOwogCi0gICAgUmVmUHRyPERldmljZU9yaWVudGF0
aW9uPiBvcmllbnRhdGlvbiA9IG1fY2xpZW50LT5sYXN0T3JpZW50YXRpb24oKTsKKyAgICBSZWZQ
dHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBvcmllbnRhdGlvbiA9IG1fY2xpZW50LT5sYXN0T3Jp
ZW50YXRpb24oKTsKICAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gZXZlbnQgPSBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRldmljZW9yaWVudGF0
aW9uRXZlbnQsIG9yaWVudGF0aW9uLmdldCgpKTsKIAogICAgIFZlY3RvcjxSZWZQdHI8RE9NV2lu
ZG93PiA+IGxpc3RlbmVyc1ZlY3RvcjsKQEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lkIERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lRXZlbnRzRm9yQWxsTGlzdGVuZXJzKERPTVdpbmRv
dyogd2luZG93KQogICAgICAgICBhZGRMaXN0ZW5lcih3aW5kb3cpOwogfQogCi12b2lkIERldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNl
T3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YSogb3Jp
ZW50YXRpb24pCiB7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGV2ZW50ID0g
RGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZpY2VvcmllbnRh
dGlvbkV2ZW50LCBvcmllbnRhdGlvbik7CiAgICAgVmVjdG9yPFJlZlB0cjxET01XaW5kb3c+ID4g
bGlzdGVuZXJzVmVjdG9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5oCmluZGV4IDcwN2NkNWNiNmRiNTQxNGJlNTk0YTAyZTQ4YTNiNjU2YTE5
ODhkODQuLmM5MjcyYTJmYjlmNTcwMjNmMGZjMmY5N2M3NDNiMWY4YjgyZGQwYzggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKQEAgLTM0
LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBEZXZpY2VPcmllbnRh
dGlvbjsKK2NsYXNzIERldmljZU9yaWVudGF0aW9uRGF0YTsKIGNsYXNzIERldmljZU9yaWVudGF0
aW9uQ2xpZW50OwogCiBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIgOiBwdWJsaWMg
U3VwcGxlbWVudDxQYWdlPiB7CkBAIC01MCw3ICs1MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHN1
c3BlbmRFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAgICAgdm9pZCByZXN1bWVF
dmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKLSAgICB2b2lkIGRpZENoYW5nZURl
dmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CisgICAgdm9pZCBkaWRDaGFuZ2VE
ZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbkRhdGEqKTsKIAogICAgIGJvb2wgaXNB
Y3RpdmUoKSB7IHJldHVybiAhbV9saXN0ZW5lcnMuaXNFbXB0eSgpOyB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmU3MzAyZmQ3
ZjhiYmI1Mjg5YjdmNmU2ZTU1NjE1NDkxOGJmNmFhNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwCkBAIC0wLDAgKzEsMTA2IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0
aW9uRGF0YS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1Bhc3NSZWZQdHI8RGV2aWNlT3Jp
ZW50YXRpb25EYXRhPiBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZSgpCit7CisgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkRhdGEpOworfQorCitQYXNzUmVmUHRy
PERldmljZU9yaWVudGF0aW9uRGF0YT4gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoYm9v
bCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91
YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJv
dmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKQoreworICAgIHJldHVybiBhZG9wdFJlZihuZXcg
RGV2aWNlT3JpZW50YXRpb25EYXRhKGNhblByb3ZpZGVBbHBoYSwgYWxwaGEsIGNhblByb3ZpZGVC
ZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEsIGdhbW1hLCBjYW5Qcm92aWRlQWJzb2x1dGUsIGFi
c29sdXRlKSk7Cit9CisKKworRGV2aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlv
bkRhdGEoKQorICAgIDogbV9jYW5Qcm92aWRlQWxwaGEoZmFsc2UpCisgICAgLCBtX2NhblByb3Zp
ZGVCZXRhKGZhbHNlKQorICAgICwgbV9jYW5Qcm92aWRlR2FtbWEoZmFsc2UpCisgICAgLCBtX2Nh
blByb3ZpZGVBYnNvbHV0ZShmYWxzZSkKKyAgICAsIG1fYWxwaGEoMCkKKyAgICAsIG1fYmV0YSgw
KQorICAgICwgbV9nYW1tYSgwKQorICAgICwgbV9hYnNvbHV0ZShmYWxzZSkKK3sKK30KKworRGV2
aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEoYm9vbCBjYW5Qcm92aWRl
QWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJv
b2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRl
LCBib29sIGFic29sdXRlKQorICAgIDogbV9jYW5Qcm92aWRlQWxwaGEoY2FuUHJvdmlkZUFscGhh
KQorICAgICwgbV9jYW5Qcm92aWRlQmV0YShjYW5Qcm92aWRlQmV0YSkKKyAgICAsIG1fY2FuUHJv
dmlkZUdhbW1hKGNhblByb3ZpZGVHYW1tYSkKKyAgICAsIG1fY2FuUHJvdmlkZUFic29sdXRlKGNh
blByb3ZpZGVBYnNvbHV0ZSkKKyAgICAsIG1fYWxwaGEoYWxwaGEpCisgICAgLCBtX2JldGEoYmV0
YSkKKyAgICAsIG1fZ2FtbWEoZ2FtbWEpCisgICAgLCBtX2Fic29sdXRlKGFic29sdXRlKQorewor
fQorCitkb3VibGUgRGV2aWNlT3JpZW50YXRpb25EYXRhOjphbHBoYSgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fYWxwaGE7Cit9CisKK2RvdWJsZSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmJldGEo
KSBjb25zdAoreworICAgIHJldHVybiBtX2JldGE7Cit9CisKK2RvdWJsZSBEZXZpY2VPcmllbnRh
dGlvbkRhdGE6OmdhbW1hKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9nYW1tYTsKK30KKworYm9v
bCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmFic29sdXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9hYnNvbHV0ZTsKK30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNhblByb3ZpZGVB
bHBoYSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY2FuUHJvdmlkZUFscGhhOworfQorCitib29s
IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUJldGEoKSBjb25zdAoreworICAgIHJl
dHVybiBtX2NhblByb3ZpZGVCZXRhOworfQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0YTo6
Y2FuUHJvdmlkZUdhbW1hKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jYW5Qcm92aWRlR2FtbWE7
Cit9CisKK2Jvb2wgRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUoKSBj
b25zdAoreworICAgIHJldHVybiBtX2NhblByb3ZpZGVBYnNvbHV0ZTsKK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjFkZjliNjU4ZmFiODlmOGUxYTRlN2FhYmZkMmRjN2U5MzllMDY1MDcKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRh
LmgKQEAgLTAsMCArMSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25E
YXRhX2gKKyNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25EYXRhX2gKKworI2luY2x1ZGUgPHd0Zi9Q
YXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEgOiBwdWJsaWMgUmVmQ291bnRl
ZDxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0
cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IGNyZWF0ZSgpOworICAgIHN0YXRpYyBQYXNzUmVmUHRy
PERldmljZU9yaWVudGF0aW9uRGF0YT4gY3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3Vi
bGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3Zp
ZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSA9IGZhbHNlLCBi
b29sIGFic29sdXRlID0gZmFsc2UpOworCisgICAgZG91YmxlIGFscGhhKCkgY29uc3Q7CisgICAg
ZG91YmxlIGJldGEoKSBjb25zdDsKKyAgICBkb3VibGUgZ2FtbWEoKSBjb25zdDsKKyAgICBib29s
IGFic29sdXRlKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92aWRlQWxwaGEoKSBjb25zdDsKKyAg
ICBib29sIGNhblByb3ZpZGVCZXRhKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92aWRlR2FtbWEo
KSBjb25zdDsKKyAgICBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0OworCitwcml2YXRl
OgorICAgIERldmljZU9yaWVudGF0aW9uRGF0YSgpOworICAgIERldmljZU9yaWVudGF0aW9uRGF0
YShib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRh
LCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBj
YW5Qcm92aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpOworCisgICAgYm9vbCBtX2NhblByb3Zp
ZGVBbHBoYTsKKyAgICBib29sIG1fY2FuUHJvdmlkZUJldGE7CisgICAgYm9vbCBtX2NhblByb3Zp
ZGVHYW1tYTsKKyAgICBib29sIG1fY2FuUHJvdmlkZUFic29sdXRlOworICAgIGRvdWJsZSBtX2Fs
cGhhOworICAgIGRvdWJsZSBtX2JldGE7CisgICAgZG91YmxlIG1fZ2FtbWE7CisgICAgYm9vbCBt
X2Fic29sdXRlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRGV2
aWNlT3JpZW50YXRpb25EYXRhX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbkV2ZW50LmNwcAppbmRleCA3ZGVjYzdjMDYzMjEzMmIzMjYxZmQ4NDAyZTVkNDBjNDUxYzg3
MzY3Li5iYWJjNzdlNmJmYjAyMmJlNzVmNzMyZGQzOTNjNjRmNDRlMjYzMzY0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwCkBAIC0yNiw3ICsyNiw3
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTM2LDE3ICszNiwxNyBAQCBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojp+RGV2
aWNlT3JpZW50YXRpb25FdmVudCgpCiB9CiAKIERldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmlj
ZU9yaWVudGF0aW9uRXZlbnQoKQotICAgIDogbV9vcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlv
bjo6Y3JlYXRlKCkpCisgICAgOiBtX29yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YTo6
Y3JlYXRlKCkpCiB7CiB9CiAKLURldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0
aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9u
KiBvcmllbnRhdGlvbikKK0RldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9u
RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9uRGF0
YSogb3JpZW50YXRpb24pCiAgICAgOiBFdmVudChldmVudFR5cGUsIGZhbHNlLCBmYWxzZSkgLy8g
Q2FuJ3QgYnViYmxlLCBub3QgY2FuY2VsYWJsZQogICAgICwgbV9vcmllbnRhdGlvbihvcmllbnRh
dGlvbikKIHsKIH0KIAotdm9pZCBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3Jp
ZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxlcywgYm9v
bCBjYW5jZWxhYmxlLCBEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCit2b2lkIERldmlj
ZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgdHlwZSwgYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIERldmljZU9yaWVu
dGF0aW9uRGF0YSogb3JpZW50YXRpb24pCiB7CiAgICAgaWYgKGRpc3BhdGNoZWQoKSkKICAgICAg
ICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgK
aW5kZXggZDk1OTg0MzEyZmIxNTMwYmIwYmJkYzNhMDQ0MmUxNTU3YWExYWNmOS4uZTE5NmVhNWI5
M2U0Y2Y3NDg0YjkzY2I3ZWNmZWVhZGI3ZmM0MjNiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotY2xhc3MgRGV2aWNlT3JpZW50YXRpb247CitjbGFzcyBEZXZpY2VPcmllbnRh
dGlvbkRhdGE7CiAKIGNsYXNzIERldmljZU9yaWVudGF0aW9uRXZlbnQgOiBwdWJsaWMgRXZlbnQg
ewogcHVibGljOgpAQCAtMzksMjIgKzM5LDIyIEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25FdmVudCk7CiAgICAgfQotICAgIHN0
YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9t
aWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorICAg
IHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZShjb25zdCBB
dG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlv
bikKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25F
dmVudChldmVudFR5cGUsIG9yaWVudGF0aW9uKSk7CiAgICAgfQogCi0gICAgdm9pZCBpbml0RGV2
aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxl
cywgYm9vbCBjYW5jZWxhYmxlLCBEZXZpY2VPcmllbnRhdGlvbiopOworICAgIHZvaWQgaW5pdERl
dmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGJ1YmJs
ZXMsIGJvb2wgY2FuY2VsYWJsZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKik7CiAKLSAgICBEZXZp
Y2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX29yaWVudGF0aW9u
LmdldCgpOyB9CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlvbigpIGNvbnN0
IHsgcmV0dXJuIG1fb3JpZW50YXRpb24uZ2V0KCk7IH0KIAogICAgIHZpcnR1YWwgY29uc3QgQXRv
bWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgRGV2aWNl
T3JpZW50YXRpb25FdmVudCgpOwotICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRv
bWljU3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9uKik7CisgICAgRGV2aWNlT3Jp
ZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50
YXRpb25EYXRhKik7CiAKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fb3JpZW50YXRp
b247CisgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlvbjsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
aAppbmRleCBiZWNjZjg4MDE2NjZhN2QwYTlkYjQzYzQ3MmU5ZWFhZGJkMDhmMjBmLi5kNmY3OThl
Zjc3MjY5ZDBlNzBjYjgwZjNhNWY0YjhiZDQ2YjE3MDZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Vt
cHR5Q2xpZW50cy5oCkBAIC01OTEsNyArNTkxLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9p
ZCBzZXRDb250cm9sbGVyKERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciopIHsgfQogICAgIHZp
cnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRh
dGluZygpIHsgfQotICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlv
bigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0
YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gMDsgfQogICAgIHZpcnR1YWwgdm9p
ZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSB7IH0KIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGll
bnRNb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRp
b25DbGllbnRNb2NrLmNwcAppbmRleCAyZmE1YWNiZWVmZWM4ZmMzNTc0ZmExMjFjYmQxNTg4YWQw
ZGE3NjZjLi5jN2RiOTA5OWVlMmQ5NDkxYWQyYTM0MjNkZDM2Y2EyMzZmNjkwMTBmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50
TW9jay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRh
dGlvbkNsaWVudE1vY2suY3BwCkBAIC01NSw3ICs1NSw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRp
b25DbGllbnRNb2NrOjpzdG9wVXBkYXRpbmcoKQogICAgIG1fdGltZXIuc3RvcCgpOwogfQogCi12
b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24oUGFzc1JlZlB0
cjxEZXZpY2VPcmllbnRhdGlvbj4gb3JpZW50YXRpb24pCit2b2lkIERldmljZU9yaWVudGF0aW9u
Q2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRh
dGE+IG9yaWVudGF0aW9uKQogewogICAgIG1fb3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjsKICAg
ICBpZiAobV9pc1VwZGF0aW5nICYmICFtX3RpbWVyLmlzQWN0aXZlKCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1v
Y2suaAppbmRleCBiYWE0MjQ1NWMyNjg5Y2MyOGRiMzQ4OTEzMjExOTk0MzI3ZjUyOWRhLi5jNGEx
ODRhYzIyYTVkZDUyYjFhZjQ5MTVmNzI4MmFjNmVlZDQ3NmRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2Nr
LmgKQEAgLTI2LDggKzI2LDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2Nr
X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrX2gKIAotI2luY2x1ZGUgIkRl
dmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIK
KyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJUaW1lci5oIgog
CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTQ4LDE1ICs0OCwxNSBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0dWFsIHZv
aWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9y
aWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9vcmllbnRhdGlvbi5nZXQoKTsgfQorICAgIHZp
cnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCB7IHJl
dHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpIHsgfQogCi0gICAgdm9pZCBzZXRPcmllbnRhdGlv
bihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPik7CisgICAgdm9pZCBzZXRPcmllbnRhdGlv
bihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4pOwogCiBwcml2YXRlOgogICAgIHZv
aWQgdGltZXJGaXJlZChUaW1lcjxEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s+Kik7CiAKLSAg
ICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fb3JpZW50YXRpb247CisgICAgUmVmUHRyPERl
dmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlvbjsKICAgICBEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKICAgICBUaW1lcjxEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2s+IG1fdGltZXI7CiAgICAgYm9vbCBtX2lzVXBkYXRpbmc7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3Bw
CmluZGV4IDVmY2E4NTlmYzAwMTQwOGM1Zjc5MzlmYmMyZTdjNGIwNzcxMWE3ZDguLjIwZDllOWQ4
YTk5YTVmZTY4ZTNhNDM2YTcxZDJlNmViOTgxZTkwOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwCkBAIC01
MCw3ICs1MCw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdDo6c3RvcFVwZGF0aW5n
KCkKICAgICAgICAgbV9wcm92aWRlci0+c3RvcCgpOwogfQogCi1EZXZpY2VPcmllbnRhdGlvbiog
RGV2aWNlT3JpZW50YXRpb25DbGllbnRRdDo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKK0Rldmlj
ZU9yaWVudGF0aW9uRGF0YSogRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdDo6bGFzdE9yaWVudGF0
aW9uKCkgY29uc3QKIHsKICAgICByZXR1cm4gKG1fcHJvdmlkZXIpID8gbV9wcm92aWRlci0+bGFz
dE9yaWVudGF0aW9uKCkgOiAwOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5oCmluZGV4IDkxMjQ0ZGJhNjhjNzVhZWQ4
ZDRkODE0YWZjY2U3ZmE5MzczYjE2MTkuLjZhMmQ1ZGQwZDVkY2I1OGVlNDU4MTU0N2FlMmYyMjlk
YzU1N2MxZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9y
aWVudGF0aW9uQ2xpZW50UXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZp
Y2VPcmllbnRhdGlvbkNsaWVudFF0LmgKQEAgLTIwLDggKzIwLDggQEAKICNpZm5kZWYgRGV2aWNl
T3JpZW50YXRpb25DbGllbnRRdF9oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50UXRf
aAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCiAj
aW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25Qcm92aWRlclF0LmgiCkBAIC0zNyw3ICszNyw3IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKTsK
ICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOwogICAgIHZpcnR1YWwgdm9pZCBzdG9w
VXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRp
b24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVu
dGF0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlckRlc3Ryb3llZCgpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5jcHAKaW5kZXggNDg4
NTMwYmIzNWFiZDA4NzRlODU0YjhjNzc3MDA2NGQ2MmRhNmNjNi4uOGNjNmZjNGMwNTg2NDJkMzc3
MzRiZjcwYjdjMDVkMGMyM2M0Y2JiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQuY3BwCkBAIC0yNiw3ICsy
Niw3IEBAIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdDo6RGV2aWNlT3JpZW50YXRpb25Qcm92
aWRlclF0KCkKICAgICA6IG1fY29udHJvbGxlcigwKQogewogICAgIG1fc2Vuc29yLmFkZEZpbHRl
cih0aGlzKTsKLSAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVh
dGUoKTsKKyAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3Jl
YXRlKCk7CiB9CiAKIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdDo6fkRldmljZU9yaWVudGF0
aW9uUHJvdmlkZXJRdCgpCkBAIC02Niw3ICs2Niw3IEBAIGJvb2wgRGV2aWNlT3JpZW50YXRpb25Q
cm92aWRlclF0OjpmaWx0ZXIoUVJvdGF0aW9uUmVhZGluZyogcmVhZGluZykKICAgICAgICAgLy8g
VGhlIFogKGFscGhhKSByb3RhdGlvbiBhbmdsZSBpcyBjaGVja2VkIHZpYSBoYXNBbHBoYSgpIHBy
aXZhdGUgbWV0aG9kLAogICAgICAgICAvLyBkZXBlbmRpbmcgaWYgdGhlIGRldmljZSBpcyBhYmxl
IGRvIGRldGVjdCB0aGUgYWxwaGEgcm90YXRpb24uIFggKGJldGEpIGFuZAogICAgICAgICAvLyBZ
IChnYW1tYSkgYXhpcyBhcmUgYXZhaWxibGUgaW4gdGhpcyBjb250ZXh0LgotICAgICAgICBtX2xh
c3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoaGFzQWxwaGEoKSwgcmVh
ZGluZy0+eigpLAorICAgICAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9u
RGF0YTo6Y3JlYXRlKGhhc0FscGhhKCksIHJlYWRpbmctPnooKSwKICAgICAgICAgICAgICAgICAv
KiB4IGF2YWlsYWJsZSAqLyB0cnVlLCByZWFkaW5nLT54KCksCiAgICAgICAgICAgICAgICAgLyog
eSBhdmFpbGFibGUgKi8gdHJ1ZSwgcmVhZGluZy0+eSgpKTsKICAgICAgICAgbV9jb250cm9sbGVy
LT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihtX2xhc3RPcmllbnRhdGlvbi5nZXQoKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblBy
b3ZpZGVyUXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9u
UHJvdmlkZXJRdC5oCmluZGV4IGM3ZjZkMjMzN2NhOGU3NGM4NGI1YjBkM2UxMjQwYmMwZWU5NTVk
M2EuLmM0YTIyZjc0ZTJkMThlNjdkMTU1NTFlODM3MzdkYTZhOTk1NzI5YTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlk
ZXJRdC5oCkBAIC0yMCw4ICsyMCw4IEBACiAjaWZuZGVmIERldmljZU9yaWVudGF0aW9uUHJvdmlk
ZXJRdF9oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdF9oCiAKLSNpbmNsdWRl
ICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgPFFS
b3RhdGlvbkZpbHRlcj4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTQ1LDExICs0NSwx
MSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGFydCgpOwogICAgIHZvaWQgc3RvcCgpOwogICAgIGJv
b2wgaXNBY3RpdmUoKSBjb25zdCB7IHJldHVybiBtX3NlbnNvci5pc0FjdGl2ZSgpOyB9Ci0gICAg
RGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbGFz
dE9yaWVudGF0aW9uLmdldCgpOyB9CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3Jp
ZW50YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2xhc3RPcmllbnRhdGlvbi5nZXQoKTsgfQogICAg
IGJvb2wgaGFzQWxwaGEoKSBjb25zdCB7IHJldHVybiBtX3NlbnNvci5wcm9wZXJ0eSgiaGFzWiIp
LnRvQm9vbCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBt
X2xhc3RPcmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX2xh
c3RPcmllbnRhdGlvbjsKICAgICBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJv
bGxlcjsKICAgICBRUm90YXRpb25TZW5zb3IgbV9zZW5zb3I7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50QmxhY2tCZXJyeS5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oCmluZGV4IDc2MTBmYjFkNGRiODgx
ZGIyMWNiZTY0OTZlNTAxYWJjZDc3NjhiZGMuLmNhMWRkOWQ0ZGZiMWNjN2NmZGFkZmMwYzU5YmVh
MTJlNjlkNjhiYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3Jl
U3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRC
bGFja0JlcnJ5LmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25D
bGllbnRCbGFja0JlcnJ5X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0Jl
cnJ5X2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIK
IAogI2luY2x1ZGUgPEJsYWNrQmVycnlQbGF0Zm9ybURldmljZU9yaWVudGF0aW9uVHJhY2tlckxp
c3RlbmVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNDcsNyArNDcsNyBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0dWFs
IHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbiogbGFz
dE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbkRhdGEq
IGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKICAgICB2aXJ0dWFsIHZvaWQgb25PcmllbnRhdGlv
bihjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25FdmVudCopOwog
CkBAIC01NSw3ICs1NSw3IEBAIHByaXZhdGU6CiAgICAgQmxhY2tCZXJyeTo6V2ViS2l0OjpXZWJQ
YWdlUHJpdmF0ZSogbV93ZWJQYWdlUHJpdmF0ZTsKICAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
RGV2aWNlT3JpZW50YXRpb25UcmFja2VyKiBtX3RyYWNrZXI7CiAgICAgRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyKiBtX2NvbnRyb2xsZXI7Ci0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9u
PiBtX2N1cnJlbnRPcmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRh
PiBtX2N1cnJlbnRPcmllbnRhdGlvbjsKIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkRldmljZU9yaWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oCmluZGV4IGJjYTM2OTJmOWJm
NDIzOWMwYTc5ZDQyYWExMTFiNGUwYmI1OTlkYTcuLjg0YjFiYjNkNGRkN2ZhMTNhZDE3ZGFlOGY1
MTBhOTcyYmZhYmYzMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYkRldmljZU9yaWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJs
aWMvV2ViRGV2aWNlT3JpZW50YXRpb24uaApAQCAtMjgsNyArMjgsNyBAQAogCiAjaWYgV0VCS0lU
X0lNUExFTUVOVEFUSU9OCiBuYW1lc3BhY2UgV1RGIHsgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IGNs
YXNzIFBhc3NSZWZQdHI7IH0KLW5hbWVzcGFjZSBXZWJDb3JlIHsgY2xhc3MgRGV2aWNlT3JpZW50
YXRpb247IH0KK25hbWVzcGFjZSBXZWJDb3JlIHsgY2xhc3MgRGV2aWNlT3JpZW50YXRpb25EYXRh
OyB9CiAjZW5kaWYKIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC05OSw5ICs5OSw5IEBAIHB1Ymxp
YzoKICAgICBib29sIGFic29sdXRlKCkgeyByZXR1cm4gbV9hYnNvbHV0ZTsgfQogCiAjaWYgV0VC
S0lUX0lNUExFTUVOVEFUSU9OCi0gICAgV2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgV1RGOjpQ
YXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiYpOwotICAgIFdlYkRldmljZU9y
aWVudGF0aW9uJiBvcGVyYXRvcj0oY29uc3QgV1RGOjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uPiYpOwotICAgIG9wZXJhdG9yIFdURjo6UGFzc1JlZlB0cjxXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbj4oKSBjb25zdDsKKyAgICBXZWJEZXZpY2VPcmllbnRhdGlvbihjb25z
dCBXVEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiYpOworICAg
IFdlYkRldmljZU9yaWVudGF0aW9uJiBvcGVyYXRvcj0oY29uc3QgV1RGOjpQYXNzUmVmUHRyPFdl
YkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4mKTsKKyAgICBvcGVyYXRvciBXVEY6OlBhc3NS
ZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPigpIGNvbnN0OwogI2VuZGlmCiAK
IHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudFByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCmluZGV4IDI5YjQzYmE1NmRhNWNiODk2MmQ5
YTY1NzEzMjlkNDFlZmIzZGVkNmQuLmYxZjBiMzNmOWU3ZGJlOThkZTE3MjEwZGI5Zjc2YTNhMjdh
NjVkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVu
dGF0aW9uQ2xpZW50UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCkBAIC0yNiw3ICsyNiw3IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5oIgog
Ci0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkRhdGEuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUg
IldlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgPHd0Zi9Pd25QdHIu
aD4KQEAgLTYwLDEyICs2MCwxMiBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHk6
OnN0b3BVcGRhdGluZygpCiAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCi1XZWJD
b3JlOjpEZXZpY2VPcmllbnRhdGlvbiogRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6bGFz
dE9yaWVudGF0aW9uKCkgY29uc3QKK1dlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YSogRGV2
aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKIHsKICAg
ICBpZiAoIW1fY2xpZW50KQogICAgICAgICByZXR1cm4gMDsKIAotICAgIC8vIENhY2hlIHRoZSBE
ZXZpY2VPcmllbnRhdGlvbiBwb2ludGVyIHNvIGl0cyByZWZlcmVuY2UgY291bnQgZG9lcyBub3Qg
ZHJvcCB0byB6ZXJvIHVwb24gcmV0dXJuLgorICAgIC8vIENhY2hlIHRoZSBEZXZpY2VPcmllbnRh
dGlvbkRhdGEgcG9pbnRlciBzbyBpdHMgcmVmZXJlbmNlIGNvdW50IGRvZXMgbm90IGRyb3AgdG8g
emVybyB1cG9uIHJldHVybi4KICAgICBtX2xhc3RPcmllbnRhdGlvbiA9IG1fY2xpZW50LT5sYXN0
T3JpZW50YXRpb24oKTsKIAogICAgIHJldHVybiBtX2xhc3RPcmllbnRhdGlvbi5nZXQoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVudGF0aW9u
Q2xpZW50UHJveHkuaAppbmRleCBlOTBkNzdmZDliYTY4N2FmYWU4ZmFiMGJjMTU1NDVjNThlNTAz
OTVkLi41YTFhZmM2ZTg1ZDc4OWQzNDkxZWU1NDdhODExNTJkNzEyYTZhNGM5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5
LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50YXRpb25DbGll
bnRQcm94eS5oCkBAIC0yNiw4ICsyNiw4IEBACiAjaWZuZGVmIERldmljZU9yaWVudGF0aW9uQ2xp
ZW50UHJveHlfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5X2gKIAotI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25D
bGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJX
ZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIApA
QCAtNDcsMTIgKzQ3LDEyIEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENvbnRyb2xsZXIoV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKik7CiAgICAgdm9pZCBzdGFydFVwZGF0aW5n
KCk7CiAgICAgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICBXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgZGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6CiAgICAgV2Vi
RGV2aWNlT3JpZW50YXRpb25DbGllbnQqIG1fY2xpZW50OwotICAgIG11dGFibGUgUmVmUHRyPFdl
YkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiBtX2xhc3RPcmllbnRhdGlvbjsKKyAgICBtdXRhYmxl
IFJlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fbGFzdE9yaWVudGF0aW9u
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5jcHAKaW5kZXggMDk4Y2I0MjVjNjgzNDFh
YTU2OWNhMTBlNTJmZjk4OTM0MWFjYWI1NC4uMmJmYTRjMTc1ZjhiZTJlZmI4MDA2MDY5MjUzNThk
NWQ0NzZiOGU0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2
aWNlT3JpZW50YXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRl
dmljZU9yaWVudGF0aW9uLmNwcApAQCAtMjYsMTIgKzI2LDEyIEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb24uaCIKIAotI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLVdlYkRldmlj
ZU9yaWVudGF0aW9uOjpXZWJEZXZpY2VPcmllbnRhdGlvbihjb25zdCBQYXNzUmVmUHRyPFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uPiYgb3JpZW50YXRpb24pCitXZWJEZXZpY2VPcmllbnRhdGlv
bjo6V2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VP
cmllbnRhdGlvbkRhdGE+JiBvcmllbnRhdGlvbikKIHsKICAgICBpZiAoIW9yaWVudGF0aW9uKSB7
CiAgICAgICAgIG1faXNOdWxsID0gdHJ1ZTsKQEAgLTU3LDcgKzU3LDcgQEAgV2ViRGV2aWNlT3Jp
ZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKGNvbnN0IFBhc3NSZWZQdHI8V2ViQ29yZTo6
RGV2aWNlT3JpZW4KICAgICBtX2Fic29sdXRlID0gb3JpZW50YXRpb24tPmFic29sdXRlKCk7CiB9
CiAKLVdlYkRldmljZU9yaWVudGF0aW9uJiBXZWJEZXZpY2VPcmllbnRhdGlvbjo6b3BlcmF0b3I9
KGNvbnN0IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+JiBvcmllbnRhdGlv
bikKK1dlYkRldmljZU9yaWVudGF0aW9uJiBXZWJEZXZpY2VPcmllbnRhdGlvbjo6b3BlcmF0b3I9
KGNvbnN0IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiYgb3JpZW50
YXRpb24pCiB7CiAgICAgaWYgKCFvcmllbnRhdGlvbikgewogICAgICAgICBtX2lzTnVsbCA9IHRy
dWU7CkBAIC04NCwxMSArODQsMTEgQEAgV2ViRGV2aWNlT3JpZW50YXRpb24mIFdlYkRldmljZU9y
aWVudGF0aW9uOjpvcGVyYXRvcj0oY29uc3QgUGFzc1JlZlB0cjxXZWJDb3JlOjoKICAgICByZXR1
cm4gKnRoaXM7CiB9CiAKLVdlYkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRy
PFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPigpIGNvbnN0CitXZWJEZXZpY2VPcmllbnRhdGlv
bjo6b3BlcmF0b3IgUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE+KCkg
Y29uc3QKIHsKICAgICBpZiAobV9pc051bGwpCiAgICAgICAgIHJldHVybiAwOwotICAgIHJldHVy
biBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKG1fY2FuUHJvdmlkZUFscGhhLCBt
X2FscGhhLCBtX2NhblByb3ZpZGVCZXRhLCBtX2JldGEsIG1fY2FuUHJvdmlkZUdhbW1hLCBtX2dh
bW1hLCBtX2NhblByb3ZpZGVBYnNvbHV0ZSwgbV9hYnNvbHV0ZSk7CisgICAgcmV0dXJuIFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKG1fY2FuUHJvdmlkZUFscGhhLCBtX2Fs
cGhhLCBtX2NhblByb3ZpZGVCZXRhLCBtX2JldGEsIG1fY2FuUHJvdmlkZUdhbW1hLCBtX2dhbW1h
LCBtX2NhblByb3ZpZGVBYnNvbHV0ZSwgbV9hYnNvbHV0ZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggYWE5MjQ5Zjc2NzEwZjg3MGMw
M2JkMzkxZDFmZTFjODcxM2ZlMmZiMi4uNDM1NTg0MWM2ZmQ0MTU4ZjM1YzM2OThkMjEyNjhiYTVl
MmQ4ZmNlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC0yNiw4ICsyNiw4IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0
YS5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSA8d3RmL1Bh
c3NSZWZQdHIuaD4KIApAQCAtMzUsOCArMzUsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9p
ZCBXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU9yaWVudGF0
aW9uKGNvbnN0IFdlYkRldmljZU9yaWVudGF0aW9uJiBvcmllbnRhdGlvbikKIHsKLSAgICBQYXNz
UmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiBkZXZpY2VPcmllbnRhdGlvbihvcmll
bnRhdGlvbik7Ci0gICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihk
ZXZpY2VPcmllbnRhdGlvbi5nZXQoKSk7CisgICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VEZXZp
Y2VPcmllbnRhdGlvbihzdGF0aWNfY2FzdDxQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVu
dGF0aW9uRGF0YT4gPihvcmllbnRhdGlvbikuZ2V0KCkpOwogfQogCiBXZWJDb3JlOjpEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIqIFdlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6Y29u
dHJvbGxlcigpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3Vw
cG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oIGIvU291cmNlL1dlYktpdC9lZmwvV2Vi
Q29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaAppbmRleCBiODAwNzdjYTVl
ZDE1ZGQxZWE2NGE3ZDljM2IwZjJhMzcxNDlhYjdjLi4wYmIxOTdjYjdmOWY0NmE0NTg0OWE1Y2Yz
YWQxMjk5ODEyOWZlODcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3Vw
cG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZs
L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmgKQEAgLTIwLDggKzIw
LDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmxfaAogI2RlZmluZSBEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudEVmbF9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5o
IgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25EYXRhLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMzMsNyArMzMs
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRh
dGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBkZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50R3RrLmggYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRh
dGlvbkNsaWVudEd0ay5oCmluZGV4IDJjNTI5NDk1ZjA1NDc5NzBiMDFhOTRiMjVlZjA0NTI1YWQ2
YjgxM2UuLmZjYWEyZDJlODFkZDczM2IxOWNlNTA3OTFkMWI5ODY4MDA1OWNlNTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xp
ZW50R3RrLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRHdGsuaApAQCAtMjEsOCArMjEsOCBAQAogI2lmbmRlZiBEZXZpY2VPcmll
bnRhdGlvbkNsaWVudEd0a19oCiAjZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50R3RrX2gK
IAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CiAKQEAgLTM0LDcgKzM0LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
dm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciop
OwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCk7CiAgICAgdmlydHVhbCB2b2lkIHN0
b3BVcGRhdGluZygpOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGxh
c3RPcmllbnRhdGlvbigpIGNvbnN0OworICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgZGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VPcmllbnRhdGlv
bkNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnQuaAppbmRleCBlZDQwN2ViODAxY2FlNDkzMzNjODUzNDg3YWIwM2E1YWUx
MmU2YzliLi43ZTQ5ODcxYzAwYTkxODJhMWQ2ZjBkZGVjOWM5OTAyMjlkOGU1YTc5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VPcmllbnRhdGlv
bkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmlj
ZU9yaWVudGF0aW9uQ2xpZW50LmgKQEAgLTQ2LDcgKzQ2LDcgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgdm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ciopIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCkgT1ZFUlJJREU7
CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpIE9WRVJSSURFOwotICAgIHZpcnR1YWwg
V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IE9WRVJS
SURFOworICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3Jp
ZW50YXRpb24oKSBjb25zdCBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCkgT1ZFUlJJREU7CiAKIHByaXZhdGU6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VPcmllbnRhdGlv
bkNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmljZU9y
aWVudGF0aW9uQ2xpZW50Lm1tCmluZGV4IDNhNGQ1ZDdkZDg5OTcxNGE3NTRkNmY1ODljYzM2MTg2
YTM3ZmJiNjMuLmFhYTAzMWE0YjgxNzA2NzFhYzlkMWI0ODVjZTg2YTVlOWY1ZWUxZmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0
aW9uQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRl
dmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tCkBAIC01NSw3ICs1NSw3IEBAIHZvaWQgV2ViRGV2aWNl
T3JpZW50YXRpb25DbGllbnQ6OnN0b3BVcGRhdGluZygpCiAgICAgW2dldFByb3ZpZGVyKCkgc3Rv
cFVwZGF0aW5nXTsKIH0KIAotRGV2aWNlT3JpZW50YXRpb24qIFdlYkRldmljZU9yaWVudGF0aW9u
Q2xpZW50OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAorRGV2aWNlT3JpZW50YXRpb25EYXRhKiBX
ZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudDo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKIHsKICAg
ICByZXR1cm4gY29yZShbZ2V0UHJvdmlkZXIoKSBsYXN0T3JpZW50YXRpb25dKTsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb24ubW0g
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uLm1tCmluZGV4
IDdiZTVkMGNhMzA5Nzk5NWIyOGU5Yzc2OTdhNTM4MTg3NmQzNzc1MGMuLmRiNzg5NGY5YzY5YWE3
MmY1NjcxNDMwOGI2ZDk5NTlkMzgzNTdjYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbQpAQCAtMjksNyArMjksNyBAQCB1c2luZyBu
YW1lc3BhY2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYkRldmljZU9yaWVudGF0aW9u
SW50ZXJuYWwKIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQ
dHI8RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbgorLSAoaWQpaW5pdFdp
dGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRh
Piljb3JlRGV2aWNlT3JpZW50YXRpb24KIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAg
IGlmICghc2VsZikKQEAgLTQyLDcgKzQyLDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAK
IEBpbXBsZW1lbnRhdGlvbiBXZWJEZXZpY2VPcmllbnRhdGlvbiAoSW50ZXJuYWwpCiAKLS0gKGlk
KWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uPiljb3JlRGV2aWNlT3JpZW50YXRpb24KKy0gKGlkKWluaXRXaXRoQ29yZURl
dmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0
YT4pY29yZURldmljZU9yaWVudGF0aW9uCiB7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAg
ICBpZiAoIXNlbGYpCkBAIC01NSw3ICs1NSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
CiBAaW1wbGVtZW50YXRpb24gV2ViRGV2aWNlT3JpZW50YXRpb24KIAotRGV2aWNlT3JpZW50YXRp
b24qIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorRGV2aWNlT3JpZW50
YXRpb25EYXRhKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKIHsKICAg
ICByZXR1cm4gb3JpZW50YXRpb24gPyBvcmllbnRhdGlvbi0+bV9pbnRlcm5hbC0+bV9vcmllbnRh
dGlvbi5nZXQoKSA6IDA7CiB9CkBAIC02NSw3ICs2NSw3IEBAIERldmljZU9yaWVudGF0aW9uKiBj
b3JlKFdlYkRldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKICAgICBzZWxmID0gW3N1cGVy
IGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBtX2ludGVy
bmFsID0gW1tXZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsIGFsbG9jXSBpbml0V2l0aENvcmVE
ZXZpY2VPcmllbnRhdGlvbjpEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKGNhblByb3ZpZGVBbHBo
YSwgYWxwaGEsIGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEsIGdhbW1hKV07
CisgICAgbV9pbnRlcm5hbCA9IFtbV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbCBhbGxvY10g
aW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVh
dGUoY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3Zp
ZGVHYW1tYSwgZ2FtbWEpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsLmggYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwuaApp
bmRleCBiN2M2YWE1M2I0YmEzZTI4ZmEzYzJkM2NkNjRkZDg2MTExY2I4NTFjLi41ZGVkZDA4MGM3
NmY0NDg1NDkyOTkyZjk0NzdhOGVjYmE0MWRlZTllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwuaApAQCAtMjUs
MjEgKzI1LDIxIEBACiAKICNpbXBvcnQgIldlYkRldmljZU9yaWVudGF0aW9uLmgiCiAKLSNpbXBv
cnQgPFdlYkNvcmUvRGV2aWNlT3JpZW50YXRpb24uaD4KKyNpbXBvcnQgPFdlYkNvcmUvRGV2aWNl
T3JpZW50YXRpb25EYXRhLmg+CiAjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CiAKIEBpbnRlcmZhY2Ug
V2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbCA6IE5TT2JqZWN0IHsKIEBwdWJsaWMKLSAgICBS
ZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+IG1fb3JpZW50YXRpb247CisgICAgUmVm
UHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlvbjsKIH0KIAot
LSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6
RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbjsKKy0gKGlkKWluaXRXaXRo
Q29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRGF0YT4pY29yZURldmljZU9yaWVudGF0aW9uOwogQGVuZAogCiBAaW50ZXJmYWNlIFdlYkRl
dmljZU9yaWVudGF0aW9uIChJbnRlcm5hbCkKIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3Jp
ZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZp
Y2VPcmllbnRhdGlvbjsKKy0gKGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNz
UmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4pY29yZURldmljZU9yaWVudGF0
aW9uOwogCiBAZW5kCiAKLVdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uKiBjb3JlKFdlYkRldmlj
ZU9yaWVudGF0aW9uKik7CitXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGNvcmUoV2Vi
RGV2aWNlT3JpZW50YXRpb24qKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwIGIvU291cmNlL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKaW5kZXggZTcwYmYwMDRh
NDkxMjZmNDRiZDE0NzVkZDQ4MmNhODI3MjVkZGZlZS4uNTg0MDE5OWU2NmU1NDg1YjM3NTRiMTA5
MzNhMTgyNWE3ZWJkMGZlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKQEAgLTMzLDkgKzMzLDkg
QEAKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51Q2xpZW50
UXQuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUNvbnRyb2xsZXIuaCIKLSNpbmNsdWRlICJEZXZp
Y2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5o
IgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgorI2luY2x1ZGUgIkRl
dmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5j
bHVkZSAiRWRpdG9yLmgiCiAjaW5jbHVkZSAiRWRpdG9yQ2xpZW50UXQuaCIKQEAgLTc3OSw3ICs3
NzksNyBAQCB2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRNb2NrRGV2aWNlT3JpZW50
YXRpb24oUVdlYlBhZ2UqIHBhZ2UsIGJvb2wgY2FuUAogI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5U
QVRJT04pCiAgICAgUGFnZSogY29yZVBhZ2UgPSBRV2ViUGFnZVByaXZhdGU6OmNvcmUocGFnZSk7
CiAgICAgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrKiBtb2NrQ2xpZW50ID0gdG9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudE1vY2soRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpmcm9tKGNv
cmVQYWdlKS0+Y2xpZW50KCkpOwotICAgIG1vY2tDbGllbnQtPnNldE9yaWVudGF0aW9uKERldmlj
ZU9yaWVudGF0aW9uOjpjcmVhdGUoY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJl
dGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEpKTsKKyAgICBtb2NrQ2xpZW50LT5zZXRP
cmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShjYW5Qcm92aWRlQWxwaGEs
IGFscGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1tYSkpOwog
I2VuZGlmCiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148819</attachid>
            <date>2012-06-21 09:43:03 -0700</date>
            <delta_ts>2012-06-22 01:52:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88663-20120621174302.patch</filename>
            <type>text/plain</type>
            <size>69506</size>
            <attacher name="Amy Ousterhout">aousterh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWI1NWI4M2YzYzc2MmVk
NjBiNDc3NjU5NmZlYjU0OGViNDI3ODlkMC4uMzY2MjIzYmI2MTQ5YzkzYzFhMGIyZTdlYTBjMDNl
YjAyZThiODRjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDczIEBACisyMDEyLTA2LTIxICBBbXkg
T3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERl
dmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlz
IGlzIHNpbXBseSBhIG5hbWUgY2hhbmdlLgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50
YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhIGluIG9yZGVyIHRvIGJlIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICBVcGRhdGVkIGFsbCBmaWxlcyB0aGF0IHVz
ZSBEZXZpY2VPcmllbnRhdGlvbi4KKyAgCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAg
ICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAg
ICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBX
ZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRGV2aWNlT3JpZW50YXRp
b25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdz
L3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25F
dmVudENhbGxiYWNrKToKKyAgICAgICAgKiBkb20vRE9NQWxsSW5PbmUuY3BwOgorICAgICAgICAq
IGRvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudCk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbik6CisgICAgICAgICog
ZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIpOgorICAgICAgICAqIGRvbS9EZXZp
Y2VPcmllbnRhdGlvbkRhdGEuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uLmNwcC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEpOgorICAgICAgICAoV2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjphbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGE6OmJldGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3Jp
ZW50YXRpb25EYXRhOjpnYW1tYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bkRhdGE6OmFic29sdXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0
YTo6Y2FuUHJvdmlkZUFscGhhKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RGF0YTo6Y2FuUHJvdmlkZUJldGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhOjpjYW5Qcm92aWRlR2FtbWEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmll
bnRhdGlvbkRhdGEuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmll
bnRhdGlvbi5oLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlv
bkRhdGEpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZl
bnQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmlj
ZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50
Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6Om9yaWVudGF0aW9uKToKKyAg
ICAgICAgKiBsb2FkZXIvRW1wdHlDbGllbnRzLmg6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eURl
dmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24pOgorICAgICAgICAqIHBsYXRm
b3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24pOgorICAgICAg
ICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmg6CisgICAgICAg
IChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6Omxhc3RPcmllbnRhdGlvbik6
CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2spOgorICAgICAgICAqIHBsYXRm
b3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwOgorICAgICAgICAoRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRRdCk6CisgICAgICAgICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRRdC5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdCk6CisgICAg
ICAgICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0Lmg6CisgICAgICAg
IChEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQpOgorIAogMjAxMi0wNi0yMCAgSGFucyBXZW5u
Ym9yZyAgPGhhbnNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFNwZWVjaCBKYXZhU2NyaXB0IEFQ
STogU3BlZWNoUmVjb2duaXRpb24gc2hvdWxkIGhvb2sgdXAgd2l0aCBBY3RpdmVET01PYmplY3Qg
bW9yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggYTE3Mjg1Zjc5NTQwYmFlZDRl
MmRhM2I5MzVjZGJiYjI3ZDZiYWExOC4uY2JkMjg5YmYxOGQzNzA5MDI0ODAyYWU5YjdjZjVlODM4
ZjllNzhkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTItMDYtMjEgIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRh
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQg
ZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9m
IERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmll
bnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaDoKKyAg
ICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeSk6CisKIDIwMTItMDYtMjEg
IE1pa2UgRmVudG9uICA8bWlmZW50b25AcmltLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0g
SW5wdXQgbW9kZSBzaG91bGQgYWRhcHQgYXV0b21hdGljYWxseSB0byBzZXR0aW5ncyBjaGFuZ2Vz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGY3NTU2YWNjYzAxZjY4YWNkOGU1NWZkNGZm
ODhkYWJjZDY1NWNmYjEuLjZhY2Y1MmQyNTk5ZjNiNTdiZDEzODNiN2Q1ODFkN2VkNGUzZGJjMzAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTItMDYtMjEg
IEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbmFt
ZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8gdXNl
IHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9yaWVu
dGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEg
Y29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAqIHB1
YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oOgorICAgICAgICAoV2ViRGV2aWNlT3JpZW50YXRp
b24pOgorICAgICAgICAqIHNyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6RGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6bGFzdE9yaWVudGF0
aW9uKToKKyAgICAgICAgKiBzcmMvRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5oOgorICAg
ICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eSk6CisgICAgICAgICogc3JjL1dlYkRl
dmljZU9yaWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRGV2aWNlT3JpZW50YXRp
b246OldlYkRldmljZU9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViRGV2aWNlT3Jp
ZW50YXRpb246Om9wZXJhdG9yPSk6CisgICAgICAgIChXZWJLaXQ6OldlYkRldmljZU9yaWVudGF0
aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4p
OgorICAgICAgICAqIHNyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURl
dmljZU9yaWVudGF0aW9uKToKKwogMjAxMi0wNi0yMCAgWmVldiBMaWViZXIgIDx6bGllYmVyQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIERhbWFnZSB0cmFja2VyIGlzIG5vdCB1
c2VkIHdpdGhvdXQgcGFydGlhbCBzd2FwLCBjYXVzaW5nIHZhbGlkIHJlbmRlciBwYXNzZXMgdG8g
YmUgcmVtb3ZlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCmluZGV4IDYzMTIwYjk0YTU0MmRkMGI0MzJlODYzYmJi
ZWM3ZDg5Zjk1MDQ0NTkuLjE2NzRiNTg1NjRlMzM3YzU0Y2IwYjFkMWQ4NzA5NWFjM2IyYzcyNDIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNi0yMSAgQW15IE91c3Rl
cmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZpY2VP
cmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJlbmFt
ZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24uCisg
ICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBjb25zaXN0ZW50
IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaDoKKyAgICAgICAgKERldmljZU9yaWVudGF0
aW9uQ2xpZW50RWZsKToKKwogMjAxMi0wNi0xOSAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2aWxs
YXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBDYWxsaW5nIG5hdGl2ZUltYWdlRm9yQ3VycmVudEZy
YW1lKCkgY2F1c2VzIGFzc2VydGlvbiBmYWlsdXJlOiBtX3ZlcmlmaWVyLmlzU2FmZVRvVXNlKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Z3RrL0NoYW5nZUxvZwppbmRleCAyMGJkZDA4NWU3NGU3OTBjZWVkYTEwMjM0OWQyMGQyMmYyYjAx
YzNkLi4yOWZjZTkyYjYyYzg4ZWJlZmI3YWQ1NTI5Y2Y1NmMxMzI0ZmU4ZjdjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ndGsvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDYtMjEgIEFteSBPdXN0ZXJob3V0ICA8YW91
c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24g
dG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9y
aWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlz
IGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmlj
ZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0RldmljZU9y
aWVudGF0aW9uQ2xpZW50R3RrLmg6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0
ayk6CisKIDIwMTItMDYtMjEgIERhbmllbCBEcmFrZSAgPGRzZEBsYXB0b3Aub3JnPgogCiAgICAg
ICAgIFtHVEtdIEJhY2twb3J0IHJ1bi1maWxlLWNob29zZXIgdG8gV2ViS2l0MQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nCmluZGV4IGU0OGI0YjY1OTk5YzAwMWZiNWNkMGQxMmQyOGUyM2UyMTc4N2IyN2MuLjZjOTQx
MWM5NWY5YzllZGQwNThiZDJjNTIyMmQzN2Q4NTU0NzIxMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOSBAQAorMjAxMi0wNi0yMSAgQW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VP
cmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25E
YXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24uCisgICAgICAgIFRoaXMgY2hhbmdlIG1h
a2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBjb25zaXN0ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0
YS4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5o
OgorICAgICAgICAoV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQpOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRGV2
aWNlT3JpZW50YXRpb25DbGllbnQ6Omxhc3RPcmllbnRhdGlvbik6CisgICAgICAgICogV2ViVmll
dy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRldmljZU9y
aWVudGF0aW9uSW50ZXJuYWwuaDoKKwogMjAxMi0wNi0yMCAgR2FycmV0IEtlbGx5ICA8Z2RrQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBNb3ZpbmcgY29va2llRW5hYmxlZC9zZXRDb29raWVFbmFi
bGVkIGZyb20gUGFnZSB0byBTZXR0aW5ncy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggZGM5MDg0YTliODRk
YzdiNGM0YmJiYjI5MmFkMmViZGNjOWRjYWRmMC4uZDUzYzZiZTdjNWZjYWI0YWViYTI0NDVmYTMw
NGRmZjNhZDlkMzkwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNi0y
MSAgQW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVu
YW1lZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1
c2UgdGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3Jp
ZW50YXRpb24uCisgICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0
YSBjb25zaXN0ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwOgorICAgICAgICAoRHVt
cFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldE1vY2tEZXZpY2VPcmllbnRhdGlvbik6CisgICAgICAg
IAogMjAxMi0wNi0yMSAgVGhpYWdvIE1hcmNvcyBQLiBTYW50b3MgIDx0aGlhZ28uc2FudG9zQGlu
dGVsLmNvbT4KIAogICAgICAgICBbV0syXVtRdF0gQ29sb3IgY2hvb3NlciBBUEkgbWlzc2luZwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAppbmRleCAyOWU4OGY1MjVmZWEwM2JkMDNjYzVlOWJlM2U4N2ZmMzE0
NWU1NzZlLi5iNjA3MDM5NjBkZTQxNjdhYWEzODJiN2RmMzk5NWNkMmE2ZTA1MjAwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dApAQCAtNTY2LDggKzU2Niw4IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMKICAg
ICBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAKICAgICBkb20vRGV2aWNlTW90aW9uRGF0
YS5jcHAKICAgICBkb20vRGV2aWNlTW90aW9uRXZlbnQuY3BwCi0gICAgZG9tL0RldmljZU9yaWVu
dGF0aW9uLmNwcAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisgICAg
ZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25F
dmVudC5jcHAKICAgICBkb20vRG9jdW1lbnQuY3BwCiAgICAgZG9tL0RvY3VtZW50TWFya2VyQ29u
dHJvbGxlci5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3Qu
YW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDk4NWRiOWE3MDdm
ODZjZmFjNzk4MzE3YzE1ZGZhZDEyOGZiYjM1ZGEuLjczNzY3YzQ1OTMzNTc4MTcwZmNkMzk2OWEx
MjdjMmU1OWM1MjkxMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTgyMywx
MCArMTgyMywxMCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b24uY3BwIFwKKwlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBc
CisJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5oIFwKIAlTb3VyY2Uv
V2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbi5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnRGcmFnbWVudC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudEZyYWdtZW50LmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFy
Z2V0LnByaSBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggYjlkZGY5MzU2ZTJiMmJl
OGQyZmE4NDA4MzM5NjQ5YjFhNTQ5MGY0Yy4uZGZjNjliM2EzYTg3YjJlNWE2ODM5MzQwNGFkNjQ4
Y2JlN2RjOTFlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9T
b3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCkBAIC01MzEsOCArNTMxLDggQEAgU09VUkNFUyArPSBc
CiAgICAgZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIFwKICAgICBkb20vRGV2aWNlTW90
aW9uRGF0YS5jcHAgXAogICAgIGRvbS9EZXZpY2VNb3Rpb25FdmVudC5jcHAgXAotICAgIGRvbS9E
ZXZpY2VPcmllbnRhdGlvbi5jcHAgXAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuY3BwIFwKKyAgICBkb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBcICAgIAogICAgIGRv
bS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBcCiAgICAgZG9tL0RvY3VtZW50LmNwcCBcCiAg
ICAgZG9tL0RvY3VtZW50RXZlbnRRdWV1ZS5jcHAgXApAQCAtMTcxMCw5ICsxNzEwLDkgQEAgSEVB
REVSUyArPSBcCiAgICAgZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaCBcCiAgICAgZG9tL0Rl
dmljZU1vdGlvbkRhdGEuaCBcCiAgICAgZG9tL0RldmljZU1vdGlvbkV2ZW50LmggXAotICAgIGRv
bS9EZXZpY2VPcmllbnRhdGlvbi5oIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQu
aCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIFwKKyAgICBkb20vRGV2
aWNlT3JpZW50YXRpb25EYXRhLmggXAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmgg
XAogICAgIGRvbS9Eb2N1bWVudC5oIFwKICAgICBkb20vRG9jdW1lbnRGcmFnbWVudC5oIFwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5leHAuaW4KaW5kZXggNzMzNmM5M2Y0NWE5YzBmZmExYjI3MTdkYzE1YjIwOThiNDYx
ZDc3Yy4uZTQ4Nzg5Mjg1ODY0ODQwYmY4YTAwYWZjNjAwNTllZGI5MjRjODZmMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5leHAuaW4KQEAgLTYxMyw3ICs2MTMsNyBAQCBfX1pON1dlYkNvcmUyNlVzZXJUeXBpbmdH
ZXN0dXJlSW5kaWNhdG9yMjhmb2N1c2VkRWxlbWVudEF0R2VzdHVyZVN0YXJ0RXYKIF9fWk43V2Vi
Q29yZTI2c3RvcE9ic2VydmluZ0Nvb2tpZUNoYW5nZXNFdgogX19aTjdXZWJDb3JlMjdBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZUJhc2VDMkV2CiBfX1pON1dlYkNvcmUyN0NTU0NvbXB1dGVkU3R5bGVE
ZWNsYXJhdGlvbkMxRU4zV1RGMTBQYXNzUmVmUHRySU5TXzROb2RlRUVFYlJLTlMxXzZTdHJpbmdF
Ci1fX1pON1dlYkNvcmUyN0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazE0c2V0T3JpZW50YXRp
b25FTjNXVEYxMFBhc3NSZWZQdHJJTlNfMTdEZXZpY2VPcmllbnRhdGlvbkVFRQorX19aTjdXZWJD
b3JlMjdEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2sxNHNldE9yaWVudGF0aW9uRU4zV1RGMTBQ
YXNzUmVmUHRySU5TXzIxRGV2aWNlT3JpZW50YXRpb25EYXRhRUVFCiBfX1pON1dlYkNvcmUyN0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50TW9ja0MxRXYKIF9fWk43V2ViQ29yZTI3c3RhcnRPYnNlcnZp
bmdDb29raWVDaGFuZ2VzRXYKIF9fWk43V2ViQ29yZTI4ZW5jb2RlV2l0aFVSTEVzY2FwZVNlcXVl
bmNlc0VSS04zV1RGNlN0cmluZ0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
Z3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCBiNGYxNDFhMWNiMjY1Njdi
ZmU4NDkxMWU4NGUyY2NjODNiYWJlZGVhLi44Y2QyMDA2OTY0OGViMmQ1YTE3Y2QzZjZmN2ZhYTYw
MmQ1ZjBmNTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC02MjUsOCArNjI1LDggQEAKICAgICAgICAg
ICAgICdkb20vRE9NVGltZVN0YW1wLmgnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VNb3Rpb25D
bGllbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU1vdGlvbkRhdGEuaCcsCi0gICAgICAg
ICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uLmgnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5oJywKKyAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25E
YXRhLmgnLAogICAgICAgICAgICAgJ2RvbS9Eb2N1bWVudC5oJywKICAgICAgICAgICAgICdkb20v
RG9jdW1lbnRGcmFnbWVudC5oJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnRNYXJrZXIuaCcs
CkBAIC01Mjg2LDkgKzUyODYsOSBAQAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VNb3Rpb25EYXRh
LmgnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VNb3Rpb25FdmVudC5jcHAnLAogICAgICAgICAg
ICAgJ2RvbS9EZXZpY2VNb3Rpb25FdmVudC5oJywKLSAgICAgICAgICAgICdkb20vRGV2aWNlT3Jp
ZW50YXRpb24uY3BwJywKICAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
JywKKyAgICAgICAgICAgICdkb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCcsCiAgICAgICAg
ICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwJywKICAgICAgICAgICAgICdkb20v
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnQuY3Bw
JywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXgg
MDU2Zjg5NGI2ZTIzMzkwMmJmNDMyMTUwMzE4MmU2NzM1MmY0ZWYxYS4uNWJhZmE1MjljODlkZTFh
OWJhNzk0NDM4NTIyNzI5NmU2YTcwODQ1ZSAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTQ5MjMxLDcgKzQ5MjMxLDExIEBACiAJCQkJPgogCQkJ
PC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRh
dGlvbi5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25DbGll
bnQuaCIKKwkJCQk+CisJCQk8L0ZpbGU+CisJCQk8RmlsZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5c
ZG9tXERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAiCiAJCQkJPgogCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbgogCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKQEAgLTQ5MjgzLDE1ICs0OTI4Nywx
MSBAQAogCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJ
CVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uLmgiCi0JCQkJPgotCQkJPC9G
aWxlPgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlv
bkNsaWVudC5oIgorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5oIgogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRo
PSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCIKKwkJCQlSZWxhdGl2ZVBh
dGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNv
bmZpZ3VyYXRpb24KIAkJCQkJTmFtZT0iRGVidWd8V2luMzIiCkBAIC00OTM0Myw5ICs0OTM0Myw5
IEBACiAJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJ
UmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAJCQkJPgotCQkJ
PC9GaWxlPgorCQkJPC9GaWxlPgkKIAkJCTxGaWxlCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21c
RGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAiCiAJCQkJPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDQ5MmZjMTIzMzVhNGE3ZmM1
Y2IwODY1Yzc4ZmE2YTVlMDU5YTdmY2IuLjIxN2FmNTZmZmViODRhYTM0MWU5NGM1NTYwOWU2YzEw
ZWVlNDQ2NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTE2MDMsNyArMTYwMyw3IEBACiAJCTU3Q0Y0Qzg3MTRGNzU5N0EwMEVD
RkYxNCAvKiBFbGVtZW50U2hhZG93LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1N0NGNEM4NTE0Rjc1OTdBMDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRvdy5o
ICovOyB9OwogCQk1OTA1QURCRjEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTA1QURCRDEz
MDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5jcHAgKi87IH07CiAJCTU5MDVBREMwMTMw
MkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTA1QURCRTEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJl
ZVZpZXdlci5oICovOyB9OwotCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3Jp
ZW50YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbi5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU5MEUxQjQ5MTFFNEVG
NEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBE
ZXZpY2VPcmllbnRhdGlvbkRhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk1OTBFMUI0QjExRTRFRjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmll
bnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU5MEUxQjRBMTFFNEVGNzAwMDY5Rjc4NCAvKiBKU0RldmljZU9yaWVudGF0
aW9uRXZlbnRDdXN0b20uY3BwICovOyB9OwogCQk1OTEwMkZCQjE0MzI3RDNCMDAzQzlEMDQgLyog
Q29udGVudFNlYXJjaFV0aWxzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU5MTAyRkI5MTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRp
bHMuY3BwICovOyB9OwogCQk1OTEwMkZCQzE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJj
aFV0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
OTEwMkZCQTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNlYXJjaFV0aWxzLmggKi87IH07CkBA
IC0xNjM5LDcgKzE2MzksNyBAQAogCQk1OUMyN0YwNzEzOEQyOENGMDA3OUI3RTIgLyogTmV0d29y
a1Jlc291cmNlc0RhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDU5QzI3RjA2MTM4RDI4Q0YwMDc5QjdFMiAvKiBOZXR3b3JrUmVzb3VyY2VzRGF0YS5o
ICovOyB9OwogCQk1OUMyODA0NTEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5QzI4MDQzMTM4REMy
NDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuY3BwICovOyB9OwogCQk1OUMyODA0NjEzOERDMjQxMDA3
OUI3RTIgLyogWE1MRXJyb3JzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1OUMyODA0NDEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmggKi87IH07
Ci0JCTU5RDFDMTA0MTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbi5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUQxQzEwMzExRUI1
RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24uY3BwICovOyB9OworCQk1OUQxQzEwNDEx
RUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhD
OCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwICovOyB9OwogCQk1OURFNzkwNDEzRjE2QzdG
MDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OURFNzkwMzEzRjE2QzdGMDAwN0ZDREYgLyogSmF2YU1ldGhv
ZEpTQy5jcHAgKi87IH07CiAJCTU5REU3OTA2MTNGMTZDOEMwMDA3RkNERiAvKiBKYXZhTWV0aG9k
SlNDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OURF
NzkwNTEzRjE2QzhDMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5oICovOyB9OwogCQk1OUU1NjBB
NzExMDUzMzY2MDBBQTEyNTggLyogSmF2YUNsYXNzSlNDLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUU1NjBBNjExMDUzMzY2MDBBQTEyNTggLyogSmF2
YUNsYXNzSlNDLmggKi87IH07CkBAIC04NjgwLDcgKzg2ODAsNyBAQAogCQk1N0NGNEM4NTE0Rjc1
OTdBMDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBFbGVtZW50U2hhZG93Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5
MDVBREJEMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTFRyZWVWaWV3ZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1OTA1QURCRTEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYTUxUcmVlVmlld2VyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBE
ZXZpY2VPcmllbnRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZp
Y2VPcmllbnRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OTBFMUI0ODEx
RTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRGF0YS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1OTBFMUI0QTExRTRFRjcwMDA2OUY3ODQgLyogSlNEZXZpY2VPcmll
bnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTU5MTAyRkI5MTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRp
bHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29udGVudFNlYXJj
aFV0aWxzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkxMDJGQkExNDMyN0Qz
QjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb250ZW50U2VhcmNoVXRpbHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTg3MTksNyArODcxOSw3IEBACiAJCTU5QzI3RjA2MTM4RDI4Q0YwMDc5QjdFMiAvKiBO
ZXR3b3JrUmVzb3VyY2VzRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBO
ZXR3b3JrUmVzb3VyY2VzRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OUMy
ODA0MzEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFhNTEVycm9ycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTU5QzI4MDQ0MTM4REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MRXJyb3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbi5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlv
bi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2
MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTlERTc5MDMxM0YxNkM3RjAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0Mu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSmF2YU1ldGhvZEpTQy5j
cHA7IHBhdGggPSBqc2MvSmF2YU1ldGhvZEpTQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTU5REU3OTA1MTNGMTZDOEMwMDA3RkNERiAvKiBKYXZhTWV0aG9kSlNDLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEphdmFNZXRob2RKU0MuaDsgcGF0aCA9IGpzYy9K
YXZhTWV0aG9kSlNDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5RTU2MEE2MTEw
NTMzNjYwMEFBMTI1OCAvKiBKYXZhQ2xhc3NKU0MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gSmF2YUNsYXNzSlNDLmg7IHBhdGggPSBqc2MvSmF2YUNsYXNzSlNDLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMTI4NCwxMSArMjEyODQsMTEgQEAKIAkJCQkzMUZC
MUE1NDEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuY3BwICovLAogCQkJCTMx
RkIxQTU1MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5oICovLAogCQkJCTMx
RkIxQTU2MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5pZGwgKi8sCi0JCQkJ
NTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNwcCAqLywKLQkJ
CQk1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCAqLywKIAkJ
CQk1OUE4RjFENzExQTY5NTIwMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCAq
LywKIAkJCQk1OUE4RjFEMzExQTY5NTA4MDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyLmNwcCAqLywKIAkJCQk1OUE4RjFENTExQTY5NTEzMDAxQUMzNEEgLyogRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmggKi8sCisJCQkJNTlEMUMxMDMxMUVCNURDRjAwQjYzOEM4IC8q
IERldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgKi8sCisJCQkJNTkwRTFCNDgxMUU0RUY0QjAwNjlG
Nzg0IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5oICovLAogCQkJCTU5QTg1RUExMTE5RDY4RDkw
MERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCAqLywKIAkJCQk1OUE4NUVBMzEx
OUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovLAogCQkJCTU5QTg1
RUFBMTE5RDdCNkUwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCAqLywKQEAg
LTIyMjUzLDEwICsyMjI1MywxMCBAQAogCQkJCTMxRkIxQTU5MTIwQTVEMDYwMERDMDJBMCAvKiBE
ZXZpY2VNb3Rpb25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUZCMUE1QjEyMEE1
RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFG
QjFBNUQxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmggaW4gSGVhZGVycyAq
LywKLQkJCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCBp
biBIZWFkZXJzICovLAogCQkJCTU5QThGMUQ4MTFBNjk1MjAwMDFBQzM0QSAvKiBEZXZpY2VPcmll
bnRhdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTkzMDlBMTMxMUY0QUU2QTAwMjUw
NjAzIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTlBOEYxRDYxMUE2OTUxMzAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTkwRTFCNDkxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9y
aWVudGF0aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTlBODVFQTQxMTlENjhFQzAwREVG
MUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNFQ0FE
RkM3MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0VDQURGQzkxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuaCBp
biBIZWFkZXJzICovLApAQCAtMjU3NTksOSArMjU3NTksOSBAQAogCQkJCTMxRkIxQTU4MTIwQTVE
MDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTMxRkIxQTVBMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25EYXRhLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTMxRkIxQTVDMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25F
dmVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1OUQxQzEwNDExRUI1RENGMDBCNjM4QzggLyog
RGV2aWNlT3JpZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTkzMDlBMTExMUY0QUU1
ODAwMjUwNjAzIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1OUE4RjFENDExQTY5NTA4MDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTU5RDFDMTA0MTFFQjVEQ0YwMEI2MzhDOCAv
KiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTlBODVFQTIx
MTlENjhEOTAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQ0VDQURGQzYxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0aXZl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNFQ0FERkM4MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0
YXRpb25Db21tYW5kLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAK
aW5kZXggZWM3ODcxZDUxMTI2ZmVkMmVjZTE3NjVlN2U1ZWVmYTRiNmNkZjY3Yi4uNWEwZmY3ZDcz
NTgxNTg4OTYzZmYyODk1YzU1ZTI3YmU0MGJmNDI5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20u
Y3BwCkBAIC0yOSw3ICsyOSw3IEBACiAKICNpbmNsdWRlICJKU0RldmljZU9yaWVudGF0aW9uRXZl
bnQuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCisjaW5jbHVkZSAiRGV2aWNl
T3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgog
CiB1c2luZyBuYW1lc3BhY2UgSlNDOwpAQCAtODMsNyArODMsNyBAQCBKU1ZhbHVlIEpTRGV2aWNl
T3JpZW50YXRpb25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQoRXhlY1N0YXRlKiBl
eGVjKQogICAgIGRvdWJsZSBnYW1tYSA9IGV4ZWMtPmFyZ3VtZW50KDUpLnRvTnVtYmVyKGV4ZWMp
OwogICAgIGJvb2wgYWJzb2x1dGVQcm92aWRlZCA9ICFleGVjLT5hcmd1bWVudCg1KS5pc1VuZGVm
aW5lZE9yTnVsbCgpOwogICAgIGJvb2wgYWJzb2x1dGUgPSBleGVjLT5hcmd1bWVudCg2KS50b0Jv
b2xlYW4oKTsKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG9yaWVudGF0aW9uID0gRGV2
aWNlT3JpZW50YXRpb246OmNyZWF0ZShhbHBoYVByb3ZpZGVkLCBhbHBoYSwgYmV0YVByb3ZpZGVk
LCBiZXRhLCBnYW1tYVByb3ZpZGVkLCBnYW1tYSwgYWJzb2x1dGVQcm92aWRlZCwgYWJzb2x1dGUp
OworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG9yaWVudGF0aW9uID0gRGV2aWNl
T3JpZW50YXRpb25EYXRhOjpjcmVhdGUoYWxwaGFQcm92aWRlZCwgYWxwaGEsIGJldGFQcm92aWRl
ZCwgYmV0YSwgZ2FtbWFQcm92aWRlZCwgZ2FtbWEsIGFic29sdXRlUHJvdmlkZWQsIGFic29sdXRl
KTsKICAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KiBpbXAgPSBzdGF0aWNfY2FzdDxEZXZpY2VP
cmllbnRhdGlvbkV2ZW50Kj4oaW1wbCgpKTsKICAgICBpbXAtPmluaXREZXZpY2VPcmllbnRhdGlv
bkV2ZW50KHR5cGUsIGJ1YmJsZXMsIGNhbmNlbGFibGUsIG9yaWVudGF0aW9uLmdldCgpKTsKICAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3Rv
bS5jcHAKaW5kZXggZmMzZmMyMDI2ZDEwNTI1Y2VhY2RlMDRhNjRhMTZlYTFkYzA0ZTFiNi4uYmJk
YzNmY2U4YWE2N2JjODkyMjcyMzIyMjRmMDM1NWE2NTU3ZjJlYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3Rv
bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3Jp
ZW50YXRpb25FdmVudEN1c3RvbS5jcHAKQEAgLTI4LDcgKzI4LDcgQEAKIAogI2lmIEVOQUJMRShE
RVZJQ0VfT1JJRU5UQVRJT04pCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgorI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIlY4QmluZGluZy5oIgog
I2luY2x1ZGUgIlY4QmluZGluZ01hY3Jvcy5oIgogI2luY2x1ZGUgIlY4UHJveHkuaCIKQEAgLTkz
LDcgKzkzLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2aWNlT3JpZW50YXRpb25FdmVu
dDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnRDYWxsYmEKICAgICBkb3VibGUgZ2FtbWEgPSBh
cmdzWzVdLT5OdW1iZXJWYWx1ZSgpOwogICAgIGJvb2wgYWJzb2x1dGVQcm92aWRlZCA9ICFpc1Vu
ZGVmaW5lZE9yTnVsbChhcmdzWzZdKTsKICAgICBib29sIGFic29sdXRlID0gYXJnc1s2XS0+Qm9v
bGVhblZhbHVlKCk7Ci0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBvcmllbnRhdGlvbiA9
IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoYWxwaGFQcm92aWRlZCwgYWxwaGEsIGJldGFQcm92
aWRlZCwgYmV0YSwgZ2FtbWFQcm92aWRlZCwgZ2FtbWEsIGFic29sdXRlUHJvdmlkZWQsIGFic29s
dXRlKTsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBvcmllbnRhdGlvbiA9IERl
dmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGFscGhhUHJvdmlkZWQsIGFscGhhLCBiZXRhUHJv
dmlkZWQsIGJldGEsIGdhbW1hUHJvdmlkZWQsIGdhbW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBhYnNv
bHV0ZSk7CiAgICAgaW1wLT5pbml0RGV2aWNlT3JpZW50YXRpb25FdmVudCh0eXBlLCBidWJibGVz
LCBjYW5jZWxhYmxlLCBvcmllbnRhdGlvbi5nZXQoKSk7CiAgICAgcmV0dXJuIHY4OjpIYW5kbGU8
djg6OlZhbHVlPigpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RPTUFsbElu
T25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01BbGxJbk9uZS5jcHAKaW5kZXggMTQ4ZmMz
ZWM5ODJjOThmNmZiZDI0OWJjYmJjZTUxOTNiYzNiNzlkZS4uZDNkNDkwMmQ0Yzg2YWRkNjViNTFm
MzQ0ZGEyYjk5MGJiZTNhYjMwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RPTUFs
bEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NQWxsSW5PbmUuY3BwCkBAIC01
NSw4ICs1NSw4IEBACiAjaW5jbHVkZSAiRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAiCiAjaW5j
bHVkZSAiRGV2aWNlTW90aW9uRGF0YS5jcHAiCiAjaW5jbHVkZSAiRGV2aWNlTW90aW9uRXZlbnQu
Y3BwIgotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmNwcCIKICNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0
YS5jcHAiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAiCiAjaW5jbHVkZSAi
RG9jdW1lbnQuY3BwIgogI2luY2x1ZGUgIkRvY3VtZW50RXZlbnRRdWV1ZS5jcHAiCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb24uY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOWE4YzI1N2NhNzQxOTdjZTdiM2I4Mjg4NjhhZjYzNDEzNzg1ZDRjNS4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb24uY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTA2ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgot
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgT1dORVIgT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24u
aCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1QYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9u
PiBEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKCkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3
IERldmljZU9yaWVudGF0aW9uKTsKLX0KLQotUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4g
RGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZShib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFs
cGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2Ft
bWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUp
Ci17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbihjYW5Qcm92aWRl
QWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1t
YSwgY2FuUHJvdmlkZUFic29sdXRlLCBhYnNvbHV0ZSkpOwotfQotCi0KLURldmljZU9yaWVudGF0
aW9uOjpEZXZpY2VPcmllbnRhdGlvbigpCi0gICAgOiBtX2NhblByb3ZpZGVBbHBoYShmYWxzZSkK
LSAgICAsIG1fY2FuUHJvdmlkZUJldGEoZmFsc2UpCi0gICAgLCBtX2NhblByb3ZpZGVHYW1tYShm
YWxzZSkKLSAgICAsIG1fY2FuUHJvdmlkZUFic29sdXRlKGZhbHNlKQotICAgICwgbV9hbHBoYSgw
KQotICAgICwgbV9iZXRhKDApCi0gICAgLCBtX2dhbW1hKDApCi0gICAgLCBtX2Fic29sdXRlKGZh
bHNlKQotewotfQotCi1EZXZpY2VPcmllbnRhdGlvbjo6RGV2aWNlT3JpZW50YXRpb24oYm9vbCBj
YW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91Ymxl
IGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlk
ZUFic29sdXRlLCBib29sIGFic29sdXRlKQotICAgIDogbV9jYW5Qcm92aWRlQWxwaGEoY2FuUHJv
dmlkZUFscGhhKQotICAgICwgbV9jYW5Qcm92aWRlQmV0YShjYW5Qcm92aWRlQmV0YSkKLSAgICAs
IG1fY2FuUHJvdmlkZUdhbW1hKGNhblByb3ZpZGVHYW1tYSkKLSAgICAsIG1fY2FuUHJvdmlkZUFi
c29sdXRlKGNhblByb3ZpZGVBYnNvbHV0ZSkKLSAgICAsIG1fYWxwaGEoYWxwaGEpCi0gICAgLCBt
X2JldGEoYmV0YSkKLSAgICAsIG1fZ2FtbWEoZ2FtbWEpCi0gICAgLCBtX2Fic29sdXRlKGFic29s
dXRlKQotewotfQotCi1kb3VibGUgRGV2aWNlT3JpZW50YXRpb246OmFscGhhKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gbV9hbHBoYTsKLX0KLQotZG91YmxlIERldmljZU9yaWVudGF0aW9uOjpiZXRh
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9iZXRhOwotfQotCi1kb3VibGUgRGV2aWNlT3JpZW50
YXRpb246OmdhbW1hKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9nYW1tYTsKLX0KLQotYm9vbCBE
ZXZpY2VPcmllbnRhdGlvbjo6YWJzb2x1dGUoKSBjb25zdAotewotICAgIHJldHVybiBtX2Fic29s
dXRlOwotfQotCi1ib29sIERldmljZU9yaWVudGF0aW9uOjpjYW5Qcm92aWRlQWxwaGEoKSBjb25z
dAotewotICAgIHJldHVybiBtX2NhblByb3ZpZGVBbHBoYTsKLX0KLQotYm9vbCBEZXZpY2VPcmll
bnRhdGlvbjo6Y2FuUHJvdmlkZUJldGEoKSBjb25zdAotewotICAgIHJldHVybiBtX2NhblByb3Zp
ZGVCZXRhOwotfQotCi1ib29sIERldmljZU9yaWVudGF0aW9uOjpjYW5Qcm92aWRlR2FtbWEoKSBj
b25zdAotewotICAgIHJldHVybiBtX2NhblByb3ZpZGVHYW1tYTsKLX0KLQotYm9vbCBEZXZpY2VP
cmllbnRhdGlvbjo6Y2FuUHJvdmlkZUFic29sdXRlKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9j
YW5Qcm92aWRlQWJzb2x1dGU7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGM2NzdkNDMzMDg0MDIxNDdmYTYxYTM1OTUyZDRhZDg3M2FiZTc5MDYuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NCArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVS
IE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQot
I2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbl9oCi0jZGVmaW5lIERldmljZU9yaWVudGF0aW9uX2gK
LQotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQu
aD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBEZXZpY2VPcmllbnRhdGlvbiA6IHB1
YmxpYyBSZWZDb3VudGVkPERldmljZU9yaWVudGF0aW9uPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IGNyZWF0ZSgpOwotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBjcmVhdGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRv
dWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJv
dmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlID0gZmFsc2Us
IGJvb2wgYWJzb2x1dGUgPSBmYWxzZSk7Ci0KLSAgICBkb3VibGUgYWxwaGEoKSBjb25zdDsKLSAg
ICBkb3VibGUgYmV0YSgpIGNvbnN0OwotICAgIGRvdWJsZSBnYW1tYSgpIGNvbnN0OwotICAgIGJv
b2wgYWJzb2x1dGUoKSBjb25zdDsKLSAgICBib29sIGNhblByb3ZpZGVBbHBoYSgpIGNvbnN0Owot
ICAgIGJvb2wgY2FuUHJvdmlkZUJldGEoKSBjb25zdDsKLSAgICBib29sIGNhblByb3ZpZGVHYW1t
YSgpIGNvbnN0OwotICAgIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlKCkgY29uc3Q7Ci0KLXByaXZh
dGU6Ci0gICAgRGV2aWNlT3JpZW50YXRpb24oKTsKLSAgICBEZXZpY2VPcmllbnRhdGlvbihib29s
IGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3Vi
bGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92
aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpOwotCi0gICAgYm9vbCBtX2NhblByb3ZpZGVBbHBo
YTsKLSAgICBib29sIG1fY2FuUHJvdmlkZUJldGE7Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVHYW1t
YTsKLSAgICBib29sIG1fY2FuUHJvdmlkZUFic29sdXRlOwotICAgIGRvdWJsZSBtX2FscGhhOwot
ICAgIGRvdWJsZSBtX2JldGE7Ci0gICAgZG91YmxlIG1fZ2FtbWE7Ci0gICAgYm9vbCBtX2Fic29s
dXRlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRGV2aWNlT3Jp
ZW50YXRpb25faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQu
aAppbmRleCAyYzE2YjBjZDhiYzdhNzg1MDkxNmY4YmQwMWQ2NThmNWZmMDY5YzRiLi40MDQ5YzAz
YTRhMTQ0YTc0NTIyOWEwNTQxMzgxY2Q1N2UxNGM2NWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaApAQCAtMjgsMTggKzI4LDE3IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRGV2aWNlT3JpZW50YXRpb247CiBjbGFzcyBEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXI7CitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGE7CiBjbGFz
cyBQYWdlOwogCiBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkNsaWVudCB7CiBwdWJsaWM6CiAgICAg
dmlydHVhbCB+RGV2aWNlT3JpZW50YXRpb25DbGllbnQoKSB7fQotCiAgICAgdmlydHVhbCB2b2lk
IHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKikgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBk
YXRpbmcoKSA9IDA7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0
aW9uKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0
T3JpZW50YXRpb24oKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpID0gMDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggNWQ0YmNkZGZmMWI1
OWQ1Mjg2YTgyYmE1MWY5OGNjYWM0YTk4MDJkNS4uMGQwMDJjMWUyYmY2OTRmMWVmMjM0NDllZjUz
ZjQ5MzFjNDQwOTYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5jcHAKQEAgLTI2LDggKzI2LDggQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKIAotI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQu
aCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTU1LDcgKzU1LDcg
QEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQoVGltZXI8RGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyPioKICAgICBBU1NFUlRfVU5VU0VEKHRpbWVyLCB0aW1l
ciA9PSAmbV90aW1lcik7CiAgICAgQVNTRVJUKG1fY2xpZW50LT5sYXN0T3JpZW50YXRpb24oKSk7
CiAKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG9yaWVudGF0aW9uID0gbV9jbGllbnQt
Pmxhc3RPcmllbnRhdGlvbigpOworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG9y
aWVudGF0aW9uID0gbV9jbGllbnQtPmxhc3RPcmllbnRhdGlvbigpOwogICAgIFJlZlB0cjxEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50PiBldmVudCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkuZGV2aWNlb3JpZW50YXRpb25FdmVudCwgb3JpZW50YXRpb24uZ2V0KCkp
OwogCiAgICAgVmVjdG9yPFJlZlB0cjxET01XaW5kb3c+ID4gbGlzdGVuZXJzVmVjdG9yOwpAQCAt
MTI3LDcgKzEyNyw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWVF
dmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCiAgICAgICAgIGFkZExpc3Rl
bmVyKHdpbmRvdyk7CiB9CiAKLXZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRD
aGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCit2
b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRp
b24oRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlvbikKIHsKICAgICBSZWZQdHI8RGV2
aWNlT3JpZW50YXRpb25FdmVudD4gZXZlbnQgPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLmRldmljZW9yaWVudGF0aW9uRXZlbnQsIG9yaWVudGF0aW9uKTsKICAg
ICBWZWN0b3I8UmVmUHRyPERPTVdpbmRvdz4gPiBsaXN0ZW5lcnNWZWN0b3I7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKaW5kZXggN2Y4YzAw
OGYwNTZjYjk0OGQyNTYwNWMzNTFkZDk1ZmExNTM4YTNlNy4uMGY0MmJmNDMyODRkNmY5Y2JmZGEy
ZmJlODQ5OWMxNzFiZjQzNzIyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuaApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKLWNsYXNzIERldmljZU9yaWVudGF0aW9uOworY2xhc3MgRGV2aWNlT3JpZW50YXRp
b25EYXRhOwogY2xhc3MgRGV2aWNlT3JpZW50YXRpb25DbGllbnQ7CiAKIGNsYXNzIERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlciA6IHB1YmxpYyBTdXBwbGVtZW50PFBhZ2U+IHsKQEAgLTUwLDcg
KzUwLDcgQEAgcHVibGljOgogICAgIHZvaWQgc3VzcGVuZEV2ZW50c0ZvckFsbExpc3RlbmVycyhE
T01XaW5kb3cqKTsKICAgICB2b2lkIHJlc3VtZUV2ZW50c0ZvckFsbExpc3RlbmVycyhET01XaW5k
b3cqKTsKIAotICAgIHZvaWQgZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50
YXRpb24qKTsKKyAgICB2b2lkIGRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVu
dGF0aW9uRGF0YSopOwogCiAgICAgYm9vbCBpc0FjdGl2ZSgpIHsgcmV0dXJuICFtX2xpc3RlbmVy
cy5pc0VtcHR5KCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9y
aWVudGF0aW9uRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25E
YXRhLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42ZTczMDJmZDdmOGJiYjUyODliN2Y2ZTZlNTU2MTU0OTE4YmY2
YWE0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uRGF0YS5jcHAKQEAgLTAsMCArMSwxMDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IERldmljZU9yaWVudGF0
aW9uRGF0YTo6Y3JlYXRlKCkKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IERldmljZU9yaWVu
dGF0aW9uRGF0YSk7Cit9CisKK1Bhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBEZXZp
Y2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFs
cGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2Ft
bWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUp
Cit7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkRhdGEoY2FuUHJv
dmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwg
Z2FtbWEsIGNhblByb3ZpZGVBYnNvbHV0ZSwgYWJzb2x1dGUpKTsKK30KKworCitEZXZpY2VPcmll
bnRhdGlvbkRhdGE6OkRldmljZU9yaWVudGF0aW9uRGF0YSgpCisgICAgOiBtX2NhblByb3ZpZGVB
bHBoYShmYWxzZSkKKyAgICAsIG1fY2FuUHJvdmlkZUJldGEoZmFsc2UpCisgICAgLCBtX2NhblBy
b3ZpZGVHYW1tYShmYWxzZSkKKyAgICAsIG1fY2FuUHJvdmlkZUFic29sdXRlKGZhbHNlKQorICAg
ICwgbV9hbHBoYSgwKQorICAgICwgbV9iZXRhKDApCisgICAgLCBtX2dhbW1hKDApCisgICAgLCBt
X2Fic29sdXRlKGZhbHNlKQoreworfQorCitEZXZpY2VPcmllbnRhdGlvbkRhdGE6OkRldmljZU9y
aWVudGF0aW9uRGF0YShib29sIGNhblByb3ZpZGVBbHBoYSwgZG91YmxlIGFscGhhLCBib29sIGNh
blByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBjYW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBn
YW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJvb2wgYWJzb2x1dGUpCisgICAgOiBtX2Nh
blByb3ZpZGVBbHBoYShjYW5Qcm92aWRlQWxwaGEpCisgICAgLCBtX2NhblByb3ZpZGVCZXRhKGNh
blByb3ZpZGVCZXRhKQorICAgICwgbV9jYW5Qcm92aWRlR2FtbWEoY2FuUHJvdmlkZUdhbW1hKQor
ICAgICwgbV9jYW5Qcm92aWRlQWJzb2x1dGUoY2FuUHJvdmlkZUFic29sdXRlKQorICAgICwgbV9h
bHBoYShhbHBoYSkKKyAgICAsIG1fYmV0YShiZXRhKQorICAgICwgbV9nYW1tYShnYW1tYSkKKyAg
ICAsIG1fYWJzb2x1dGUoYWJzb2x1dGUpCit7Cit9CisKK2RvdWJsZSBEZXZpY2VPcmllbnRhdGlv
bkRhdGE6OmFscGhhKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9hbHBoYTsKK30KKworZG91Ymxl
IERldmljZU9yaWVudGF0aW9uRGF0YTo6YmV0YSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYmV0
YTsKK30KKworZG91YmxlIERldmljZU9yaWVudGF0aW9uRGF0YTo6Z2FtbWEoKSBjb25zdAorewor
ICAgIHJldHVybiBtX2dhbW1hOworfQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0YTo6YWJz
b2x1dGUoKSBjb25zdAoreworICAgIHJldHVybiBtX2Fic29sdXRlOworfQorCitib29sIERldmlj
ZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUFscGhhKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9jYW5Qcm92aWRlQWxwaGE7Cit9CisKK2Jvb2wgRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Q
cm92aWRlQmV0YSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY2FuUHJvdmlkZUJldGE7Cit9CisK
K2Jvb2wgRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlR2FtbWEoKSBjb25zdAorewor
ICAgIHJldHVybiBtX2NhblByb3ZpZGVHYW1tYTsKK30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlv
bkRhdGE6OmNhblByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY2FuUHJv
dmlkZUFic29sdXRlOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWRmOWI2NThmYWI4OWY4
ZTFhNGU3YWFiZmQyZGM3ZTkzOWUwNjUwNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaApAQCAtMCwwICsxLDY0IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9X
TkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkRhdGFfaAorI2RlZmluZSBEZXZpY2VPcmllbnRh
dGlvbkRhdGFfaAorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERldmljZU9yaWVu
dGF0aW9uRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPERldmljZU9yaWVudGF0aW9uRGF0YT4gewor
cHVibGljOgorICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gY3Jl
YXRlKCk7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBjcmVh
dGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0
YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wg
Y2FuUHJvdmlkZUFic29sdXRlID0gZmFsc2UsIGJvb2wgYWJzb2x1dGUgPSBmYWxzZSk7CisKKyAg
ICBkb3VibGUgYWxwaGEoKSBjb25zdDsKKyAgICBkb3VibGUgYmV0YSgpIGNvbnN0OworICAgIGRv
dWJsZSBnYW1tYSgpIGNvbnN0OworICAgIGJvb2wgYWJzb2x1dGUoKSBjb25zdDsKKyAgICBib29s
IGNhblByb3ZpZGVBbHBoYSgpIGNvbnN0OworICAgIGJvb2wgY2FuUHJvdmlkZUJldGEoKSBjb25z
dDsKKyAgICBib29sIGNhblByb3ZpZGVHYW1tYSgpIGNvbnN0OworICAgIGJvb2wgY2FuUHJvdmlk
ZUFic29sdXRlKCkgY29uc3Q7CisKK3ByaXZhdGU6CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRh
KCk7CisgICAgRGV2aWNlT3JpZW50YXRpb25EYXRhKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3Vi
bGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3Zp
ZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNv
bHV0ZSk7CisKKyAgICBib29sIG1fY2FuUHJvdmlkZUFscGhhOworICAgIGJvb2wgbV9jYW5Qcm92
aWRlQmV0YTsKKyAgICBib29sIG1fY2FuUHJvdmlkZUdhbW1hOworICAgIGJvb2wgbV9jYW5Qcm92
aWRlQWJzb2x1dGU7CisgICAgZG91YmxlIG1fYWxwaGE7CisgICAgZG91YmxlIG1fYmV0YTsKKyAg
ICBkb3VibGUgbV9nYW1tYTsKKyAgICBib29sIG1fYWJzb2x1dGU7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBEZXZpY2VPcmllbnRhdGlvbkRhdGFfaApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwCmluZGV4IDdkZWNjN2Mw
NjMyMTMyYjMyNjFmZDg0MDJlNWQ0MGM0NTFjODczNjcuLmJhYmM3N2U2YmZiMDIyYmU3NWY3MzJk
ZDM5M2M2NGY0NGUyNjMzNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50
YXRpb25FdmVudC5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUg
IkV2ZW50TmFtZXMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzYsMTcgKzM2LDE3IEBA
IERldmljZU9yaWVudGF0aW9uRXZlbnQ6On5EZXZpY2VPcmllbnRhdGlvbkV2ZW50KCkKIH0KIAog
RGV2aWNlT3JpZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudCgpCi0gICAgOiBt
X29yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoKSkKKyAgICA6IG1fb3JpZW50
YXRpb24oRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoKSkKIHsKIH0KIAotRGV2aWNlT3Jp
ZW50YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcm
IGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorRGV2aWNlT3JpZW50
YXRpb25FdmVudDo6RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2
ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlvbikKICAgICA6IEV2ZW50
KGV2ZW50VHlwZSwgZmFsc2UsIGZhbHNlKSAvLyBDYW4ndCBidWJibGUsIG5vdCBjYW5jZWxhYmxl
CiAgICAgLCBtX29yaWVudGF0aW9uKG9yaWVudGF0aW9uKQogewogfQogCi12b2lkIERldmljZU9y
aWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0
cmluZyYgdHlwZSwgYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIERldmljZU9yaWVudGF0
aW9uKiBvcmllbnRhdGlvbikKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmlj
ZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGJ1YmJsZXMs
IGJvb2wgY2FuY2VsYWJsZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlvbikKIHsK
ICAgICBpZiAoZGlzcGF0Y2hlZCgpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaAppbmRleCBkOTU5ODQzMTJmYjE1MzBiYjBiYmRj
M2EwNDQyZTE1NTdhYTFhY2Y5Li5lMTk2ZWE1YjkzZTRjZjc0ODRiOTNjYjdlY2ZlZWFkYjdmYzQy
M2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgKQEAg
LTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBEZXZpY2VPcmll
bnRhdGlvbjsKK2NsYXNzIERldmljZU9yaWVudGF0aW9uRGF0YTsKIAogY2xhc3MgRGV2aWNlT3Jp
ZW50YXRpb25FdmVudCA6IHB1YmxpYyBFdmVudCB7CiBwdWJsaWM6CkBAIC0zOSwyMiArMzksMjIg
QEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50KTsKICAgICB9Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50
YXRpb25FdmVudD4gY3JlYXRlKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEZXZpY2VP
cmllbnRhdGlvbiogb3JpZW50YXRpb24pCisgICAgc3RhdGljIFBhc3NSZWZQdHI8RGV2aWNlT3Jp
ZW50YXRpb25FdmVudD4gY3JlYXRlKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEqIG9yaWVudGF0aW9uKQogICAgIHsKICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KGV2ZW50VHlwZSwgb3JpZW50YXRpb24p
KTsKICAgICB9CiAKLSAgICB2b2lkIGluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0
b21pY1N0cmluZyYgdHlwZSwgYm9vbCBidWJibGVzLCBib29sIGNhbmNlbGFibGUsIERldmljZU9y
aWVudGF0aW9uKik7CisgICAgdm9pZCBpbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBB
dG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxlcywgYm9vbCBjYW5jZWxhYmxlLCBEZXZpY2VP
cmllbnRhdGlvbkRhdGEqKTsKIAotICAgIERldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fb3JpZW50YXRpb24uZ2V0KCk7IH0KKyAgICBEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIG9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9vcmllbnRhdGlvbi5nZXQo
KTsgfQogCiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBj
b25zdDsKIAogcHJpdmF0ZToKICAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KCk7Ci0gICAgRGV2
aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNl
T3JpZW50YXRpb24qKTsKKyAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0
cmluZyYgZXZlbnRUeXBlLCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqKTsKIAotICAgIFJlZlB0cjxE
ZXZpY2VPcmllbnRhdGlvbj4gbV9vcmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50
YXRpb25EYXRhPiBtX29yaWVudGF0aW9uOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCmluZGV4IDM4YzhjMThkMTgwOTg1OWRmNzhm
ZDc0ZDJlZDViNWI3NjgyOTk5MjkuLjk3OWE0YWNkODUxMDIxN2RjMzcwMGEyNDBjNDcwNDUzMDdm
NDkxY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTU5MSw3ICs1OTEs
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyKikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKSB7
IH0KICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCkgeyB9Ci0gICAgdmlydHVhbCBEZXZp
Y2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gMDsgfQorICAg
IHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCB7
IHJldHVybiAwOyB9CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ckRlc3Ryb3llZCgpIHsgfQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwCmluZGV4IDJmYTVh
Y2JlZWZlYzhmYzM1NzRmYTEyMWNiZDE1ODhhZDBkYTc2NmMuLmM3ZGI5MDk5ZWUyZDk0OTFhZDJh
MzQyM2RkMzZjYTIzNmY2OTAxMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAKQEAgLTU1LDcg
KzU1LDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6OnN0b3BVcGRhdGluZygp
CiAgICAgbV90aW1lci5zdG9wKCk7CiB9CiAKLXZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRN
b2NrOjpzZXRPcmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBvcmllbnRh
dGlvbikKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrOjpzZXRPcmllbnRhdGlvbihQ
YXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gb3JpZW50YXRpb24pCiB7CiAgICAgbV9v
cmllbnRhdGlvbiA9IG9yaWVudGF0aW9uOwogICAgIGlmIChtX2lzVXBkYXRpbmcgJiYgIW1fdGlt
ZXIuaXNBY3RpdmUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2sv
RGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5oCmluZGV4IDFhZGM2MWZkM2U0N2I4ZjIz
NDZiMDY4ODM5ZDFiYzkwNTk5OTE0NmUuLjRkNTVkMjA3YTY0NTk0NTFmYTBjZDhhNDYwMGFiMmY5
MWViYTlmNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNl
T3JpZW50YXRpb25DbGllbnRNb2NrLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9j
ay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suaApAQCAtMjYsOCArMjYsOCBAQAogI2lmbmRl
ZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2tfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlv
bkNsaWVudE1vY2tfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRl
ICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9u
RGF0YS5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgpAQCAtNDgsMTUgKzQ4LDE1IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJv
bGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKSBPVkVSUklERTsKICAgICB2aXJ0dWFs
IHZvaWQgc3RhcnRVcGRhdGluZygpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBk
YXRpbmcoKSBPVkVSUklERTsKLSAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3Jp
ZW50YXRpb24oKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9
CisgICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNv
bnN0IE9WRVJSSURFIHsgcmV0dXJuIG1fb3JpZW50YXRpb24uZ2V0KCk7IH0KICAgICB2aXJ0dWFs
IHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCkgT1ZFUlJJREUgeyB9
CiAKLSAgICB2b2lkIHNldE9yaWVudGF0aW9uKFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+
KTsKKyAgICB2b2lkIHNldE9yaWVudGF0aW9uKFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25E
YXRhPik7CiAKIHByaXZhdGU6CiAgICAgdm9pZCB0aW1lckZpcmVkKFRpbWVyPERldmljZU9yaWVu
dGF0aW9uQ2xpZW50TW9jaz4qKTsKIAotICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gbV9v
cmllbnRhdGlvbjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX29yaWVudGF0
aW9uOwogICAgIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciogbV9jb250cm9sbGVyOwogICAg
IFRpbWVyPERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jaz4gbV90aW1lcjsKICAgICBib29sIG1f
aXNVcGRhdGluZzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0Rldmlj
ZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2
aWNlT3JpZW50YXRpb25DbGllbnRRdC5jcHAKaW5kZXggNWZjYTg1OWZjMDAxNDA4YzVmNzkzOWZi
YzJlN2M0YjA3NzExYTdkOC4uMjBkOWU5ZDhhOTlhNWZlNjhlM2E0MzZhNzFkMmU2ZWI5ODFlOTA5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRRdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRRdC5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgdm9pZCBEZXZpY2VPcmllbnRh
dGlvbkNsaWVudFF0OjpzdG9wVXBkYXRpbmcoKQogICAgICAgICBtX3Byb3ZpZGVyLT5zdG9wKCk7
CiB9CiAKLURldmljZU9yaWVudGF0aW9uKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0OjpsYXN0
T3JpZW50YXRpb24oKSBjb25zdAorRGV2aWNlT3JpZW50YXRpb25EYXRhKiBEZXZpY2VPcmllbnRh
dGlvbkNsaWVudFF0OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAogewogICAgIHJldHVybiAobV9w
cm92aWRlcikgPyBtX3Byb3ZpZGVyLT5sYXN0T3JpZW50YXRpb24oKSA6IDA7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0
LmgKaW5kZXggOTEyNDRkYmE2OGM3NWFlZDhkNGQ4MTRhZmNjZTdmYTkzNzNiMTYxOS4uNmEyZDVk
ZDBkNWRjYjU4ZWU0NTgxNTQ3YWUyZjIyOWRjNTU3YzFmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuaApAQCAtMjAs
OCArMjAsOCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0X2gKICNkZWZpbmUg
RGV2aWNlT3JpZW50YXRpb25DbGllbnRRdF9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2
aWNlT3JpZW50YXRpb25EYXRhLmgiCiAKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQuaCIKQEAgLTM3
LDcgKzM3LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlciopOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5n
KCk7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpOwotICAgIHZpcnR1YWwgRGV2aWNl
T3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OworICAgIHZpcnR1YWwgRGV2aWNl
T3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFsIHZv
aWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAKIHByaXZhdGU6CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblBy
b3ZpZGVyUXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25Qcm92aWRlclF0LmNwcAppbmRleCA0ODg1MzBiYjM1YWJkMDg3NGU4NTRiOGM3NzcwMDY0ZDYy
ZGE2Y2M2Li44Y2M2ZmM0YzA1ODY0MmQzNzczNGJmNzBiN2MwNWQwYzIzYzRjYmIzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblByb3ZpZGVy
UXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9u
UHJvdmlkZXJRdC5jcHAKQEAgLTI2LDcgKzI2LDcgQEAgRGV2aWNlT3JpZW50YXRpb25Qcm92aWRl
clF0OjpEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQoKQogICAgIDogbV9jb250cm9sbGVyKDAp
CiB7CiAgICAgbV9zZW5zb3IuYWRkRmlsdGVyKHRoaXMpOwotICAgIG1fbGFzdE9yaWVudGF0aW9u
ID0gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZSgpOworICAgIG1fbGFzdE9yaWVudGF0aW9uID0g
RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoKTsKIH0KIAogRGV2aWNlT3JpZW50YXRpb25Q
cm92aWRlclF0Ojp+RGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0KCkKQEAgLTY2LDcgKzY2LDcg
QEAgYm9vbCBEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQ6OmZpbHRlcihRUm90YXRpb25SZWFk
aW5nKiByZWFkaW5nKQogICAgICAgICAvLyBUaGUgWiAoYWxwaGEpIHJvdGF0aW9uIGFuZ2xlIGlz
IGNoZWNrZWQgdmlhIGhhc0FscGhhKCkgcHJpdmF0ZSBtZXRob2QsCiAgICAgICAgIC8vIGRlcGVu
ZGluZyBpZiB0aGUgZGV2aWNlIGlzIGFibGUgZG8gZGV0ZWN0IHRoZSBhbHBoYSByb3RhdGlvbi4g
WCAoYmV0YSkgYW5kCiAgICAgICAgIC8vIFkgKGdhbW1hKSBheGlzIGFyZSBhdmFpbGJsZSBpbiB0
aGlzIGNvbnRleHQuCi0gICAgICAgIG1fbGFzdE9yaWVudGF0aW9uID0gRGV2aWNlT3JpZW50YXRp
b246OmNyZWF0ZShoYXNBbHBoYSgpLCByZWFkaW5nLT56KCksCisgICAgICAgIG1fbGFzdE9yaWVu
dGF0aW9uID0gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoaGFzQWxwaGEoKSwgcmVhZGlu
Zy0+eigpLAogICAgICAgICAgICAgICAgIC8qIHggYXZhaWxhYmxlICovIHRydWUsIHJlYWRpbmct
PngoKSwKICAgICAgICAgICAgICAgICAvKiB5IGF2YWlsYWJsZSAqLyB0cnVlLCByZWFkaW5nLT55
KCkpOwogICAgICAgICBtX2NvbnRyb2xsZXItPmRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKG1f
bGFzdE9yaWVudGF0aW9uLmdldCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmgKaW5kZXggYzdmNmQyMzM3Y2E4
ZTc0Yzg0YjViMGQzZTEyNDBiYzBlZTk1NWQzYS4uYzRhMjJmNzRlMmQxOGU2N2QxNTU1MWU4Mzcz
N2RhNmE5OTU3MjlhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2
aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
cXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0LmgKQEAgLTIwLDggKzIwLDggQEAKICNpZm5k
ZWYgRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0X2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRp
b25Qcm92aWRlclF0X2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25EYXRhLmgiCiAjaW5jbHVkZSA8UVJvdGF0aW9uRmlsdGVyPgogI2luY2x1ZGUgPHd0Zi9S
ZWZQdHIuaD4KIApAQCAtNDUsMTEgKzQ1LDExIEBAIHB1YmxpYzoKICAgICB2b2lkIHN0YXJ0KCk7
CiAgICAgdm9pZCBzdG9wKCk7CiAgICAgYm9vbCBpc0FjdGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
c2Vuc29yLmlzQWN0aXZlKCk7IH0KLSAgICBEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0
aW9uKCkgY29uc3QgeyByZXR1cm4gbV9sYXN0T3JpZW50YXRpb24uZ2V0KCk7IH0KKyAgICBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbGFz
dE9yaWVudGF0aW9uLmdldCgpOyB9CiAgICAgYm9vbCBoYXNBbHBoYSgpIGNvbnN0IHsgcmV0dXJu
IG1fc2Vuc29yLnByb3BlcnR5KCJoYXNaIikudG9Cb29sKCk7IH0KIAogcHJpdmF0ZToKLSAgICBS
ZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fbGFzdE9yaWVudGF0aW9uOworICAgIFJlZlB0cjxE
ZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fbGFzdE9yaWVudGF0aW9uOwogICAgIERldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlciogbV9jb250cm9sbGVyOwogICAgIFFSb3RhdGlvblNlbnNvciBtX3Nl
bnNvcjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1
cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5LmggYi9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0Jl
cnJ5LmgKaW5kZXggNzYxMGZiMWQ0ZGI4ODFkYjIxY2JlNjQ5NmU1MDFhYmNkNzc2OGJkYy4uY2Ex
ZGQ5ZDRkZmIxY2M3Y2ZkYWRmYzBjNTliZWExMmU2OWQ2OGJhNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50
QmxhY2tCZXJyeS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9y
dC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaApAQCAtMTksOCArMTksOCBAQAog
I2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnlfaAogI2RlZmluZSBEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnlfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCiAjaW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRmb3Jt
RGV2aWNlT3JpZW50YXRpb25UcmFja2VyTGlzdGVuZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRy
Lmg+CkBAIC00Nyw3ICs0Nyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJv
bGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3Rh
cnRVcGRhdGluZygpOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0
dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0
dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAg
dmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogICAg
IHZpcnR1YWwgdm9pZCBvbk9yaWVudGF0aW9uKGNvbnN0IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50Kik7CiAKQEAgLTU1LDcgKzU1LDcgQEAgcHJpdmF0ZToKICAg
ICBCbGFja0JlcnJ5OjpXZWJLaXQ6OldlYlBhZ2VQcml2YXRlKiBtX3dlYlBhZ2VQcml2YXRlOwog
ICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpEZXZpY2VPcmllbnRhdGlvblRyYWNrZXIqIG1fdHJh
Y2tlcjsKICAgICBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKLSAg
ICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fY3VycmVudE9yaWVudGF0aW9uOworICAgIFJl
ZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG1fY3VycmVudE9yaWVudGF0aW9uOwogfTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRGV2aWNlT3Jp
ZW50YXRpb24uaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRldmljZU9yaWVu
dGF0aW9uLmgKaW5kZXggYjI2NjQ5ZTFjZWIyMGVlYmRlMWQ2ZDNjM2U2MDg2MmIyODk2ODUyYS4u
NjY1NDBiZDhhNWY3YzBmOTNmMzBhNTE1MjA1YzM4YjE4MjQ5MjFhZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRGV2aWNlT3JpZW50YXRpb24uaAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oCkBAIC0y
OCw3ICsyOCw3IEBACiAKICNpZiBXRUJLSVRfSU1QTEVNRU5UQVRJT04KIG5hbWVzcGFjZSBXVEYg
eyB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gY2xhc3MgUGFzc1JlZlB0cjsgfQotbmFtZXNwYWNlIFdl
YkNvcmUgeyBjbGFzcyBEZXZpY2VPcmllbnRhdGlvbjsgfQorbmFtZXNwYWNlIFdlYkNvcmUgeyBj
bGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGE7IH0KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0
IHsKQEAgLTg2LDkgKzg2LDkgQEAgcHVibGljOgogICAgIGJvb2wgYWJzb2x1dGUoKSBjb25zdCB7
IHJldHVybiBtX2Fic29sdXRlOyB9CiAKICNpZiBXRUJLSVRfSU1QTEVNRU5UQVRJT04KLSAgICBX
ZWJEZXZpY2VPcmllbnRhdGlvbihjb25zdCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiopOwot
ICAgIFdlYkRldmljZU9yaWVudGF0aW9uJiBvcGVyYXRvcj0oY29uc3QgV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb24qKTsKLSAgICBvcGVyYXRvciBXVEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb24+KCkgY29uc3Q7CisgICAgV2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3Qg
V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhKik7CisgICAgV2ViRGV2aWNlT3JpZW50YXRp
b24mIG9wZXJhdG9yPShjb25zdCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEqKTsKKyAg
ICBvcGVyYXRvciBXVEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
PigpIGNvbnN0OwogI2VuZGlmCiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCmluZGV4
IDI5YjQzYmE1NmRhNWNiODk2MmQ5YTY1NzEzMjlkNDFlZmIzZGVkNmQuLmYxZjBiMzNmOWU3ZGJl
OThkZTE3MjEwZGI5Zjc2YTNhMjdhNjVkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuY3BwCkBAIC0y
Niw3ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50
YXRpb25DbGllbnRQcm94eS5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmll
bnRhdGlvbi5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgog
I2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KQEAgLTYwLDEyICs2MCwxMiBAQCB2b2lkIERldmljZU9y
aWVudGF0aW9uQ2xpZW50UHJveHk6OnN0b3BVcGRhdGluZygpCiAgICAgbV9jbGllbnQtPnN0b3BV
cGRhdGluZygpOwogfQogCi1XZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogRGV2aWNlT3JpZW50
YXRpb25DbGllbnRQcm94eTo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKK1dlYkNvcmU6OkRldmlj
ZU9yaWVudGF0aW9uRGF0YSogRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6bGFzdE9yaWVu
dGF0aW9uKCkgY29uc3QKIHsKICAgICBpZiAoIW1fY2xpZW50KQogICAgICAgICByZXR1cm4gMDsK
IAotICAgIC8vIENhY2hlIHRoZSBEZXZpY2VPcmllbnRhdGlvbiBwb2ludGVyIHNvIGl0cyByZWZl
cmVuY2UgY291bnQgZG9lcyBub3QgZHJvcCB0byB6ZXJvIHVwb24gcmV0dXJuLgorICAgIC8vIENh
Y2hlIHRoZSBEZXZpY2VPcmllbnRhdGlvbkRhdGEgcG9pbnRlciBzbyBpdHMgcmVmZXJlbmNlIGNv
dW50IGRvZXMgbm90IGRyb3AgdG8gemVybyB1cG9uIHJldHVybi4KICAgICBtX2xhc3RPcmllbnRh
dGlvbiA9IG1fY2xpZW50LT5sYXN0T3JpZW50YXRpb24oKTsKIAogICAgIHJldHVybiBtX2xhc3RP
cmllbnRhdGlvbi5nZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuaAppbmRleCA3M2ZkM2UyYTA5OWYyNjI1
M2EwN2U5ZGM3Y2VmYzY3MTRjYTQxM2MzLi5lZGRiM2QyOWQ5ZmNiOWNhZTgwMjYyMzVkNjNmNTk1
ZThiODI4ZDY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudFByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
RGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5oCkBAIC0yNiw4ICsyNiw4IEBACiAjaWZuZGVm
IERldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHlfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlv
bkNsaWVudFByb3h5X2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bkRhdGEuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgogI2luY2x1
ZGUgPHd0Zi9SZWZQdHIuaD4KIApAQCAtNDcsMTIgKzQ3LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIHZvaWQgc2V0Q29udHJvbGxlcihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIqKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpIE9WRVJSSURF
OwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKSBPVkVSUklERTsKLSAgICB2aXJ0dWFs
IFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCBPVkVS
UklERTsKKyAgICB2aXJ0dWFsIFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9y
aWVudGF0aW9uKCkgY29uc3QgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIGRldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpIE9WRVJSSURFOwogCiBwcml2YXRlOgogICAgIFdl
YkRldmljZU9yaWVudGF0aW9uQ2xpZW50KiBtX2NsaWVudDsKLSAgICBtdXRhYmxlIFJlZlB0cjxX
ZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4gbV9sYXN0T3JpZW50YXRpb247CisgICAgbXV0YWJs
ZSBSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX2xhc3RPcmllbnRhdGlv
bjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRpb24uY3BwIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRpb24uY3BwCmluZGV4IGQ3YTI4MmYzNTBlMmM2
NzQ0ZGU0YjlkOGIzNDYwOWExYTk0N2Q0ODguLjI0ZjdiYzgwMWNhZTliZWMyZTUyODkxMjc3ZGQ3
ODNlMWNlZDhkNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRl
dmljZU9yaWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJE
ZXZpY2VPcmllbnRhdGlvbi5jcHAKQEAgLTI2LDEyICsyNiwxMiBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0aW9uLmgiCiAKLSNpbmNsdWRlICJEZXZp
Y2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2lu
Y2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1XZWJEZXZp
Y2VPcmllbnRhdGlvbjo6V2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgV2ViQ29yZTo6RGV2aWNl
T3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorV2ViRGV2aWNlT3JpZW50YXRpb246OldlYkRldmlj
ZU9yaWVudGF0aW9uKGNvbnN0IFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YSogb3JpZW50
YXRpb24pCiB7CiAgICAgaWYgKCFvcmllbnRhdGlvbikgewogICAgICAgICBtX2lzTnVsbCA9IHRy
dWU7CkBAIC01Nyw3ICs1Nyw3IEBAIFdlYkRldmljZU9yaWVudGF0aW9uOjpXZWJEZXZpY2VPcmll
bnRhdGlvbihjb25zdCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogb3JpCiAgICAgbV9hYnNv
bHV0ZSA9IG9yaWVudGF0aW9uLT5hYnNvbHV0ZSgpOwogfQogCi1XZWJEZXZpY2VPcmllbnRhdGlv
biYgV2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPShjb25zdCBXZWJDb3JlOjpEZXZpY2VP
cmllbnRhdGlvbiogb3JpZW50YXRpb24pCitXZWJEZXZpY2VPcmllbnRhdGlvbiYgV2ViRGV2aWNl
T3JpZW50YXRpb246Om9wZXJhdG9yPShjb25zdCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRh
dGEqIG9yaWVudGF0aW9uKQogewogICAgIGlmICghb3JpZW50YXRpb24pIHsKICAgICAgICAgbV9p
c051bGwgPSB0cnVlOwpAQCAtODQsMTEgKzg0LDExIEBAIFdlYkRldmljZU9yaWVudGF0aW9uJiBX
ZWJEZXZpY2VPcmllbnRhdGlvbjo6b3BlcmF0b3I9KGNvbnN0IFdlYkNvcmU6OkRldmljZU9yaWVu
CiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1XZWJEZXZpY2VPcmllbnRhdGlvbjo6b3BlcmF0b3Ig
UGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4oKSBjb25zdAorV2ViRGV2aWNl
T3JpZW50YXRpb246Om9wZXJhdG9yIFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhPigpIGNvbnN0CiB7CiAgICAgaWYgKG1faXNOdWxsKQogICAgICAgICByZXR1cm4gMDsK
LSAgICByZXR1cm4gV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZShtX2NhblByb3Zp
ZGVBbHBoYSwgbV9hbHBoYSwgbV9jYW5Qcm92aWRlQmV0YSwgbV9iZXRhLCBtX2NhblByb3ZpZGVH
YW1tYSwgbV9nYW1tYSwgbV9jYW5Qcm92aWRlQWJzb2x1dGUsIG1fYWJzb2x1dGUpOworICAgIHJl
dHVybiBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShtX2NhblByb3ZpZGVB
bHBoYSwgbV9hbHBoYSwgbV9jYW5Qcm92aWRlQmV0YSwgbV9iZXRhLCBtX2NhblByb3ZpZGVHYW1t
YSwgbV9nYW1tYSwgbV9jYW5Qcm92aWRlQWJzb2x1dGUsIG1fYWJzb2x1dGUpOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDdkMDlhNmU3
ZGQzN2FjYTNiMjlmODE2ZWFhZmU4MDBlYzIxNTNhMDkuLjBiOWVlODhlOTk3YmJkYTZjNGViOTQy
MDkyN2JhZTVmMjFjY2UxNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcApAQCAtMjYsOCAr
MjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYkRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5oIgogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIFdlYktp
dCB7CiAKIHZvaWQgV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZp
Y2VPcmllbnRhdGlvbihjb25zdCBXZWJEZXZpY2VPcmllbnRhdGlvbiYgb3JpZW50YXRpb24pCiB7
Ci0gICAgUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiBkZXZpY2VPcmllbnRhdGlv
biA9IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KG9yaWVudGF0aW9uKTsK
KyAgICBSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiBkZXZpY2VPcmllbnRh
dGlvbiA9IFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPihvcmllbnRh
dGlvbik7CiAgICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihkZXZp
Y2VPcmllbnRhdGlvbi5nZXQoKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZs
L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmggYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oCmluZGV4
IGI4MDA3N2NhNWVkMTVkZDFlYTY0YTdkOWMzYjBmMmEzNzE0OWFiN2MuLjBiYjE5N2NiN2Y5ZjQ2
YTQ1ODQ5YTVjZjNhZDEyOTk4MTI5ZmU4NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZs
L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsLmgKKysrIGIvU291cmNl
L1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaApA
QCAtMjAsOCArMjAsOCBAQAogI2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbF9oCiAj
ZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50RWZsX2gKIAotI2luY2x1ZGUgIkRldmljZU9y
aWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBA
IC0zMyw3ICszMyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihE
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRh
dGluZygpOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFsIERl
dmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIERl
dmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVh
bCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogCiBwcml2YXRl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRHdGsuaCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50R3RrLmgKaW5kZXggMmM1Mjk0OTVmMDU0Nzk3MGIwMWE5NGIy
NWVmMDQ1MjVhZDZiODEzZS4uZmNhYTJkMmU4MWRkNzMzYjE5Y2U1MDc5MWQxYjk4NjgwMDU5Y2U1
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRHdGsuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9y
dC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0ay5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaWZuZGVm
IERldmljZU9yaWVudGF0aW9uQ2xpZW50R3RrX2gKICNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25D
bGllbnRHdGtfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0
YS5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIApAQCAtMzQsNyArMzQsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0
dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmll
bnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmlydHVhbCBXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAgIHZpcnR1
YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmlj
ZU9yaWVudGF0aW9uQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oCmluZGV4IGVkNDA3ZWI4MDFjYWU0OTMzM2M4NTM0
ODdhYjAzYTVhZTEyZTZjOWIuLjdlNDk4NzFjMDBhOTE4MmExZDZmMGRkZWM5Yzk5MDIyOWQ4ZTVh
NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmlj
ZU9yaWVudGF0aW9uQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaApAQCAtNDYsNyArNDYsNyBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyKikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmco
KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCkgT1ZFUlJJREU7Ci0g
ICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkg
Y29uc3QgT1ZFUlJJREU7CisgICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRh
dGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBk
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSBPVkVSUklERTsKIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkRldmlj
ZU9yaWVudGF0aW9uQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQubW0KaW5kZXggM2E0ZDVkN2RkODk5NzE0YTc1NGQ2
ZjU4OWNjMzYxODZhMzdmYmI2My4uYWFhMDMxYTRiODE3MDY3MWFjOWQxYjQ4NWNlODZhNWU5ZjVl
ZTFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRGV2
aWNlT3JpZW50YXRpb25DbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQubW0KQEAgLTU1LDcgKzU1LDcgQEAgdm9p
ZCBXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudDo6c3RvcFVwZGF0aW5nKCkKICAgICBbZ2V0UHJv
dmlkZXIoKSBzdG9wVXBkYXRpbmddOwogfQogCi1EZXZpY2VPcmllbnRhdGlvbiogV2ViRGV2aWNl
T3JpZW50YXRpb25DbGllbnQ6Omxhc3RPcmllbnRhdGlvbigpIGNvbnN0CitEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIFdlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24oKSBj
b25zdAogewogICAgIHJldHVybiBjb3JlKFtnZXRQcm92aWRlcigpIGxhc3RPcmllbnRhdGlvbl0p
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmll
bnRhdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRp
b24ubW0KaW5kZXggN2JlNWQwY2EzMDk3OTk1YjI4ZTljNzY5N2E1MzgxODc2ZDM3NzUwYy4uZGI3
ODk0ZjljNjlhYTcyZjU2NzE0MzA4YjZkOTk1OWQzODM1N2NiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uLm1tCkBAIC0yOSw3ICsyOSw3
IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBAaW1wbGVtZW50YXRpb24gV2ViRGV2aWNl
T3JpZW50YXRpb25JbnRlcm5hbAogCi0tIChpZClpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlv
bjooUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4pY29yZURldmljZU9yaWVudGF0aW9uCist
IChpZClpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0cjxEZXZpY2VPcmll
bnRhdGlvbkRhdGE+KWNvcmVEZXZpY2VPcmllbnRhdGlvbgogewogICAgIHNlbGYgPSBbc3VwZXIg
aW5pdF07CiAgICAgaWYgKCFzZWxmKQpAQCAtNDIsNyArNDIsNyBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYkRldmljZU9yaWVudGF0aW9uIChJbnRlcm5h
bCkKIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbgorLSAoaWQpaW5p
dFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3Jp
ZW50YXRpb25EYXRhPiljb3JlRGV2aWNlT3JpZW50YXRpb24KIHsKICAgICBzZWxmID0gW3N1cGVy
IGluaXRdOwogICAgIGlmICghc2VsZikKQEAgLTU1LDcgKzU1LDcgQEAgdXNpbmcgbmFtZXNwYWNl
IFdlYkNvcmU7CiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJEZXZpY2VPcmllbnRhdGlvbgogCi1EZXZp
Y2VPcmllbnRhdGlvbiogY29yZShXZWJEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCitE
ZXZpY2VPcmllbnRhdGlvbkRhdGEqIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0
aW9uKQogewogICAgIHJldHVybiBvcmllbnRhdGlvbiA/IG9yaWVudGF0aW9uLT5tX2ludGVybmFs
LT5tX29yaWVudGF0aW9uLmdldCgpIDogMDsKIH0KQEAgLTY1LDcgKzY1LDcgQEAgRGV2aWNlT3Jp
ZW50YXRpb24qIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQogICAgIHNl
bGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwot
ICAgIG1faW50ZXJuYWwgPSBbW1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwgYWxsb2NdIGlu
aXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOkRldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoY2Fu
UHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1t
YSwgZ2FtbWEpXTsKKyAgICBtX2ludGVybmFsID0gW1tXZWJEZXZpY2VPcmllbnRhdGlvbkludGVy
bmFsIGFsbG9jXSBpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjpEZXZpY2VPcmllbnRhdGlv
bkRhdGE6OmNyZWF0ZShjYW5Qcm92aWRlQWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0
YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1tYSldOwogICAgIHJldHVybiBzZWxmOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50
ZXJuYWwuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25J
bnRlcm5hbC5oCmluZGV4IGI3YzZhYTUzYjRiYTNlMjhmYTNjMmQzY2Q2NGRkODYxMTFjYjg1MWMu
LjVkZWRkMDgwYzc2ZjQ0ODU0OTI5OTJmOTQ3N2E4ZWNiYTQxZGVlOWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5h
bC5oCkBAIC0yNSwyMSArMjUsMjEgQEAKIAogI2ltcG9ydCAiV2ViRGV2aWNlT3JpZW50YXRpb24u
aCIKIAotI2ltcG9ydCA8V2ViQ29yZS9EZXZpY2VPcmllbnRhdGlvbi5oPgorI2ltcG9ydCA8V2Vi
Q29yZS9EZXZpY2VPcmllbnRhdGlvbkRhdGEuaD4KICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAog
QGludGVyZmFjZSBXZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsIDogTlNPYmplY3QgewogQHB1
YmxpYwotICAgIFJlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4gbV9vcmllbnRhdGlv
bjsKKyAgICBSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX29yaWVudGF0
aW9uOwogfQogCi0tIChpZClpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0
cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4pY29yZURldmljZU9yaWVudGF0aW9uOworLSAo
aWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb25EYXRhPiljb3JlRGV2aWNlT3JpZW50YXRpb247CiBAZW5kCiAKIEBpbnRl
cmZhY2UgV2ViRGV2aWNlT3JpZW50YXRpb24gKEludGVybmFsKQogCi0tIChpZClpbml0V2l0aENv
cmVEZXZpY2VPcmllbnRhdGlvbjooUGFzc1JlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bj4pY29yZURldmljZU9yaWVudGF0aW9uOworLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50
YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhPiljb3JlRGV2
aWNlT3JpZW50YXRpb247CiAKIEBlbmQKIAotV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGNv
cmUoV2ViRGV2aWNlT3JpZW50YXRpb24qKTsKK1dlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0
YSogY29yZShXZWJEZXZpY2VPcmllbnRhdGlvbiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAppbmRl
eCBhMDk0YTI1YjhiZWNhYTM4ZDJmYTNiYzVlZWFhNjRkYTJhOWIxNDZjLi4zODE0ZDM1NjkyOGZj
Y2ZiODA0Y2MyZWYxNTdmN2JjZGY1ZWFmNmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcApAQCAt
MzMsOSArMzMsOSBAQAogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAjaW5jbHVkZSAiQ29udGV4
dE1lbnVDbGllbnRRdC5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51Q29udHJvbGxlci5oIgotI2lu
Y2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisj
aW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2Fk
ZXIuaCIKICNpbmNsdWRlICJFZGl0b3IuaCIKICNpbmNsdWRlICJFZGl0b3JDbGllbnRRdC5oIgpA
QCAtNzY5LDcgKzc2OSw3IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldE1vY2tE
ZXZpY2VPcmllbnRhdGlvbihRV2ViUGFnZSogcGFnZSwgYm9vbCBjYW5QCiAjaWYgRU5BQkxFKERF
VklDRV9PUklFTlRBVElPTikKICAgICBQYWdlKiBjb3JlUGFnZSA9IFFXZWJQYWdlUHJpdmF0ZTo6
Y29yZShwYWdlKTsKICAgICBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2sqIG1vY2tDbGllbnQg
PSB0b0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jayhEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OmZyb20oY29yZVBhZ2UpLT5jbGllbnQoKSk7Ci0gICAgbW9ja0NsaWVudC0+c2V0T3JpZW50
YXRpb24oRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZShjYW5Qcm92aWRlQWxwaGEsIGFscGhhLCBj
YW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlkZUdhbW1hLCBnYW1tYSkpOworICAgIG1vY2tD
bGllbnQtPnNldE9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGNhblBy
b3ZpZGVBbHBoYSwgYWxwaGEsIGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRlR2FtbWEs
IGdhbW1hKSk7CiAjZW5kaWYKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148978</attachid>
            <date>2012-06-22 01:52:40 -0700</date>
            <delta_ts>2012-06-22 04:33:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88663-20120622095239.patch</filename>
            <type>text/plain</type>
            <size>70083</size>
            <attacher name="Amy Ousterhout">aousterh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWI1NWI4M2YzYzc2MmVk
NjBiNDc3NjU5NmZlYjU0OGViNDI3ODlkMC4uYTY4YzFkMWJhYzMzZGZiOWMxYTA1OThhZDAwODdi
NmExNjhhZTlmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDczIEBACisyMDEyLTA2LTIyICBBbXkg
T3VzdGVyaG91dCAgPGFvdXN0ZXJoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZW5hbWVkIERl
dmljZU9yaWVudGF0aW9uIHRvIERldmljZU9yaWVudGF0aW9uRGF0YQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg2NjMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGlz
IGlzIHNpbXBseSBhIG5hbWUgY2hhbmdlLgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50
YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhIGluIG9yZGVyIHRvIGJlIGNvbnNpc3RlbnQg
d2l0aCBEZXZpY2VNb3Rpb25EYXRhLgorICAgICAgICBVcGRhdGVkIGFsbCBmaWxlcyB0aGF0IHVz
ZSBEZXZpY2VPcmllbnRhdGlvbi4KKyAgCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAg
ICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAg
ICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBX
ZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRGV2aWNlT3JpZW50YXRp
b25FdmVudDo6aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdz
L3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25F
dmVudENhbGxiYWNrKToKKyAgICAgICAgKiBkb20vRE9NQWxsSW5PbmUuY3BwOgorICAgICAgICAq
IGRvbS9EZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudCk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbik6CisgICAgICAgICog
ZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIpOgorICAgICAgICAqIGRvbS9EZXZp
Y2VPcmllbnRhdGlvbkRhdGEuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uLmNwcC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEpOgorICAgICAgICAoV2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjphbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGE6OmJldGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3Jp
ZW50YXRpb25EYXRhOjpnYW1tYSk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bkRhdGE6OmFic29sdXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0
YTo6Y2FuUHJvdmlkZUFscGhhKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
RGF0YTo6Y2FuUHJvdmlkZUJldGEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b25EYXRhOjpjYW5Qcm92aWRlR2FtbWEpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmll
bnRhdGlvbkRhdGEuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmll
bnRhdGlvbi5oLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlv
bkRhdGEpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZl
bnQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25FdmVudDo6aW5pdERldmlj
ZU9yaWVudGF0aW9uRXZlbnQpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50
Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkV2ZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRXZlbnQ6Om9yaWVudGF0aW9uKToKKyAg
ICAgICAgKiBsb2FkZXIvRW1wdHlDbGllbnRzLmg6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eURl
dmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24pOgorICAgICAgICAqIHBsYXRm
b3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24pOgorICAgICAg
ICAqIHBsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmg6CisgICAgICAg
IChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s6Omxhc3RPcmllbnRhdGlvbik6
CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2spOgorICAgICAgICAqIHBsYXRm
b3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwOgorICAgICAgICAoRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRRdCk6CisgICAgICAgICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRp
b25DbGllbnRRdC5oOgorICAgICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdCk6CisgICAg
ICAgICogcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0Lmg6CisgICAgICAg
IChEZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQpOgorIAogMjAxMi0wNi0yMCAgSGFucyBXZW5u
Ym9yZyAgPGhhbnNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFNwZWVjaCBKYXZhU2NyaXB0IEFQ
STogU3BlZWNoUmVjb2duaXRpb24gc2hvdWxkIGhvb2sgdXAgd2l0aCBBY3RpdmVET01PYmplY3Qg
bW9yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggYTE3Mjg1Zjc5NTQwYmFlZDRl
MmRhM2I5MzVjZGJiYjI3ZDZiYWExOC4uOWJkZDM4Yjc4YmEyODMxNDNhYjU1MDA3YTU1MmY4ZjIz
NGFlNTA3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTItMDYtMjIgIEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRh
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQg
ZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9m
IERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmll
bnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaDoKKyAg
ICAgICAgKERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeSk6CisKIDIwMTItMDYtMjEg
IE1pa2UgRmVudG9uICA8bWlmZW50b25AcmltLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0g
SW5wdXQgbW9kZSBzaG91bGQgYWRhcHQgYXV0b21hdGljYWxseSB0byBzZXR0aW5ncyBjaGFuZ2Vz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGY3NTU2YWNjYzAxZjY4YWNkOGU1NWZkNGZm
ODhkYWJjZDY1NWNmYjEuLjJlMWQ5OTAxMmExNmFlYTIwNzA2ZDFlZjI2OGQ5MzNjYzcwYTZjNGMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTItMDYtMjIg
IEFteSBPdXN0ZXJob3V0ICA8YW91c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbmFt
ZWQgRGV2aWNlT3JpZW50YXRpb24gdG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8gdXNl
IHRoZSByZW5hbWVkIERldmljZU9yaWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9yaWVu
dGF0aW9uLgorICAgICAgICBUaGlzIGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEg
Y29uc2lzdGVudCB3aXRoIERldmljZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAqIHB1
YmxpYy9XZWJEZXZpY2VPcmllbnRhdGlvbi5oOgorICAgICAgICAoV2ViRGV2aWNlT3JpZW50YXRp
b24pOgorICAgICAgICAqIHNyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6RGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eTo6bGFzdE9yaWVudGF0
aW9uKToKKyAgICAgICAgKiBzcmMvRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5oOgorICAg
ICAgICAoRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eSk6CisgICAgICAgICogc3JjL1dlYkRl
dmljZU9yaWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRGV2aWNlT3JpZW50YXRp
b246OldlYkRldmljZU9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViRGV2aWNlT3Jp
ZW50YXRpb246Om9wZXJhdG9yPSk6CisgICAgICAgIChXZWJLaXQ6OldlYkRldmljZU9yaWVudGF0
aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4p
OgorICAgICAgICAqIHNyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURl
dmljZU9yaWVudGF0aW9uKToKKwogMjAxMi0wNi0yMCAgWmVldiBMaWViZXIgIDx6bGllYmVyQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIERhbWFnZSB0cmFja2VyIGlzIG5vdCB1
c2VkIHdpdGhvdXQgcGFydGlhbCBzd2FwLCBjYXVzaW5nIHZhbGlkIHJlbmRlciBwYXNzZXMgdG8g
YmUgcmVtb3ZlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCmluZGV4IDYzMTIwYjk0YTU0MmRkMGI0MzJlODYzYmJi
ZWM3ZDg5Zjk1MDQ0NTkuLjhjZTUxM2ZlZTU5MWI2YTk0NTBlMjNlZDgzYWU4MjI2NjFmZjZlNWEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNi0yMiAgQW15IE91c3Rl
cmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZpY2VP
cmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJlbmFt
ZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24uCisg
ICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBjb25zaXN0ZW50
IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwuaDoKKyAgICAgICAgKERldmljZU9yaWVudGF0
aW9uQ2xpZW50RWZsKToKKwogMjAxMi0wNi0xOSAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2aWxs
YXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBDYWxsaW5nIG5hdGl2ZUltYWdlRm9yQ3VycmVudEZy
YW1lKCkgY2F1c2VzIGFzc2VydGlvbiBmYWlsdXJlOiBtX3ZlcmlmaWVyLmlzU2FmZVRvVXNlKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Z3RrL0NoYW5nZUxvZwppbmRleCAyMGJkZDA4NWU3NGU3OTBjZWVkYTEwMjM0OWQyMGQyMmYyYjAx
YzNkLi5jYmQzYzcxY2Q1ZDIxMDBhZTY3MzBiODRhZmIwOTI3OGFmNzYyMWEzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ndGsvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDYtMjIgIEFteSBPdXN0ZXJob3V0ICA8YW91
c3RlcmhAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb24g
dG8gRGV2aWNlT3JpZW50YXRpb25EYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04ODY2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmlsZXMgdG8gdXNlIHRoZSByZW5hbWVkIERldmljZU9y
aWVudGF0aW9uRGF0YSBpbnN0ZWFkIG9mIERldmljZU9yaWVudGF0aW9uLgorICAgICAgICBUaGlz
IGNoYW5nZSBtYWtlcyBEZXZpY2VPcmllbnRhdGlvbkRhdGEgY29uc2lzdGVudCB3aXRoIERldmlj
ZU1vdGlvbkRhdGEuCisgICAgICAgIAorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0RldmljZU9y
aWVudGF0aW9uQ2xpZW50R3RrLmg6CisgICAgICAgIChEZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0
ayk6CisKIDIwMTItMDYtMjEgIERhbmllbCBEcmFrZSAgPGRzZEBsYXB0b3Aub3JnPgogCiAgICAg
ICAgIFtHVEtdIEJhY2twb3J0IHJ1bi1maWxlLWNob29zZXIgdG8gV2ViS2l0MQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nCmluZGV4IGU0OGI0YjY1OTk5YzAwMWZiNWNkMGQxMmQyOGUyM2UyMTc4N2IyN2MuLmFmMmRi
OWRlMmU2MWQ3MjliNTllYmZlYmZhZjNiNjBhZTYwMDNjMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOSBAQAorMjAxMi0wNi0yMiAgQW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VP
cmllbnRhdGlvbkRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg4NjYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVXBkYXRlZCBmaWxlcyB0byB1c2UgdGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25E
YXRhIGluc3RlYWQgb2YgRGV2aWNlT3JpZW50YXRpb24uCisgICAgICAgIFRoaXMgY2hhbmdlIG1h
a2VzIERldmljZU9yaWVudGF0aW9uRGF0YSBjb25zaXN0ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0
YS4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5o
OgorICAgICAgICAoV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQpOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRGV2
aWNlT3JpZW50YXRpb25DbGllbnQ6Omxhc3RPcmllbnRhdGlvbik6CisgICAgICAgICogV2ViVmll
dy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRldmljZU9y
aWVudGF0aW9uSW50ZXJuYWwuaDoKKwogMjAxMi0wNi0yMCAgR2FycmV0IEtlbGx5ICA8Z2RrQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBNb3ZpbmcgY29va2llRW5hYmxlZC9zZXRDb29raWVFbmFi
bGVkIGZyb20gUGFnZSB0byBTZXR0aW5ncy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggZGM5MDg0YTliODRk
YzdiNGM0YmJiYjI5MmFkMmViZGNjOWRjYWRmMC4uMjAxYmRkODI4YmE2ZDA3NWYyZTg4NGE1NzEz
YzgwMmVkYjNlMjFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNi0y
MiAgQW15IE91c3RlcmhvdXQgIDxhb3VzdGVyaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVu
YW1lZCBEZXZpY2VPcmllbnRhdGlvbiB0byBEZXZpY2VPcmllbnRhdGlvbkRhdGEKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4NjYzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBmaWxlcyB0byB1
c2UgdGhlIHJlbmFtZWQgRGV2aWNlT3JpZW50YXRpb25EYXRhIGluc3RlYWQgb2YgRGV2aWNlT3Jp
ZW50YXRpb24uCisgICAgICAgIFRoaXMgY2hhbmdlIG1ha2VzIERldmljZU9yaWVudGF0aW9uRGF0
YSBjb25zaXN0ZW50IHdpdGggRGV2aWNlTW90aW9uRGF0YS4KKyAgICAgICAgCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwOgorICAgICAgICAoRHVt
cFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldE1vY2tEZXZpY2VPcmllbnRhdGlvbik6CisgICAgICAg
IAogMjAxMi0wNi0yMSAgVGhpYWdvIE1hcmNvcyBQLiBTYW50b3MgIDx0aGlhZ28uc2FudG9zQGlu
dGVsLmNvbT4KIAogICAgICAgICBbV0syXVtRdF0gQ29sb3IgY2hvb3NlciBBUEkgbWlzc2luZwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAppbmRleCAyOWU4OGY1MjVmZWEwM2JkMDNjYzVlOWJlM2U4N2ZmMzE0
NWU1NzZlLi5iNjA3MDM5NjBkZTQxNjdhYWEzODJiN2RmMzk5NWNkMmE2ZTA1MjAwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dApAQCAtNTY2LDggKzU2Niw4IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMKICAg
ICBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAKICAgICBkb20vRGV2aWNlTW90aW9uRGF0
YS5jcHAKICAgICBkb20vRGV2aWNlTW90aW9uRXZlbnQuY3BwCi0gICAgZG9tL0RldmljZU9yaWVu
dGF0aW9uLmNwcAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisgICAg
ZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25F
dmVudC5jcHAKICAgICBkb20vRG9jdW1lbnQuY3BwCiAgICAgZG9tL0RvY3VtZW50TWFya2VyQ29u
dHJvbGxlci5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3Qu
YW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDk4NWRiOWE3MDdm
ODZjZmFjNzk4MzE3YzE1ZGZhZDEyOGZiYjM1ZGEuLjczNzY3YzQ1OTMzNTc4MTcwZmNkMzk2OWEx
MjdjMmU1OWM1MjkxMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTgyMywx
MCArMTgyMywxMCBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b24uY3BwIFwKKwlTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBc
CisJU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5oIFwKIAlTb3VyY2Uv
V2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbi5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnRGcmFnbWVudC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudEZyYWdtZW50LmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFy
Z2V0LnByaSBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggYjlkZGY5MzU2ZTJiMmJl
OGQyZmE4NDA4MzM5NjQ5YjFhNTQ5MGY0Yy4uZGZjNjliM2EzYTg3YjJlNWE2ODM5MzQwNGFkNjQ4
Y2JlN2RjOTFlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9T
b3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCkBAIC01MzEsOCArNTMxLDggQEAgU09VUkNFUyArPSBc
CiAgICAgZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIFwKICAgICBkb20vRGV2aWNlTW90
aW9uRGF0YS5jcHAgXAogICAgIGRvbS9EZXZpY2VNb3Rpb25FdmVudC5jcHAgXAotICAgIGRvbS9E
ZXZpY2VPcmllbnRhdGlvbi5jcHAgXAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuY3BwIFwKKyAgICBkb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBcICAgIAogICAgIGRv
bS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBcCiAgICAgZG9tL0RvY3VtZW50LmNwcCBcCiAg
ICAgZG9tL0RvY3VtZW50RXZlbnRRdWV1ZS5jcHAgXApAQCAtMTcxMCw5ICsxNzEwLDkgQEAgSEVB
REVSUyArPSBcCiAgICAgZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaCBcCiAgICAgZG9tL0Rl
dmljZU1vdGlvbkRhdGEuaCBcCiAgICAgZG9tL0RldmljZU1vdGlvbkV2ZW50LmggXAotICAgIGRv
bS9EZXZpY2VPcmllbnRhdGlvbi5oIFwKICAgICBkb20vRGV2aWNlT3JpZW50YXRpb25DbGllbnQu
aCBcCiAgICAgZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIFwKKyAgICBkb20vRGV2
aWNlT3JpZW50YXRpb25EYXRhLmggXAogICAgIGRvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmgg
XAogICAgIGRvbS9Eb2N1bWVudC5oIFwKICAgICBkb20vRG9jdW1lbnRGcmFnbWVudC5oIFwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5leHAuaW4KaW5kZXggNzMzNmM5M2Y0NWE5YzBmZmExYjI3MTdkYzE1YjIwOThiNDYx
ZDc3Yy4uY2FlMzkwZDE4ZGZlN2U4N2Y1YTU0ZDk3YjM5ZjNjMzBkNzI0ZjhmNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5leHAuaW4KQEAgLTYxMyw3ICs2MTMsNyBAQCBfX1pON1dlYkNvcmUyNlVzZXJUeXBpbmdH
ZXN0dXJlSW5kaWNhdG9yMjhmb2N1c2VkRWxlbWVudEF0R2VzdHVyZVN0YXJ0RXYKIF9fWk43V2Vi
Q29yZTI2c3RvcE9ic2VydmluZ0Nvb2tpZUNoYW5nZXNFdgogX19aTjdXZWJDb3JlMjdBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZUJhc2VDMkV2CiBfX1pON1dlYkNvcmUyN0NTU0NvbXB1dGVkU3R5bGVE
ZWNsYXJhdGlvbkMxRU4zV1RGMTBQYXNzUmVmUHRySU5TXzROb2RlRUVFYlJLTlMxXzZTdHJpbmdF
Ci1fX1pON1dlYkNvcmUyN0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazE0c2V0T3JpZW50YXRp
b25FTjNXVEYxMFBhc3NSZWZQdHJJTlNfMTdEZXZpY2VPcmllbnRhdGlvbkVFRQorX19aTjdXZWJD
b3JlMjdEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2sxNHNldE9yaWVudGF0aW9uRU4zV1RGMTBQ
YXNzUmVmUHRySU5TXzIxRGV2aWNlT3JpZW50YXRpb25EYXRhRUVFCiBfX1pON1dlYkNvcmUyN0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50TW9ja0MxRXYKIF9fWk43V2ViQ29yZTI3c3RhcnRPYnNlcnZp
bmdDb29raWVDaGFuZ2VzRXYKIF9fWk43V2ViQ29yZTI4ZW5jb2RlV2l0aFVSTEVzY2FwZVNlcXVl
bmNlc0VSS04zV1RGNlN0cmluZ0UKQEAgLTE1MjUsNyArMTUyNSw3IEBAIF9fWk43V2ViQ29yZTE2
Rm9udFBsYXRmb3JtRGF0YUMxRVA2TlNGb250ZmJiYk5TXzE1Rm9udE9yaWVudGF0aW9uRU5TXzE1
VGV4dE9yaWVuCiBfX1pON1dlYkNvcmUxNkZvbnRQbGF0Zm9ybURhdGFDMkVQNk5TRm9udGZiYmJO
U18xNUZvbnRPcmllbnRhdGlvbkVOU18xNVRleHRPcmllbnRhdGlvbkVOU18xNkZvbnRXaWR0aFZh
cmlhbnRFCiBfX1pON1dlYkNvcmUxNmNvbG9yRnJvbU5TQ29sb3JFUDdOU0NvbG9yCiBfX1pON1dl
YkNvcmUxNmVuY2xvc2luZ0ludFJlY3RFUks3X05TUmVjdAotX19aTjdXZWJDb3JlMTdEZXZpY2VP
cmllbnRhdGlvbjZjcmVhdGVFYmRiZGJkYmIKK19fWk43V2ViQ29yZTIxRGV2aWNlT3JpZW50YXRp
b25EYXRhNmNyZWF0ZUViZGJkYmRiYgogX19aTjdXZWJDb3JlMThTZWFyY2hQb3B1cE1lbnVNYWND
MUVQTlNfMTVQb3B1cE1lbnVDbGllbnRFCiBfX1pON1dlYkNvcmUxOWFwcGxpY2F0aW9uSXNTYWZh
cmlFdgogX19aTjdXZWJDb3JlMjBQbGF0Zm9ybUV2ZW50RmFjdG9yeTI0Y3JlYXRlUGxhdGZvcm1N
b3VzZUV2ZW50RVA3TlNFdmVudFA2TlNWaWV3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggYjRmMTQxYTFj
YjI2NTY3YmZlODQ5MTFlODRlMmNjYzgzYmFiZWRlYS4uOGNkMjAwNjk2NDhlYjJkNWExN2NkM2Y2
ZjdmYWE2MDJkNWYwZjUyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBp
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtNjI1LDggKzYyNSw4IEBACiAg
ICAgICAgICAgICAnZG9tL0RPTVRpbWVTdGFtcC5oJywKICAgICAgICAgICAgICdkb20vRGV2aWNl
TW90aW9uQ2xpZW50LmgnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VNb3Rpb25EYXRhLmgnLAot
ICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oJywKICAgICAgICAgICAgICdkb20v
RGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVu
dGF0aW9uRGF0YS5oJywKICAgICAgICAgICAgICdkb20vRG9jdW1lbnQuaCcsCiAgICAgICAgICAg
ICAnZG9tL0RvY3VtZW50RnJhZ21lbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3VtZW50TWFy
a2VyLmgnLApAQCAtNTI4Niw5ICs1Mjg2LDkgQEAKICAgICAgICAgICAgICdkb20vRGV2aWNlTW90
aW9uRGF0YS5oJywKICAgICAgICAgICAgICdkb20vRGV2aWNlTW90aW9uRXZlbnQuY3BwJywKICAg
ICAgICAgICAgICdkb20vRGV2aWNlTW90aW9uRXZlbnQuaCcsCi0gICAgICAgICAgICAnZG9tL0Rl
dmljZU9yaWVudGF0aW9uLmNwcCcsCiAgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlci5jcHAnLAogICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuaCcsCisgICAgICAgICAgICAnZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5jcHAnLAog
ICAgICAgICAgICAgJ2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCcsCiAgICAgICAgICAg
ICAnZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCcsCiAgICAgICAgICAgICAnZG9tL0RvY3Vt
ZW50LmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
CmluZGV4IDA1NmY4OTRiNmUyMzM5MDJiZjQzMjE1MDMxODJlNjczNTJmNGVmMWEuLjViYWZhNTI5
Yzg5ZGUxYTliYTc5NDQzODUyMjcyOTZlNmE3MDg0NWUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC00OTIzMSw3ICs0OTIzMSwxMSBAQAogCQkJ
CT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNl
T3JpZW50YXRpb24uY3BwIgorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0
aW9uQ2xpZW50LmgiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJPEZpbGUKKwkJCQlSZWxhdGl2ZVBh
dGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIgogCQkJCT4KIAkJCQk8
RmlsZUNvbmZpZ3VyYXRpb24KIAkJCQkJTmFtZT0iRGVidWd8V2luMzIiCkBAIC00OTI4MywxNSAr
NDkyODcsMTEgQEAKIAkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJPC9GaWxlPgogCQkJPEZp
bGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRhdGlvbi5oIgotCQkJCT4K
LQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnQuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuaCIKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0
aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAiCisJCQkJUmVs
YXRpdmVQYXRoPSIuLlxkb21cRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCIKIAkJCQk+CiAJCQkJ
PEZpbGVDb25maWd1cmF0aW9uCiAJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgpAQCAtNDkzNDMsOSAr
NDkzNDMsOSBAQAogCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+CiAJCQk8L0ZpbGU+CiAJCQk8Rmls
ZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
IgorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCQkJ
CT4KLQkJCTwvRmlsZT4KKwkJCTwvRmlsZT4JCiAJCQk8RmlsZQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5cZG9tXERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIgogCQkJCT4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA0OTJmYzEyMzM1
YTRhN2ZjNWNiMDg2NWM3OGZhNmE1ZTA1OWE3ZmNiLi4yMTdhZjU2ZmZlYjg0YWEzNDFlOTRjNTU2
MDllNmMxMGVlZTQ0NjYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNjAzLDcgKzE2MDMsNyBAQAogCQk1N0NGNEM4NzE0Rjc1
OTdBMDBFQ0ZGMTQgLyogRWxlbWVudFNoYWRvdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTdDRjRDODUxNEY3NTk3QTAwRUNGRjE0IC8qIEVsZW1lbnRT
aGFkb3cuaCAqLzsgfTsKIAkJNTkwNUFEQkYxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3
ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkw
NUFEQkQxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRyZWVWaWV3ZXIuY3BwICovOyB9OwogCQk1OTA1
QURDMDEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTkwNUFEQkUxMzAyRjNDRTAwRjExNkRGIC8q
IFhNTFRyZWVWaWV3ZXIuaCAqLzsgfTsKLQkJNTkwRTFCNDkxMUU0RUY0QjAwNjlGNzg0IC8qIERl
dmljZU9yaWVudGF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1OTBFMUI0
OTExRTRFRjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2OUY3
ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTkwRTFCNEIxMUU0RUY3MDAwNjlGNzg0IC8qIEpTRGV2
aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0QTExRTRFRjcwMDA2OUY3ODQgLyogSlNEZXZpY2VP
cmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCAqLzsgfTsKIAkJNTkxMDJGQkIxNDMyN0QzQjAwM0M5
RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OTEwMkZCOTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNl
YXJjaFV0aWxzLmNwcCAqLzsgfTsKIAkJNTkxMDJGQkMxNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRl
bnRTZWFyY2hVdGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTkxMDJGQkExNDMyN0QzQjAwM0M5RDA0IC8qIENvbnRlbnRTZWFyY2hVdGlscy5oICov
OyB9OwpAQCAtMTYzOSw3ICsxNjM5LDcgQEAKIAkJNTlDMjdGMDcxMzhEMjhDRjAwNzlCN0UyIC8q
IE5ldHdvcmtSZXNvdXJjZXNEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1OUMyN0YwNjEzOEQyOENGMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNl
c0RhdGEuaCAqLzsgfTsKIAkJNTlDMjgwNDUxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUMyODA0
MzEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmNwcCAqLzsgfTsKIAkJNTlDMjgwNDYxMzhE
QzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTlDMjgwNDQxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5o
ICovOyB9OwotCQk1OUQxQzEwNDExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb24u
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlEMUMx
MDMxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNwcCAqLzsgfTsKKwkJNTlE
MUMxMDQxMUVCNURDRjAwQjYzOEM4IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUQxQzEwMzExRUI1RENG
MDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCAqLzsgfTsKIAkJNTlERTc5MDQx
M0YxNkM3RjAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlERTc5MDMxM0YxNkM3RjAwMDdGQ0RGIC8qIEph
dmFNZXRob2RKU0MuY3BwICovOyB9OwogCQk1OURFNzkwNjEzRjE2QzhDMDAwN0ZDREYgLyogSmF2
YU1ldGhvZEpTQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTlERTc5MDUxM0YxNkM4QzAwMDdGQ0RGIC8qIEphdmFNZXRob2RKU0MuaCAqLzsgfTsKIAkJ
NTlFNTYwQTcxMTA1MzM2NjAwQUExMjU4IC8qIEphdmFDbGFzc0pTQy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlFNTYwQTYxMTA1MzM2NjAwQUExMjU4
IC8qIEphdmFDbGFzc0pTQy5oICovOyB9OwpAQCAtODY4MCw3ICs4NjgwLDcgQEAKIAkJNTdDRjRD
ODUxNEY3NTk3QTAwRUNGRjE0IC8qIEVsZW1lbnRTaGFkb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRWxlbWVudFNoYWRvdy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1OTA1QURCRDEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxUcmVlVmlld2VyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkwNUFEQkUxMzAyRjNDRTAwRjExNkRGIC8qIFhNTFRy
ZWVWaWV3ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MVHJlZVZpZXdl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1OTBFMUI0ODExRTRFRjRCMDA2OUY3
ODQgLyogRGV2aWNlT3JpZW50YXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRGV2aWNlT3JpZW50YXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTkw
RTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uRGF0YS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTkwRTFCNEExMUU0RUY3MDAwNjlGNzg0IC8qIEpTRGV2
aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1OTEwMkZCOTE0MzI3RDNCMDAzQzlEMDQgLyogQ29udGVudFNl
YXJjaFV0aWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbnRl
bnRTZWFyY2hVdGlscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5MTAyRkJB
MTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudFNlYXJjaFV0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04NzE5LDcgKzg3MTksNyBAQAogCQk1OUMyN0YwNjEzOEQyOENGMDA3OUI3
RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTmV0d29ya1Jlc291cmNlc0RhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNTlDMjgwNDMxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxFcnJvcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1OUMyODA0NDEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTEVycm9ycy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk1OUQxQzEwMzExRUI1RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50
YXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlT3Jp
ZW50YXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUQxQzEwMzExRUI1
RENGMDBCNjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRGF0YS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU5REU3OTAzMTNGMTZDN0YwMDA3RkNERiAvKiBKYXZhTWV0
aG9kSlNDLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEphdmFNZXRo
b2RKU0MuY3BwOyBwYXRoID0ganNjL0phdmFNZXRob2RKU0MuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1OURFNzkwNTEzRjE2QzhDMDAwN0ZDREYgLyogSmF2YU1ldGhvZEpTQy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKYXZhTWV0aG9kSlNDLmg7IHBhdGgg
PSBqc2MvSmF2YU1ldGhvZEpTQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1OUU1
NjBBNjExMDUzMzY2MDBBQTEyNTggLyogSmF2YUNsYXNzSlNDLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IEphdmFDbGFzc0pTQy5oOyBwYXRoID0ganNjL0phdmFDbGFzc0pTQy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjEyODQsMTEgKzIxMjg0LDExIEBACiAJ
CQkJMzFGQjFBNTQxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmNwcCAqLywK
IAkJCQkzMUZCMUE1NTEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuaCAqLywK
IAkJCQkzMUZCMUE1NjEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuaWRsICov
LAotCQkJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbi5jcHAg
Ki8sCi0JCQkJNTkwRTFCNDgxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0aW9uLmgg
Ki8sCiAJCQkJNTlBOEYxRDcxMUE2OTUyMDAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ2xp
ZW50LmggKi8sCiAJCQkJNTlBOEYxRDMxMUE2OTUwODAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5jcHAgKi8sCiAJCQkJNTlBOEYxRDUxMUE2OTUxMzAwMUFDMzRBIC8qIERl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oICovLAorCQkJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2
MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwICovLAorCQkJCTU5MEUxQjQ4MTFFNEVG
NEIwMDY5Rjc4NCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCAqLywKIAkJCQk1OUE4NUVBMTEx
OUQ2OEQ5MDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8sCiAJCQkJNTlB
ODVFQTMxMTlENjhFQzAwREVGMUVGIC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKIAkJ
CQk1OUE4NUVBQTExOUQ3QjZFMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwg
Ki8sCkBAIC0yMjI1MywxMCArMjIyNTMsMTAgQEAKIAkJCQkzMUZCMUE1OTEyMEE1RDA2MDBEQzAy
QTAgLyogRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFGQjFB
NUIxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovLAog
CQkJCTMxRkIxQTVEMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJNTkwRTFCNDkxMUU0RUY0QjAwNjlGNzg0IC8qIERldmljZU9yaWVudGF0
aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk1OUE4RjFEODExQTY5NTIwMDAxQUMzNEEgLyogRGV2
aWNlT3JpZW50YXRpb25DbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTU5MzA5QTEzMTFGNEFF
NkEwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suaCBpbiBIZWFkZXJzICov
LAogCQkJCTU5QThGMUQ2MTFBNjk1MTMwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU5MEUxQjQ5MTFFNEVGNEIwMDY5Rjc4NCAvKiBE
ZXZpY2VPcmllbnRhdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJCTU5QTg1RUE0MTE5RDY4
RUMwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJ
CQlDRUNBREZDNzE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQWx0ZXJuYXRpdmUuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUNFQ0FERkM5MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25Db21t
YW5kLmggaW4gSGVhZGVycyAqLywKQEAgLTI1NzU5LDkgKzI1NzU5LDkgQEAKIAkJCQkzMUZCMUE1
ODEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMUZCMUE1QTEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRGF0YS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUZCMUE1QzEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNl
TW90aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTlEMUMxMDQxMUVCNURDRjAwQjYz
OEM4IC8qIERldmljZU9yaWVudGF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5MzA5QTEx
MTFGNEFFNTgwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJNTlBOEYxRDQxMUE2OTUwODAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1OUQxQzEwNDExRUI1RENGMDBC
NjM4QzggLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5
QTg1RUEyMTE5RDY4RDkwMERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUNFQ0FERkM2MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRl
cm5hdGl2ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRUNBREZDODE1Mzc3OEZGMDBFMzcwNjgg
LyogRGljdGF0aW9uQ29tbWFuZC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0
b20uY3BwCmluZGV4IGVjNzg3MWQ1MTEyNmZlZDJlY2UxNzY1ZTdlNWVlZmE0YjZjZGY2N2IuLjVh
MGZmN2Q3MzU4MTU4ODk2M2ZmMjg5NWM1NWUyN2JlNDBiZjQyOTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50
Q3VzdG9tLmNwcApAQCAtMjksNyArMjksNyBAQAogCiAjaW5jbHVkZSAiSlNEZXZpY2VPcmllbnRh
dGlvbkV2ZW50LmgiCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgorI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZl
bnQuaCIKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKQEAgLTgzLDcgKzgzLDcgQEAgSlNWYWx1ZSBK
U0RldmljZU9yaWVudGF0aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KEV4ZWNT
dGF0ZSogZXhlYykKICAgICBkb3VibGUgZ2FtbWEgPSBleGVjLT5hcmd1bWVudCg1KS50b051bWJl
cihleGVjKTsKICAgICBib29sIGFic29sdXRlUHJvdmlkZWQgPSAhZXhlYy0+YXJndW1lbnQoNSku
aXNVbmRlZmluZWRPck51bGwoKTsKICAgICBib29sIGFic29sdXRlID0gZXhlYy0+YXJndW1lbnQo
NikudG9Cb29sZWFuKCk7Ci0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBvcmllbnRhdGlv
biA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoYWxwaGFQcm92aWRlZCwgYWxwaGEsIGJldGFQ
cm92aWRlZCwgYmV0YSwgZ2FtbWFQcm92aWRlZCwgZ2FtbWEsIGFic29sdXRlUHJvdmlkZWQsIGFi
c29sdXRlKTsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBvcmllbnRhdGlvbiA9
IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGFscGhhUHJvdmlkZWQsIGFscGhhLCBiZXRh
UHJvdmlkZWQsIGJldGEsIGdhbW1hUHJvdmlkZWQsIGdhbW1hLCBhYnNvbHV0ZVByb3ZpZGVkLCBh
YnNvbHV0ZSk7CiAgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCogaW1wID0gc3RhdGljX2Nhc3Q8
RGV2aWNlT3JpZW50YXRpb25FdmVudCo+KGltcGwoKSk7CiAgICAgaW1wLT5pbml0RGV2aWNlT3Jp
ZW50YXRpb25FdmVudCh0eXBlLCBidWJibGVzLCBjYW5jZWxhYmxlLCBvcmllbnRhdGlvbi5nZXQo
KSk7CiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50Q3VzdG9tLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZl
bnRDdXN0b20uY3BwCmluZGV4IGZjM2ZjMjAyNmQxMDUyNWNlYWNkZTA0YTY0YTE2ZWExZGMwNGUx
YjYuLmJiZGMzZmNlOGFhNjdiYzg5MjI3MjMyMjI0ZjAzNTVhNjU1N2YyZWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmljZU9yaWVudGF0aW9uRXZl
bnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERl
dmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpZiBF
TkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQogCi0jaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb24u
aCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJWOEJpbmRp
bmcuaCIKICNpbmNsdWRlICJWOEJpbmRpbmdNYWNyb3MuaCIKICNpbmNsdWRlICJWOFByb3h5Lmgi
CkBAIC05Myw3ICs5Myw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERldmljZU9yaWVudGF0
aW9uRXZlbnQ6OmluaXREZXZpY2VPcmllbnRhdGlvbkV2ZW50Q2FsbGJhCiAgICAgZG91YmxlIGdh
bW1hID0gYXJnc1s1XS0+TnVtYmVyVmFsdWUoKTsKICAgICBib29sIGFic29sdXRlUHJvdmlkZWQg
PSAhaXNVbmRlZmluZWRPck51bGwoYXJnc1s2XSk7CiAgICAgYm9vbCBhYnNvbHV0ZSA9IGFyZ3Nb
Nl0tPkJvb2xlYW5WYWx1ZSgpOwotICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gb3JpZW50
YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKGFscGhhUHJvdmlkZWQsIGFscGhhLCBi
ZXRhUHJvdmlkZWQsIGJldGEsIGdhbW1hUHJvdmlkZWQsIGdhbW1hLCBhYnNvbHV0ZVByb3ZpZGVk
LCBhYnNvbHV0ZSk7CisgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gb3JpZW50YXRp
b24gPSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShhbHBoYVByb3ZpZGVkLCBhbHBoYSwg
YmV0YVByb3ZpZGVkLCBiZXRhLCBnYW1tYVByb3ZpZGVkLCBnYW1tYSwgYWJzb2x1dGVQcm92aWRl
ZCwgYWJzb2x1dGUpOwogICAgIGltcC0+aW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQodHlwZSwg
YnViYmxlcywgY2FuY2VsYWJsZSwgb3JpZW50YXRpb24uZ2V0KCkpOwogICAgIHJldHVybiB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4oKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
T01BbGxJbk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NQWxsSW5PbmUuY3BwCmluZGV4
IDE0OGZjM2VjOTgyYzk4ZjZmYmQyNDliY2JiY2U1MTkzYmMzYjc5ZGUuLmQzZDQ5MDJkNGM4NmFk
ZDY1YjUxZjM0NGRhMmI5OTBiYmUzYWIzMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9ET01BbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUFsbEluT25lLmNw
cApAQCAtNTUsOCArNTUsOCBAQAogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuY3Bw
IgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkRhdGEuY3BwIgogI2luY2x1ZGUgIkRldmljZU1vdGlv
bkV2ZW50LmNwcCIKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5jcHAiCiAjaW5jbHVkZSAi
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkRhdGEuY3BwIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwIgogI2lu
Y2x1ZGUgIkRvY3VtZW50LmNwcCIKICNpbmNsdWRlICJEb2N1bWVudEV2ZW50UXVldWUuY3BwIgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDlhOGMyNTdjYTc0MTk3Y2U3YjNiODI4ODY4YWY2MzQxMzc4NWQ0YzUuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwNiArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIE9XTkVSIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotUGFzc1JlZlB0cjxEZXZpY2VPcmll
bnRhdGlvbj4gRGV2aWNlT3JpZW50YXRpb246OmNyZWF0ZSgpCi17Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBEZXZpY2VPcmllbnRhdGlvbik7Ci19Ci0KLVBhc3NSZWZQdHI8RGV2aWNlT3JpZW50
YXRpb24+IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRv
dWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJv
dmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFi
c29sdXRlKQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb24oY2Fu
UHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1t
YSwgZ2FtbWEsIGNhblByb3ZpZGVBYnNvbHV0ZSwgYWJzb2x1dGUpKTsKLX0KLQotCi1EZXZpY2VP
cmllbnRhdGlvbjo6RGV2aWNlT3JpZW50YXRpb24oKQotICAgIDogbV9jYW5Qcm92aWRlQWxwaGEo
ZmFsc2UpCi0gICAgLCBtX2NhblByb3ZpZGVCZXRhKGZhbHNlKQotICAgICwgbV9jYW5Qcm92aWRl
R2FtbWEoZmFsc2UpCi0gICAgLCBtX2NhblByb3ZpZGVBYnNvbHV0ZShmYWxzZSkKLSAgICAsIG1f
YWxwaGEoMCkKLSAgICAsIG1fYmV0YSgwKQotICAgICwgbV9nYW1tYSgwKQotICAgICwgbV9hYnNv
bHV0ZShmYWxzZSkKLXsKLX0KLQotRGV2aWNlT3JpZW50YXRpb246OkRldmljZU9yaWVudGF0aW9u
KGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEs
IGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNh
blByb3ZpZGVBYnNvbHV0ZSwgYm9vbCBhYnNvbHV0ZSkKLSAgICA6IG1fY2FuUHJvdmlkZUFscGhh
KGNhblByb3ZpZGVBbHBoYSkKLSAgICAsIG1fY2FuUHJvdmlkZUJldGEoY2FuUHJvdmlkZUJldGEp
Ci0gICAgLCBtX2NhblByb3ZpZGVHYW1tYShjYW5Qcm92aWRlR2FtbWEpCi0gICAgLCBtX2NhblBy
b3ZpZGVBYnNvbHV0ZShjYW5Qcm92aWRlQWJzb2x1dGUpCi0gICAgLCBtX2FscGhhKGFscGhhKQot
ICAgICwgbV9iZXRhKGJldGEpCi0gICAgLCBtX2dhbW1hKGdhbW1hKQotICAgICwgbV9hYnNvbHV0
ZShhYnNvbHV0ZSkKLXsKLX0KLQotZG91YmxlIERldmljZU9yaWVudGF0aW9uOjphbHBoYSgpIGNv
bnN0Ci17Ci0gICAgcmV0dXJuIG1fYWxwaGE7Ci19Ci0KLWRvdWJsZSBEZXZpY2VPcmllbnRhdGlv
bjo6YmV0YSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYmV0YTsKLX0KLQotZG91YmxlIERldmlj
ZU9yaWVudGF0aW9uOjpnYW1tYSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fZ2FtbWE7Ci19Ci0K
LWJvb2wgRGV2aWNlT3JpZW50YXRpb246OmFic29sdXRlKCkgY29uc3QKLXsKLSAgICByZXR1cm4g
bV9hYnNvbHV0ZTsKLX0KLQotYm9vbCBEZXZpY2VPcmllbnRhdGlvbjo6Y2FuUHJvdmlkZUFscGhh
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92aWRlQWxwaGE7Ci19Ci0KLWJvb2wgRGV2
aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVCZXRhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9j
YW5Qcm92aWRlQmV0YTsKLX0KLQotYm9vbCBEZXZpY2VPcmllbnRhdGlvbjo6Y2FuUHJvdmlkZUdh
bW1hKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jYW5Qcm92aWRlR2FtbWE7Ci19Ci0KLWJvb2wg
RGV2aWNlT3JpZW50YXRpb246OmNhblByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fY2FuUHJvdmlkZUFic29sdXRlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb24uaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjNjc3ZDQzMzA4NDAyMTQ3ZmE2MWEzNTk1MmQ0YWQ4NzNhYmU3OTA2Li4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9EZXZpY2VPcmllbnRhdGlvbi5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBPV05FUiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25faAotI2RlZmluZSBEZXZpY2VPcmllbnRh
dGlvbl9oCi0KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgRGV2aWNlT3JpZW50YXRp
b24gOiBwdWJsaWMgUmVmQ291bnRlZDxEZXZpY2VPcmllbnRhdGlvbj4gewotcHVibGljOgotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBjcmVhdGUoKTsKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gY3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFs
cGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJvdmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29s
IGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1hLCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSA9
IGZhbHNlLCBib29sIGFic29sdXRlID0gZmFsc2UpOwotCi0gICAgZG91YmxlIGFscGhhKCkgY29u
c3Q7Ci0gICAgZG91YmxlIGJldGEoKSBjb25zdDsKLSAgICBkb3VibGUgZ2FtbWEoKSBjb25zdDsK
LSAgICBib29sIGFic29sdXRlKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5Qcm92aWRlQWxwaGEoKSBj
b25zdDsKLSAgICBib29sIGNhblByb3ZpZGVCZXRhKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5Qcm92
aWRlR2FtbWEoKSBjb25zdDsKLSAgICBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0Owot
Ci1wcml2YXRlOgotICAgIERldmljZU9yaWVudGF0aW9uKCk7Ci0gICAgRGV2aWNlT3JpZW50YXRp
b24oYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0
YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wg
Y2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKTsKLQotICAgIGJvb2wgbV9jYW5Qcm92
aWRlQWxwaGE7Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVCZXRhOwotICAgIGJvb2wgbV9jYW5Qcm92
aWRlR2FtbWE7Ci0gICAgYm9vbCBtX2NhblByb3ZpZGVBYnNvbHV0ZTsKLSAgICBkb3VibGUgbV9h
bHBoYTsKLSAgICBkb3VibGUgbV9iZXRhOwotICAgIGRvdWJsZSBtX2dhbW1hOwotICAgIGJvb2wg
bV9hYnNvbHV0ZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIERl
dmljZU9yaWVudGF0aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9u
Q2xpZW50LmgKaW5kZXggMmMxNmIwY2Q4YmM3YTc4NTA5MTZmOGJkMDFkNjU4ZjVmZjA2OWM0Yi4u
NDA0OWMwM2E0YTE0NGE3NDUyMjlhMDU0MTM4MWNkNTdlMTRjNjViNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ2xpZW50LmgKQEAgLTI4LDE4ICsyOCwxNyBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERldmljZU9yaWVudGF0aW9uOwogY2xhc3Mg
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOworY2xhc3MgRGV2aWNlT3JpZW50YXRpb25EYXRh
OwogY2xhc3MgUGFnZTsKIAogY2xhc3MgRGV2aWNlT3JpZW50YXRpb25DbGllbnQgewogcHVibGlj
OgogICAgIHZpcnR1YWwgfkRldmljZU9yaWVudGF0aW9uQ2xpZW50KCkge30KLQogICAgIHZpcnR1
YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlciopID0gMDsK
ICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
c3RvcFVwZGF0aW5nKCkgPSAwOwotICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RP
cmllbnRhdGlvbigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0
YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSA9IDA7CiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDVkNGJj
ZGRmZjFiNTlkNTI4NmE4MmJhNTFmOThjY2FjNGE5ODAyZDUuLjBkMDAyYzFlMmJmNjk0ZjFlZjIz
NDQ5ZWY1M2Y0OTMxYzQ0MDk2MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC0yNiw4ICsyNiw4IEBACiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCiAKLSNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9u
Q2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAi
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01NSw3
ICs1NSw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKFRp
bWVyPERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcj4qCiAgICAgQVNTRVJUX1VOVVNFRCh0aW1l
ciwgdGltZXIgPT0gJm1fdGltZXIpOwogICAgIEFTU0VSVChtX2NsaWVudC0+bGFzdE9yaWVudGF0
aW9uKCkpOwogCi0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBvcmllbnRhdGlvbiA9IG1f
Y2xpZW50LT5sYXN0T3JpZW50YXRpb24oKTsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25E
YXRhPiBvcmllbnRhdGlvbiA9IG1fY2xpZW50LT5sYXN0T3JpZW50YXRpb24oKTsKICAgICBSZWZQ
dHI8RGV2aWNlT3JpZW50YXRpb25FdmVudD4gZXZlbnQgPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
OjpjcmVhdGUoZXZlbnROYW1lcygpLmRldmljZW9yaWVudGF0aW9uRXZlbnQsIG9yaWVudGF0aW9u
LmdldCgpKTsKIAogICAgIFZlY3RvcjxSZWZQdHI8RE9NV2luZG93PiA+IGxpc3RlbmVyc1ZlY3Rv
cjsKQEAgLTEyNyw3ICsxMjcsNyBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6
cmVzdW1lRXZlbnRzRm9yQWxsTGlzdGVuZXJzKERPTVdpbmRvdyogd2luZG93KQogICAgICAgICBh
ZGRMaXN0ZW5lcih3aW5kb3cpOwogfQogCi12b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0
aW9uKQordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU9y
aWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YSogb3JpZW50YXRpb24pCiB7CiAgICAgUmVm
UHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGV2ZW50ID0gRGV2aWNlT3JpZW50YXRpb25FdmVu
dDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZpY2VvcmllbnRhdGlvbkV2ZW50LCBvcmllbnRhdGlv
bik7CiAgICAgVmVjdG9yPFJlZlB0cjxET01XaW5kb3c+ID4gbGlzdGVuZXJzVmVjdG9yOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCmluZGV4
IDdmOGMwMDhmMDU2Y2I5NDhkMjU2MDVjMzUxZGQ5NWZhMTUzOGEzZTcuLjBmNDJiZjQzMjg0ZDZm
OWNiZmRhMmZiZTg0OTljMTcxYmY0MzcyMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi1jbGFzcyBEZXZpY2VPcmllbnRhdGlvbjsKK2NsYXNzIERldmljZU9y
aWVudGF0aW9uRGF0YTsKIGNsYXNzIERldmljZU9yaWVudGF0aW9uQ2xpZW50OwogCiBjbGFzcyBE
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIgOiBwdWJsaWMgU3VwcGxlbWVudDxQYWdlPiB7CkBA
IC01MCw3ICs1MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHN1c3BlbmRFdmVudHNGb3JBbGxMaXN0
ZW5lcnMoRE9NV2luZG93Kik7CiAgICAgdm9pZCByZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMo
RE9NV2luZG93Kik7CiAKLSAgICB2b2lkIGRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmlj
ZU9yaWVudGF0aW9uKik7CisgICAgdm9pZCBkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZp
Y2VPcmllbnRhdGlvbkRhdGEqKTsKIAogICAgIGJvb2wgaXNBY3RpdmUoKSB7IHJldHVybiAhbV9s
aXN0ZW5lcnMuaXNFbXB0eSgpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uRGF0YS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmU3MzAyZmQ3ZjhiYmI1Mjg5YjdmNmU2ZTU1NjE1
NDkxOGJmNmFhNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkRhdGEuY3BwCkBAIC0wLDAgKzEsMTA2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
ICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKK1Bhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBEZXZpY2VP
cmllbnRhdGlvbkRhdGE6OmNyZWF0ZSgpCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEpOworfQorCitQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0
YT4gRGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRv
dWJsZSBhbHBoYSwgYm9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJv
dmlkZUdhbW1hLCBkb3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFi
c29sdXRlKQoreworICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25EYXRh
KGNhblByb3ZpZGVBbHBoYSwgYWxwaGEsIGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92aWRl
R2FtbWEsIGdhbW1hLCBjYW5Qcm92aWRlQWJzb2x1dGUsIGFic29sdXRlKSk7Cit9CisKKworRGV2
aWNlT3JpZW50YXRpb25EYXRhOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEoKQorICAgIDogbV9jYW5Q
cm92aWRlQWxwaGEoZmFsc2UpCisgICAgLCBtX2NhblByb3ZpZGVCZXRhKGZhbHNlKQorICAgICwg
bV9jYW5Qcm92aWRlR2FtbWEoZmFsc2UpCisgICAgLCBtX2NhblByb3ZpZGVBYnNvbHV0ZShmYWxz
ZSkKKyAgICAsIG1fYWxwaGEoMCkKKyAgICAsIG1fYmV0YSgwKQorICAgICwgbV9nYW1tYSgwKQor
ICAgICwgbV9hYnNvbHV0ZShmYWxzZSkKK3sKK30KKworRGV2aWNlT3JpZW50YXRpb25EYXRhOjpE
ZXZpY2VPcmllbnRhdGlvbkRhdGEoYm9vbCBjYW5Qcm92aWRlQWxwaGEsIGRvdWJsZSBhbHBoYSwg
Ym9vbCBjYW5Qcm92aWRlQmV0YSwgZG91YmxlIGJldGEsIGJvb2wgY2FuUHJvdmlkZUdhbW1hLCBk
b3VibGUgZ2FtbWEsIGJvb2wgY2FuUHJvdmlkZUFic29sdXRlLCBib29sIGFic29sdXRlKQorICAg
IDogbV9jYW5Qcm92aWRlQWxwaGEoY2FuUHJvdmlkZUFscGhhKQorICAgICwgbV9jYW5Qcm92aWRl
QmV0YShjYW5Qcm92aWRlQmV0YSkKKyAgICAsIG1fY2FuUHJvdmlkZUdhbW1hKGNhblByb3ZpZGVH
YW1tYSkKKyAgICAsIG1fY2FuUHJvdmlkZUFic29sdXRlKGNhblByb3ZpZGVBYnNvbHV0ZSkKKyAg
ICAsIG1fYWxwaGEoYWxwaGEpCisgICAgLCBtX2JldGEoYmV0YSkKKyAgICAsIG1fZ2FtbWEoZ2Ft
bWEpCisgICAgLCBtX2Fic29sdXRlKGFic29sdXRlKQoreworfQorCitkb3VibGUgRGV2aWNlT3Jp
ZW50YXRpb25EYXRhOjphbHBoYSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYWxwaGE7Cit9CisK
K2RvdWJsZSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmJldGEoKSBjb25zdAoreworICAgIHJldHVy
biBtX2JldGE7Cit9CisKK2RvdWJsZSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmdhbW1hKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9nYW1tYTsKK30KKworYm9vbCBEZXZpY2VPcmllbnRhdGlvbkRh
dGE6OmFic29sdXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9hYnNvbHV0ZTsKK30KKworYm9v
bCBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNhblByb3ZpZGVBbHBoYSgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fY2FuUHJvdmlkZUFscGhhOworfQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0
YTo6Y2FuUHJvdmlkZUJldGEoKSBjb25zdAoreworICAgIHJldHVybiBtX2NhblByb3ZpZGVCZXRh
OworfQorCitib29sIERldmljZU9yaWVudGF0aW9uRGF0YTo6Y2FuUHJvdmlkZUdhbW1hKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9jYW5Qcm92aWRlR2FtbWE7Cit9CisKK2Jvb2wgRGV2aWNlT3Jp
ZW50YXRpb25EYXRhOjpjYW5Qcm92aWRlQWJzb2x1dGUoKSBjb25zdAoreworICAgIHJldHVybiBt
X2NhblByb3ZpZGVBYnNvbHV0ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkZjliNjU4
ZmFiODlmOGUxYTRlN2FhYmZkMmRjN2U5MzllMDY1MDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25EYXRhLmgKQEAgLTAsMCArMSw2NCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25EYXRhX2gKKyNkZWZpbmUgRGV2aWNl
T3JpZW50YXRpb25EYXRhX2gKKworI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBEZXZp
Y2VPcmllbnRhdGlvbkRhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxEZXZpY2VPcmllbnRhdGlvbkRh
dGE+IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRh
dGE+IGNyZWF0ZSgpOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0
YT4gY3JlYXRlKGJvb2wgY2FuUHJvdmlkZUFscGhhLCBkb3VibGUgYWxwaGEsIGJvb2wgY2FuUHJv
dmlkZUJldGEsIGRvdWJsZSBiZXRhLCBib29sIGNhblByb3ZpZGVHYW1tYSwgZG91YmxlIGdhbW1h
LCBib29sIGNhblByb3ZpZGVBYnNvbHV0ZSA9IGZhbHNlLCBib29sIGFic29sdXRlID0gZmFsc2Up
OworCisgICAgZG91YmxlIGFscGhhKCkgY29uc3Q7CisgICAgZG91YmxlIGJldGEoKSBjb25zdDsK
KyAgICBkb3VibGUgZ2FtbWEoKSBjb25zdDsKKyAgICBib29sIGFic29sdXRlKCkgY29uc3Q7Cisg
ICAgYm9vbCBjYW5Qcm92aWRlQWxwaGEoKSBjb25zdDsKKyAgICBib29sIGNhblByb3ZpZGVCZXRh
KCkgY29uc3Q7CisgICAgYm9vbCBjYW5Qcm92aWRlR2FtbWEoKSBjb25zdDsKKyAgICBib29sIGNh
blByb3ZpZGVBYnNvbHV0ZSgpIGNvbnN0OworCitwcml2YXRlOgorICAgIERldmljZU9yaWVudGF0
aW9uRGF0YSgpOworICAgIERldmljZU9yaWVudGF0aW9uRGF0YShib29sIGNhblByb3ZpZGVBbHBo
YSwgZG91YmxlIGFscGhhLCBib29sIGNhblByb3ZpZGVCZXRhLCBkb3VibGUgYmV0YSwgYm9vbCBj
YW5Qcm92aWRlR2FtbWEsIGRvdWJsZSBnYW1tYSwgYm9vbCBjYW5Qcm92aWRlQWJzb2x1dGUsIGJv
b2wgYWJzb2x1dGUpOworCisgICAgYm9vbCBtX2NhblByb3ZpZGVBbHBoYTsKKyAgICBib29sIG1f
Y2FuUHJvdmlkZUJldGE7CisgICAgYm9vbCBtX2NhblByb3ZpZGVHYW1tYTsKKyAgICBib29sIG1f
Y2FuUHJvdmlkZUFic29sdXRlOworICAgIGRvdWJsZSBtX2FscGhhOworICAgIGRvdWJsZSBtX2Jl
dGE7CisgICAgZG91YmxlIG1fZ2FtbWE7CisgICAgYm9vbCBtX2Fic29sdXRlOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRGV2aWNlT3JpZW50YXRpb25EYXRhX2gK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmNwcAppbmRleCA3
ZGVjYzdjMDYzMjEzMmIzMjYxZmQ4NDAyZTVkNDBjNDUxYzg3MzY3Li5iYWJjNzdlNmJmYjAyMmJl
NzVmNzMyZGQzOTNjNjRmNDRlMjYzMzY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQuY3BwCkBAIC0yNiw3ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgogCi0jaW5jbHVkZSAiRGV2
aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKICNp
bmNsdWRlICJFdmVudE5hbWVzLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM2LDE3ICsz
NiwxNyBAQCBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojp+RGV2aWNlT3JpZW50YXRpb25FdmVudCgp
CiB9CiAKIERldmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQoKQot
ICAgIDogbV9vcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbjo6Y3JlYXRlKCkpCisgICAgOiBt
X29yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKCkpCiB7CiB9CiAKLURl
dmljZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWlj
U3RyaW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKK0Rldmlj
ZU9yaWVudGF0aW9uRXZlbnQ6OkRldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudFR5cGUsIERldmljZU9yaWVudGF0aW9uRGF0YSogb3JpZW50YXRpb24pCiAgICAg
OiBFdmVudChldmVudFR5cGUsIGZhbHNlLCBmYWxzZSkgLy8gQ2FuJ3QgYnViYmxlLCBub3QgY2Fu
Y2VsYWJsZQogICAgICwgbV9vcmllbnRhdGlvbihvcmllbnRhdGlvbikKIHsKIH0KIAotdm9pZCBE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50Ojppbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBB
dG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxlcywgYm9vbCBjYW5jZWxhYmxlLCBEZXZpY2VP
cmllbnRhdGlvbiogb3JpZW50YXRpb24pCit2b2lkIERldmljZU9yaWVudGF0aW9uRXZlbnQ6Omlu
aXREZXZpY2VPcmllbnRhdGlvbkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgYm9vbCBi
dWJibGVzLCBib29sIGNhbmNlbGFibGUsIERldmljZU9yaWVudGF0aW9uRGF0YSogb3JpZW50YXRp
b24pCiB7CiAgICAgaWYgKGRpc3BhdGNoZWQoKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgKaW5kZXggZDk1OTg0MzEyZmIxNTMw
YmIwYmJkYzNhMDQ0MmUxNTU3YWExYWNmOS4uZTE5NmVhNWI5M2U0Y2Y3NDg0YjkzY2I3ZWNmZWVh
ZGI3ZmM0MjNiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25FdmVu
dC5oCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRGV2
aWNlT3JpZW50YXRpb247CitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkRhdGE7CiAKIGNsYXNzIERl
dmljZU9yaWVudGF0aW9uRXZlbnQgOiBwdWJsaWMgRXZlbnQgewogcHVibGljOgpAQCAtMzksMjIg
KzM5LDIyIEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV2
aWNlT3JpZW50YXRpb25FdmVudCk7CiAgICAgfQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldmlj
ZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwg
RGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorICAgIHN0YXRpYyBQYXNzUmVmUHRyPERl
dmljZU9yaWVudGF0aW9uRXZlbnQ+IGNyZWF0ZShjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlw
ZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlvbikKICAgICB7CiAgICAgICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgRGV2aWNlT3JpZW50YXRpb25FdmVudChldmVudFR5cGUsIG9yaWVu
dGF0aW9uKSk7CiAgICAgfQogCi0gICAgdm9pZCBpbml0RGV2aWNlT3JpZW50YXRpb25FdmVudChj
b25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGJvb2wgYnViYmxlcywgYm9vbCBjYW5jZWxhYmxlLCBE
ZXZpY2VPcmllbnRhdGlvbiopOworICAgIHZvaWQgaW5pdERldmljZU9yaWVudGF0aW9uRXZlbnQo
Y29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGJ1YmJsZXMsIGJvb2wgY2FuY2VsYWJsZSwg
RGV2aWNlT3JpZW50YXRpb25EYXRhKik7CiAKLSAgICBEZXZpY2VPcmllbnRhdGlvbiogb3JpZW50
YXRpb24oKSBjb25zdCB7IHJldHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9CisgICAgRGV2aWNl
T3JpZW50YXRpb25EYXRhKiBvcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fb3JpZW50YXRp
b24uZ2V0KCk7IH0KIAogICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VO
YW1lKCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCgpOwot
ICAgIERldmljZU9yaWVudGF0aW9uRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUs
IERldmljZU9yaWVudGF0aW9uKik7CisgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudChjb25zdCBB
dG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRGV2aWNlT3JpZW50YXRpb25EYXRhKik7CiAKLSAgICBS
ZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fb3JpZW50YXRpb247CisgICAgUmVmUHRyPERldmlj
ZU9yaWVudGF0aW9uRGF0YT4gbV9vcmllbnRhdGlvbjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAppbmRleCAzOGM4YzE4ZDE4MDk4
NTlkZjc4ZmQ3NGQyZWQ1YjViNzY4Mjk5OTI5Li45NzlhNGFjZDg1MTAyMTdkYzM3MDBhMjQwYzQ3
MDQ1MzA3ZjQ5MWNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGll
bnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC01OTEs
NyArNTkxLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlciopIHsgfQogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0
aW5nKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpIHsgfQotICAgIHZpcnR1
YWwgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIDA7
IH0KKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkg
Y29uc3QgeyByZXR1cm4gMDsgfQogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXJEZXN0cm95ZWQoKSB7IH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmNwcAppbmRl
eCAyZmE1YWNiZWVmZWM4ZmMzNTc0ZmExMjFjYmQxNTg4YWQwZGE3NjZjLi5jN2RiOTA5OWVlMmQ5
NDkxYWQyYTM0MjNkZDM2Y2EyMzZmNjkwMTBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3BwCkBA
IC01NSw3ICs1NSw3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrOjpzdG9wVXBk
YXRpbmcoKQogICAgIG1fdGltZXIuc3RvcCgpOwogfQogCi12b2lkIERldmljZU9yaWVudGF0aW9u
Q2xpZW50TW9jazo6c2V0T3JpZW50YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4g
b3JpZW50YXRpb24pCit2b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jazo6c2V0T3JpZW50
YXRpb24oUGFzc1JlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkRhdGE+IG9yaWVudGF0aW9uKQogewog
ICAgIG1fb3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjsKICAgICBpZiAobV9pc1VwZGF0aW5nICYm
ICFtX3RpbWVyLmlzQWN0aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbW9jay9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suaAppbmRleCAxYWRjNjFmZDNl
NDdiOGYyMzQ2YjA2ODgzOWQxYmM5MDU5OTkxNDZlLi40ZDU1ZDIwN2E2NDU5NDUxZmEwY2Q4YTQ2
MDBhYjJmOTFlYmE5ZjRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50TW9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmgKQEAgLTI2LDggKzI2LDggQEAK
ICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrX2gKICNkZWZpbmUgRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRNb2NrX2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAj
aW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbkRhdGEuaCIKICNpbmNsdWRlICJUaW1lci5oIgogCiAjaW5jbHVkZSA8d3RmL1Bhc3NS
ZWZQdHIuaD4KQEAgLTQ4LDE1ICs0OCwxNSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNl
dENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKikgT1ZFUlJJREU7CiAgICAg
dmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQg
c3RvcFVwZGF0aW5nKCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbiog
bGFzdE9yaWVudGF0aW9uKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gbV9vcmllbnRhdGlvbi5n
ZXQoKTsgfQorICAgIHZpcnR1YWwgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRp
b24oKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBtX29yaWVudGF0aW9uLmdldCgpOyB9CiAgICAg
dmlydHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpIE9WRVJS
SURFIHsgfQogCi0gICAgdm9pZCBzZXRPcmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVu
dGF0aW9uPik7CisgICAgdm9pZCBzZXRPcmllbnRhdGlvbihQYXNzUmVmUHRyPERldmljZU9yaWVu
dGF0aW9uRGF0YT4pOwogCiBwcml2YXRlOgogICAgIHZvaWQgdGltZXJGaXJlZChUaW1lcjxEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudE1vY2s+Kik7CiAKLSAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRp
b24+IG1fb3JpZW50YXRpb247CisgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRGF0YT4gbV9v
cmllbnRhdGlvbjsKICAgICBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxl
cjsKICAgICBUaW1lcjxEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2s+IG1fdGltZXI7CiAgICAg
Ym9vbCBtX2lzVXBkYXRpbmc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9x
dC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwCmluZGV4IDVmY2E4NTlmYzAwMTQwOGM1
Zjc5MzlmYmMyZTdjNGIwNzcxMWE3ZDguLjIwZDllOWQ4YTk5YTVmZTY4ZTNhNDM2YTcxZDJlNmVi
OTgxZTkwOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9y
aWVudGF0aW9uQ2xpZW50UXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50UXQuY3BwCkBAIC01MCw3ICs1MCw3IEBAIHZvaWQgRGV2aWNl
T3JpZW50YXRpb25DbGllbnRRdDo6c3RvcFVwZGF0aW5nKCkKICAgICAgICAgbV9wcm92aWRlci0+
c3RvcCgpOwogfQogCi1EZXZpY2VPcmllbnRhdGlvbiogRGV2aWNlT3JpZW50YXRpb25DbGllbnRR
dDo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKK0RldmljZU9yaWVudGF0aW9uRGF0YSogRGV2aWNl
T3JpZW50YXRpb25DbGllbnRRdDo6bGFzdE9yaWVudGF0aW9uKCkgY29uc3QKIHsKICAgICByZXR1
cm4gKG1fcHJvdmlkZXIpID8gbV9wcm92aWRlci0+bGFzdE9yaWVudGF0aW9uKCkgOiAwOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25D
bGllbnRRdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25D
bGllbnRRdC5oCmluZGV4IDkxMjQ0ZGJhNjhjNzVhZWQ4ZDRkODE0YWZjY2U3ZmE5MzczYjE2MTku
LjZhMmQ1ZGQwZDVkY2I1OGVlNDU4MTU0N2FlMmYyMjlkYzU1N2MxZjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50UXQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFF0LmgK
QEAgLTIwLDggKzIwLDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRRdF9oCiAj
ZGVmaW5lIERldmljZU9yaWVudGF0aW9uQ2xpZW50UXRfaAogCi0jaW5jbHVkZSAiRGV2aWNlT3Jp
ZW50YXRpb24uaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIgorI2luY2x1
ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0Lmgi
CkBAIC0zNyw3ICszNyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxl
cihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRV
cGRhdGluZygpOwogICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLSAgICB2aXJ0dWFs
IERldmljZU9yaWVudGF0aW9uKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFs
IERldmljZU9yaWVudGF0aW9uRGF0YSogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CiAgICAgdmly
dHVhbCB2b2lkIGRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpOwogCiBwcml2
YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50
YXRpb25Qcm92aWRlclF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L0RldmljZU9y
aWVudGF0aW9uUHJvdmlkZXJRdC5jcHAKaW5kZXggNDg4NTMwYmIzNWFiZDA4NzRlODU0YjhjNzc3
MDA2NGQ2MmRhNmNjNi4uOGNjNmZjNGMwNTg2NDJkMzc3MzRiZjcwYjdjMDVkMGMyM2M0Y2JiMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvRGV2aWNlT3JpZW50YXRpb25Q
cm92aWRlclF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmll
bnRhdGlvblByb3ZpZGVyUXQuY3BwCkBAIC0yNiw3ICsyNiw3IEBAIERldmljZU9yaWVudGF0aW9u
UHJvdmlkZXJRdDo6RGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0KCkKICAgICA6IG1fY29udHJv
bGxlcigwKQogewogICAgIG1fc2Vuc29yLmFkZEZpbHRlcih0aGlzKTsKLSAgICBtX2xhc3RPcmll
bnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoKTsKKyAgICBtX2xhc3RPcmllbnRh
dGlvbiA9IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKCk7CiB9CiAKIERldmljZU9yaWVu
dGF0aW9uUHJvdmlkZXJRdDo6fkRldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdCgpCkBAIC02Niw3
ICs2Niw3IEBAIGJvb2wgRGV2aWNlT3JpZW50YXRpb25Qcm92aWRlclF0OjpmaWx0ZXIoUVJvdGF0
aW9uUmVhZGluZyogcmVhZGluZykKICAgICAgICAgLy8gVGhlIFogKGFscGhhKSByb3RhdGlvbiBh
bmdsZSBpcyBjaGVja2VkIHZpYSBoYXNBbHBoYSgpIHByaXZhdGUgbWV0aG9kLAogICAgICAgICAv
LyBkZXBlbmRpbmcgaWYgdGhlIGRldmljZSBpcyBhYmxlIGRvIGRldGVjdCB0aGUgYWxwaGEgcm90
YXRpb24uIFggKGJldGEpIGFuZAogICAgICAgICAvLyBZIChnYW1tYSkgYXhpcyBhcmUgYXZhaWxi
bGUgaW4gdGhpcyBjb250ZXh0LgotICAgICAgICBtX2xhc3RPcmllbnRhdGlvbiA9IERldmljZU9y
aWVudGF0aW9uOjpjcmVhdGUoaGFzQWxwaGEoKSwgcmVhZGluZy0+eigpLAorICAgICAgICBtX2xh
c3RPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uRGF0YTo6Y3JlYXRlKGhhc0FscGhhKCks
IHJlYWRpbmctPnooKSwKICAgICAgICAgICAgICAgICAvKiB4IGF2YWlsYWJsZSAqLyB0cnVlLCBy
ZWFkaW5nLT54KCksCiAgICAgICAgICAgICAgICAgLyogeSBhdmFpbGFibGUgKi8gdHJ1ZSwgcmVh
ZGluZy0+eSgpKTsKICAgICAgICAgbV9jb250cm9sbGVyLT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRh
dGlvbihtX2xhc3RPcmllbnRhdGlvbi5nZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9xdC9EZXZpY2VPcmllbnRhdGlvblByb3ZpZGVyUXQuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oCmluZGV4IGM3ZjZk
MjMzN2NhOGU3NGM4NGI1YjBkM2UxMjQwYmMwZWU5NTVkM2EuLmM0YTIyZjc0ZTJkMThlNjdkMTU1
NTFlODM3MzdkYTZhOTk1NzI5YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL3F0L0RldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdC5oCkBAIC0yMCw4ICsyMCw4IEBA
CiAjaWZuZGVmIERldmljZU9yaWVudGF0aW9uUHJvdmlkZXJRdF9oCiAjZGVmaW5lIERldmljZU9y
aWVudGF0aW9uUHJvdmlkZXJRdF9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgog
I2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgorI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgPFFSb3RhdGlvbkZpbHRlcj4KICNpbmNsdWRl
IDx3dGYvUmVmUHRyLmg+CiAKQEAgLTQ1LDExICs0NSwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBz
dGFydCgpOwogICAgIHZvaWQgc3RvcCgpOwogICAgIGJvb2wgaXNBY3RpdmUoKSBjb25zdCB7IHJl
dHVybiBtX3NlbnNvci5pc0FjdGl2ZSgpOyB9Ci0gICAgRGV2aWNlT3JpZW50YXRpb24qIGxhc3RP
cmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbGFzdE9yaWVudGF0aW9uLmdldCgpOyB9Cisg
ICAgRGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCB7IHJldHVy
biBtX2xhc3RPcmllbnRhdGlvbi5nZXQoKTsgfQogICAgIGJvb2wgaGFzQWxwaGEoKSBjb25zdCB7
IHJldHVybiBtX3NlbnNvci5wcm9wZXJ0eSgiaGFzWiIpLnRvQm9vbCgpOyB9CiAKIHByaXZhdGU6
Ci0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBtX2xhc3RPcmllbnRhdGlvbjsKKyAgICBS
ZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX2xhc3RPcmllbnRhdGlvbjsKICAgICBEZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxlcjsKICAgICBRUm90YXRpb25TZW5z
b3IgbV9zZW5zb3I7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dl
YkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oIGIvU291cmNl
L1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50
QmxhY2tCZXJyeS5oCmluZGV4IDc2MTBmYjFkNGRiODgxZGIyMWNiZTY0OTZlNTAxYWJjZDc3Njhi
ZGMuLmNhMWRkOWQ0ZGZiMWNjN2NmZGFkZmMwYzU5YmVhMTJlNjlkNjhiYTQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlv
bkNsaWVudEJsYWNrQmVycnkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29y
ZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5LmgKQEAgLTE5LDggKzE5
LDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5X2gKICNkZWZp
bmUgRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5X2gKIAotI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNp
bmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEuaCIKIAogI2luY2x1ZGUgPEJsYWNrQmVycnlQ
bGF0Zm9ybURldmljZU9yaWVudGF0aW9uVHJhY2tlckxpc3RlbmVyLmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZlB0ci5oPgpAQCAtNDcsNyArNDcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNl
dENvbnRyb2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2
b2lkIHN0YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0g
ICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7Cisg
ICAgdmlydHVhbCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0
OwogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQo
KTsKICAgICB2aXJ0dWFsIHZvaWQgb25PcmllbnRhdGlvbihjb25zdCBCbGFja0JlcnJ5OjpQbGF0
Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25FdmVudCopOwogCkBAIC01NSw3ICs1NSw3IEBAIHByaXZh
dGU6CiAgICAgQmxhY2tCZXJyeTo6V2ViS2l0OjpXZWJQYWdlUHJpdmF0ZSogbV93ZWJQYWdlUHJp
dmF0ZTsKICAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25UcmFja2Vy
KiBtX3RyYWNrZXI7CiAgICAgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKiBtX2NvbnRyb2xs
ZXI7Ci0gICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uPiBtX2N1cnJlbnRPcmllbnRhdGlvbjsK
KyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX2N1cnJlbnRPcmllbnRhdGlvbjsK
IH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRl
dmljZU9yaWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJEZXZp
Y2VPcmllbnRhdGlvbi5oCmluZGV4IGIyNjY0OWUxY2ViMjBlZWJkZTFkNmQzYzNlNjA4NjJiMjg5
Njg1MmEuLjY2NTQwYmQ4YTVmN2MwZjkzZjMwYTUxNTIwNWMzOGIxODI0OTIxYWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRldmljZU9yaWVudGF0aW9uLmgK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRGV2aWNlT3JpZW50YXRpb24u
aApAQCAtMjgsNyArMjgsNyBAQAogCiAjaWYgV0VCS0lUX0lNUExFTUVOVEFUSU9OCiBuYW1lc3Bh
Y2UgV1RGIHsgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IGNsYXNzIFBhc3NSZWZQdHI7IH0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsgY2xhc3MgRGV2aWNlT3JpZW50YXRpb247IH0KK25hbWVzcGFjZSBXZWJD
b3JlIHsgY2xhc3MgRGV2aWNlT3JpZW50YXRpb25EYXRhOyB9CiAjZW5kaWYKIAogbmFtZXNwYWNl
IFdlYktpdCB7CkBAIC04Niw5ICs4Niw5IEBAIHB1YmxpYzoKICAgICBib29sIGFic29sdXRlKCkg
Y29uc3QgeyByZXR1cm4gbV9hYnNvbHV0ZTsgfQogCiAjaWYgV0VCS0lUX0lNUExFTUVOVEFUSU9O
Ci0gICAgV2ViRGV2aWNlT3JpZW50YXRpb24oY29uc3QgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRp
b24qKTsKLSAgICBXZWJEZXZpY2VPcmllbnRhdGlvbiYgb3BlcmF0b3I9KGNvbnN0IFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uKik7Ci0gICAgb3BlcmF0b3IgV1RGOjpQYXNzUmVmUHRyPFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uPigpIGNvbnN0OworICAgIFdlYkRldmljZU9yaWVudGF0aW9u
KGNvbnN0IFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YSopOworICAgIFdlYkRldmljZU9y
aWVudGF0aW9uJiBvcGVyYXRvcj0oY29uc3QgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRh
Kik7CisgICAgb3BlcmF0b3IgV1RGOjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uRGF0YT4oKSBjb25zdDsKICNlbmRpZgogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvRGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNw
cAppbmRleCAyOWI0M2JhNTZkYTVjYjg5NjJkOWE2NTcxMzI5ZDQxZWZiM2RlZDZkLi5mMWYwYjMz
ZjllN2RiZTk4ZGUxNzIxMGRiOWY3NmEzYTI3YTY1ZDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmNw
cApAQCAtMjYsNyArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9u
LmgiCisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiV2ViRGV2
aWNlT3JpZW50YXRpb24uaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuaCIKICNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CkBAIC02MCwxMiArNjAsMTIgQEAgdm9pZCBE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5OjpzdG9wVXBkYXRpbmcoKQogICAgIG1fY2xpZW50
LT5zdG9wVXBkYXRpbmcoKTsKIH0KIAotV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50UHJveHk6Omxhc3RPcmllbnRhdGlvbigpIGNvbnN0CitXZWJDb3Jl
OjpEZXZpY2VPcmllbnRhdGlvbkRhdGEqIERldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHk6Omxh
c3RPcmllbnRhdGlvbigpIGNvbnN0CiB7CiAgICAgaWYgKCFtX2NsaWVudCkKICAgICAgICAgcmV0
dXJuIDA7CiAKLSAgICAvLyBDYWNoZSB0aGUgRGV2aWNlT3JpZW50YXRpb24gcG9pbnRlciBzbyBp
dHMgcmVmZXJlbmNlIGNvdW50IGRvZXMgbm90IGRyb3AgdG8gemVybyB1cG9uIHJldHVybi4KKyAg
ICAvLyBDYWNoZSB0aGUgRGV2aWNlT3JpZW50YXRpb25EYXRhIHBvaW50ZXIgc28gaXRzIHJlZmVy
ZW5jZSBjb3VudCBkb2VzIG5vdCBkcm9wIHRvIHplcm8gdXBvbiByZXR1cm4uCiAgICAgbV9sYXN0
T3JpZW50YXRpb24gPSBtX2NsaWVudC0+bGFzdE9yaWVudGF0aW9uKCk7CiAKICAgICByZXR1cm4g
bV9sYXN0T3JpZW50YXRpb24uZ2V0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5LmgKaW5kZXggNzNmZDNlMmEw
OTlmMjYyNTNhMDdlOWRjN2NlZmM2NzE0Y2E0MTNjMy4uZWRkYjNkMjlkOWZjYjljYWU4MDI2MjM1
ZDYzZjU5NWU4YjgyOGQ2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
RGV2aWNlT3JpZW50YXRpb25DbGllbnRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL0RldmljZU9yaWVudGF0aW9uQ2xpZW50UHJveHkuaApAQCAtMjYsOCArMjYsOCBAQAog
I2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudFByb3h5X2gKICNkZWZpbmUgRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRQcm94eV9oCiAKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgog
I2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlT3Jp
ZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIK
ICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTQ3LDEyICs0NywxMiBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIHNldENvbnRyb2xsZXIoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyKikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoKSBP
VkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCkgT1ZFUlJJREU7Ci0gICAg
dmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29u
c3QgT1ZFUlJJREU7CisgICAgdmlydHVhbCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEq
IGxhc3RPcmllbnRhdGlvbigpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBkZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKSBPVkVSUklERTsKIAogcHJpdmF0ZToK
ICAgICBXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudCogbV9jbGllbnQ7Ci0gICAgbXV0YWJsZSBS
ZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+IG1fbGFzdE9yaWVudGF0aW9uOworICAg
IG11dGFibGUgUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4gbV9sYXN0T3Jp
ZW50YXRpb247CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uLmNwcAppbmRleCBkN2EyODJm
MzUwZTJjNjc0NGRlNGI5ZDhiMzQ2MDlhMWE5NDdkNDg4Li4yNGY3YmM4MDFjYWU5YmVjMmU1Mjg5
MTI3N2RkNzgzZTFjZWQ4ZDc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJEZXZpY2VPcmllbnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRGV2aWNlT3JpZW50YXRpb24uY3BwCkBAIC0yNiwxMiArMjYsMTIgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvbi5oIgogCi0jaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb24uaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkRhdGEu
aCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAot
V2ViRGV2aWNlT3JpZW50YXRpb246OldlYkRldmljZU9yaWVudGF0aW9uKGNvbnN0IFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikKK1dlYkRldmljZU9yaWVudGF0aW9uOjpX
ZWJEZXZpY2VPcmllbnRhdGlvbihjb25zdCBXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkRhdGEq
IG9yaWVudGF0aW9uKQogewogICAgIGlmICghb3JpZW50YXRpb24pIHsKICAgICAgICAgbV9pc051
bGwgPSB0cnVlOwpAQCAtNTcsNyArNTcsNyBAQCBXZWJEZXZpY2VPcmllbnRhdGlvbjo6V2ViRGV2
aWNlT3JpZW50YXRpb24oY29uc3QgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIG9yaQogICAg
IG1fYWJzb2x1dGUgPSBvcmllbnRhdGlvbi0+YWJzb2x1dGUoKTsKIH0KIAotV2ViRGV2aWNlT3Jp
ZW50YXRpb24mIFdlYkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvcj0oY29uc3QgV2ViQ29yZTo6
RGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0aW9uKQorV2ViRGV2aWNlT3JpZW50YXRpb24mIFdl
YkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvcj0oY29uc3QgV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhKiBvcmllbnRhdGlvbikKIHsKICAgICBpZiAoIW9yaWVudGF0aW9uKSB7CiAgICAg
ICAgIG1faXNOdWxsID0gdHJ1ZTsKQEAgLTg0LDExICs4NCwxMSBAQCBXZWJEZXZpY2VPcmllbnRh
dGlvbiYgV2ViRGV2aWNlT3JpZW50YXRpb246Om9wZXJhdG9yPShjb25zdCBXZWJDb3JlOjpEZXZp
Y2VPcmllbgogICAgIHJldHVybiAqdGhpczsKIH0KIAotV2ViRGV2aWNlT3JpZW50YXRpb246Om9w
ZXJhdG9yIFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KCkgY29uc3QKK1dl
YkRldmljZU9yaWVudGF0aW9uOjpvcGVyYXRvciBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uRGF0YT4oKSBjb25zdAogewogICAgIGlmIChtX2lzTnVsbCkKICAgICAgICAgcmV0
dXJuIDA7Ci0gICAgcmV0dXJuIFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uOjpjcmVhdGUobV9j
YW5Qcm92aWRlQWxwaGEsIG1fYWxwaGEsIG1fY2FuUHJvdmlkZUJldGEsIG1fYmV0YSwgbV9jYW5Q
cm92aWRlR2FtbWEsIG1fZ2FtbWEsIG1fY2FuUHJvdmlkZUFic29sdXRlLCBtX2Fic29sdXRlKTsK
KyAgICByZXR1cm4gV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhOjpjcmVhdGUobV9jYW5Q
cm92aWRlQWxwaGEsIG1fYWxwaGEsIG1fY2FuUHJvdmlkZUJldGEsIG1fYmV0YSwgbV9jYW5Qcm92
aWRlR2FtbWEsIG1fZ2FtbWEsIG1fY2FuUHJvdmlkZUFic29sdXRlLCBtX2Fic29sdXRlKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAppbmRleCA3
ZDA5YTZlN2RkMzdhY2EzYjI5ZjgxNmVhYWZlODAwZWMyMTUzYTA5Li4wYjllZTg4ZTk5N2JiZGE2
YzRlYjk0MjA5MjdiYWU1ZjIxY2NlMTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKQEAg
LTI2LDggKzI2LDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJEZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgi
CiAjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiRGV2
aWNlT3JpZW50YXRpb25EYXRhLmgiCiAjaW5jbHVkZSAiV2ViRGV2aWNlT3JpZW50YXRpb24uaCIK
ICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFj
ZSBXZWJLaXQgewogCiB2b2lkIFdlYkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hh
bmdlRGV2aWNlT3JpZW50YXRpb24oY29uc3QgV2ViRGV2aWNlT3JpZW50YXRpb24mIG9yaWVudGF0
aW9uKQogewotICAgIFJlZlB0cjxXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbj4gZGV2aWNlT3Jp
ZW50YXRpb24gPSBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPihvcmllbnRh
dGlvbik7CisgICAgUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4gZGV2aWNl
T3JpZW50YXRpb24gPSBQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4o
b3JpZW50YXRpb24pOwogICAgIG1fY29udHJvbGxlci0+ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRp
b24oZGV2aWNlT3JpZW50YXRpb24uZ2V0KCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oIGIvU291
cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRFZmwu
aAppbmRleCBiODAwNzdjYTVlZDE1ZGQxZWE2NGE3ZDljM2IwZjJhMzcxNDlhYjdjLi4wYmIxOTdj
YjdmOWY0NmE0NTg0OWE1Y2YzYWQxMjk5ODEyOWZlODcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50
RWZsLmgKQEAgLTIwLDggKzIwLDggQEAKICNpZm5kZWYgRGV2aWNlT3JpZW50YXRpb25DbGllbnRF
ZmxfaAogI2RlZmluZSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEVmbF9oCiAKLSNpbmNsdWRlICJE
ZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lmgi
CisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25EYXRhLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIApAQCAtMzMsNyArMzMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRy
b2xsZXIoRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKik7CiAgICAgdmlydHVhbCB2b2lkIHN0
YXJ0VXBkYXRpbmcoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcFVwZGF0aW5nKCk7Ci0gICAgdmly
dHVhbCBEZXZpY2VPcmllbnRhdGlvbiogbGFzdE9yaWVudGF0aW9uKCkgY29uc3Q7CisgICAgdmly
dHVhbCBEZXZpY2VPcmllbnRhdGlvbkRhdGEqIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OwogICAg
IHZpcnR1YWwgdm9pZCBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKIAog
cHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50R3RrLmggYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3Vw
cG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0ay5oCmluZGV4IDJjNTI5NDk1ZjA1NDc5NzBi
MDFhOTRiMjVlZjA0NTI1YWQ2YjgxM2UuLmZjYWEyZDJlODFkZDczM2IxOWNlNTA3OTFkMWI5ODY4
MDA1OWNlNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Rl
dmljZU9yaWVudGF0aW9uQ2xpZW50R3RrLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29y
ZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRHdGsuaApAQCAtMjEsOCArMjEsOCBAQAog
I2lmbmRlZiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEd0a19oCiAjZGVmaW5lIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50R3RrX2gKIAotI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCiAjaW5j
bHVkZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkRhdGEuaCIKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKQEAgLTM0LDcgKzM0LDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlciopOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCk7CiAg
ICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2
aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OworICAgIHZpcnR1YWwgV2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdDsKICAg
ICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCk7CiAK
IHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaAppbmRleCBlZDQwN2ViODAxY2FlNDkz
MzNjODUzNDg3YWIwM2E1YWUxMmU2YzliLi43ZTQ5ODcxYzAwYTkxODJhMWQ2ZjBkZGVjOWM5OTAy
MjlkOGU1YTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgKQEAgLTQ2LDcgKzQ2LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKFdlYkNvcmU6OkRldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlciopIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVw
ZGF0aW5nKCkgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpIE9WRVJS
SURFOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24qIGxhc3RPcmllbnRh
dGlvbigpIGNvbnN0IE9WRVJSSURFOworICAgIHZpcnR1YWwgV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25EYXRhKiBsYXN0T3JpZW50YXRpb24oKSBjb25zdCBPVkVSUklERTsKICAgICB2aXJ0dWFs
IHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyRGVzdHJveWVkKCkgT1ZFUlJJREU7CiAK
IHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tCmluZGV4IDNhNGQ1ZDdkZDg5OTcx
NGE3NTRkNmY1ODljYzM2MTg2YTM3ZmJiNjMuLmFhYTAzMWE0YjgxNzA2NzFhYzlkMWI0ODVjZTg2
YTVlOWY1ZWUxZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50Lm1tCkBAIC01NSw3ICs1NSw3
IEBAIHZvaWQgV2ViRGV2aWNlT3JpZW50YXRpb25DbGllbnQ6OnN0b3BVcGRhdGluZygpCiAgICAg
W2dldFByb3ZpZGVyKCkgc3RvcFVwZGF0aW5nXTsKIH0KIAotRGV2aWNlT3JpZW50YXRpb24qIFdl
YkRldmljZU9yaWVudGF0aW9uQ2xpZW50OjpsYXN0T3JpZW50YXRpb24oKSBjb25zdAorRGV2aWNl
T3JpZW50YXRpb25EYXRhKiBXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudDo6bGFzdE9yaWVudGF0
aW9uKCkgY29uc3QKIHsKICAgICByZXR1cm4gY29yZShbZ2V0UHJvdmlkZXIoKSBsYXN0T3JpZW50
YXRpb25dKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2
aWNlT3JpZW50YXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9y
aWVudGF0aW9uLm1tCmluZGV4IDdiZTVkMGNhMzA5Nzk5NWIyOGU5Yzc2OTdhNTM4MTg3NmQzNzc1
MGMuLmRiNzg5NGY5YzY5YWE3MmY1NjcxNDMwOGI2ZDk5NTlkMzgzNTdjYmEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGV2aWNlT3JpZW50YXRpb24ubW0KKysrIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRhdGlvbi5tbQpAQCAtMjks
NyArMjksNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdl
YkRldmljZU9yaWVudGF0aW9uSW50ZXJuYWwKIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3Jp
ZW50YXRpb246KFBhc3NSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRh
dGlvbgorLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8RGV2
aWNlT3JpZW50YXRpb25EYXRhPiljb3JlRGV2aWNlT3JpZW50YXRpb24KIHsKICAgICBzZWxmID0g
W3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKQEAgLTQyLDcgKzQyLDcgQEAgdXNpbmcgbmFt
ZXNwYWNlIFdlYkNvcmU7CiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJEZXZpY2VPcmllbnRhdGlvbiAo
SW50ZXJuYWwpCiAKLS0gKGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVm
UHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uPiljb3JlRGV2aWNlT3JpZW50YXRpb24KKy0g
KGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRl
dmljZU9yaWVudGF0aW9uRGF0YT4pY29yZURldmljZU9yaWVudGF0aW9uCiB7CiAgICAgc2VsZiA9
IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCkBAIC01NSw3ICs1NSw3IEBAIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCiBAaW1wbGVtZW50YXRpb24gV2ViRGV2aWNlT3JpZW50YXRpb24K
IAotRGV2aWNlT3JpZW50YXRpb24qIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qIG9yaWVudGF0
aW9uKQorRGV2aWNlT3JpZW50YXRpb25EYXRhKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKiBv
cmllbnRhdGlvbikKIHsKICAgICByZXR1cm4gb3JpZW50YXRpb24gPyBvcmllbnRhdGlvbi0+bV9p
bnRlcm5hbC0+bV9vcmllbnRhdGlvbi5nZXQoKSA6IDA7CiB9CkBAIC02NSw3ICs2NSw3IEBAIERl
dmljZU9yaWVudGF0aW9uKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKiBvcmllbnRhdGlvbikK
ICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJu
IG5pbDsKLSAgICBtX2ludGVybmFsID0gW1tXZWJEZXZpY2VPcmllbnRhdGlvbkludGVybmFsIGFs
bG9jXSBpbml0V2l0aENvcmVEZXZpY2VPcmllbnRhdGlvbjpEZXZpY2VPcmllbnRhdGlvbjo6Y3Jl
YXRlKGNhblByb3ZpZGVBbHBoYSwgYWxwaGEsIGNhblByb3ZpZGVCZXRhLCBiZXRhLCBjYW5Qcm92
aWRlR2FtbWEsIGdhbW1hKV07CisgICAgbV9pbnRlcm5hbCA9IFtbV2ViRGV2aWNlT3JpZW50YXRp
b25JbnRlcm5hbCBhbGxvY10gaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246RGV2aWNlT3Jp
ZW50YXRpb25EYXRhOjpjcmVhdGUoY2FuUHJvdmlkZUFscGhhLCBhbHBoYSwgY2FuUHJvdmlkZUJl
dGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEpXTsKICAgICByZXR1cm4gc2VsZjsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEZXZpY2VPcmllbnRh
dGlvbkludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVu
dGF0aW9uSW50ZXJuYWwuaAppbmRleCBiN2M2YWE1M2I0YmEzZTI4ZmEzYzJkM2NkNjRkZDg2MTEx
Y2I4NTFjLi41ZGVkZDA4MGM3NmY0NDg1NDkyOTkyZjk0NzdhOGVjYmE0MWRlZTllIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9uSW50ZXJu
YWwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRldmljZU9yaWVudGF0aW9u
SW50ZXJuYWwuaApAQCAtMjUsMjEgKzI1LDIxIEBACiAKICNpbXBvcnQgIldlYkRldmljZU9yaWVu
dGF0aW9uLmgiCiAKLSNpbXBvcnQgPFdlYkNvcmUvRGV2aWNlT3JpZW50YXRpb24uaD4KKyNpbXBv
cnQgPFdlYkNvcmUvRGV2aWNlT3JpZW50YXRpb25EYXRhLmg+CiAjaW1wb3J0IDx3dGYvUmVmUHRy
Lmg+CiAKIEBpbnRlcmZhY2UgV2ViRGV2aWNlT3JpZW50YXRpb25JbnRlcm5hbCA6IE5TT2JqZWN0
IHsKIEBwdWJsaWMKLSAgICBSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+IG1fb3Jp
ZW50YXRpb247CisgICAgUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4gbV9v
cmllbnRhdGlvbjsKIH0KIAotLSAoaWQpaW5pdFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBh
c3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlv
bjsKKy0gKGlkKWluaXRXaXRoQ29yZURldmljZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4pY29yZURldmljZU9yaWVudGF0aW9uOwogQGVuZAog
CiBAaW50ZXJmYWNlIFdlYkRldmljZU9yaWVudGF0aW9uIChJbnRlcm5hbCkKIAotLSAoaWQpaW5p
dFdpdGhDb3JlRGV2aWNlT3JpZW50YXRpb246KFBhc3NSZWZQdHI8V2ViQ29yZTo6RGV2aWNlT3Jp
ZW50YXRpb24+KWNvcmVEZXZpY2VPcmllbnRhdGlvbjsKKy0gKGlkKWluaXRXaXRoQ29yZURldmlj
ZU9yaWVudGF0aW9uOihQYXNzUmVmUHRyPFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uRGF0YT4p
Y29yZURldmljZU9yaWVudGF0aW9uOwogCiBAZW5kCiAKLVdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uKiBjb3JlKFdlYkRldmljZU9yaWVudGF0aW9uKik7CitXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkRhdGEqIGNvcmUoV2ViRGV2aWNlT3JpZW50YXRpb24qKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwIGIv
U291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5j
cHAKaW5kZXggYTA5NGEyNWI4YmVjYWEzOGQyZmEzYmM1ZWVhYTY0ZGEyYTliMTQ2Yy4uMzgxNGQz
NTY5MjhmY2NmYjgwNGNjMmVmMTU3ZjdiY2RmNWVhZjZkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5j
cHAKQEAgLTMzLDkgKzMzLDkgQEAKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogI2luY2x1ZGUg
IkNvbnRleHRNZW51Q2xpZW50UXQuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUNvbnRyb2xsZXIu
aCIKLSNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbi5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVu
dGF0aW9uQ2xpZW50TW9jay5oIgogI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRGF0YS5oIgogI2luY2x1ZGUgIkRvY3Vt
ZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRWRpdG9yLmgiCiAjaW5jbHVkZSAiRWRpdG9yQ2xpZW50
UXQuaCIKQEAgLTc2OSw3ICs3NjksNyBAQCB2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpz
ZXRNb2NrRGV2aWNlT3JpZW50YXRpb24oUVdlYlBhZ2UqIHBhZ2UsIGJvb2wgY2FuUAogI2lmIEVO
QUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCiAgICAgUGFnZSogY29yZVBhZ2UgPSBRV2ViUGFnZVBy
aXZhdGU6OmNvcmUocGFnZSk7CiAgICAgRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrKiBtb2Nr
Q2xpZW50ID0gdG9EZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2soRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyOjpmcm9tKGNvcmVQYWdlKS0+Y2xpZW50KCkpOwotICAgIG1vY2tDbGllbnQtPnNl
dE9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUoY2FuUHJvdmlkZUFscGhhLCBh
bHBoYSwgY2FuUHJvdmlkZUJldGEsIGJldGEsIGNhblByb3ZpZGVHYW1tYSwgZ2FtbWEpKTsKKyAg
ICBtb2NrQ2xpZW50LT5zZXRPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0
ZShjYW5Qcm92aWRlQWxwaGEsIGFscGhhLCBjYW5Qcm92aWRlQmV0YSwgYmV0YSwgY2FuUHJvdmlk
ZUdhbW1hLCBnYW1tYSkpOwogI2VuZGlmCiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>