<?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>211192</bug_id>
          
          <creation_ts>2020-04-29 10:12:51 -0700</creation_ts>
          <short_desc>USB microphone not recognized iOS Safari</short_desc>
          <delta_ts>2026-04-07 03:31:44 -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>WebRTC</component>
          <version>Safari 13</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 13</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Blocker</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Marc Bakos">marc+webkit</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>ahedblad</cc>
    
    <cc>andrewmacp</cc>
    
    <cc>anttil</cc>
    
    <cc>benjamin</cc>
    
    <cc>bill.brown.hockey</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>danny.mills</cc>
    
    <cc>ddp.bkdn</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hastings.greer</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joost</cc>
    
    <cc>marc+webkit</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>steve</cc>
    
    <cc>tim.proegler</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1647043</commentid>
    <comment_count>0</comment_count>
      <attachid>397975</attachid>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2020-04-29 10:12:51 -0700</bug_when>
    <thetext>Created attachment 397975
Audio Tools (and other apps) discovers USB microphone connected to iOS, Safari does not.

Safari (iOS) doesn’t allow USB microphone devices through to any WebRTC enabled websites (getUserMedia). 
The Apple USB to lightning adapter is recognized by iOS, but is unable to perform with Safari. The USB microphone (in this case, a ATR2100); is detected on every other native app which enables microphones. 

The USB microphone is picked up in all native apps, attached example shows the microphone being correctly being discovered by iOS as described in an app called &apos;AudioTools&apos;. However, with two WebRTC websites, (cleanfeed.net and WebRTC Samples); this microphone isn&apos;t being identified: https://webrtc.github.io/samples/src/content/devices/input-output/

Regards</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647048</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-29 10:23:40 -0700</bug_when>
    <thetext>&lt;rdar://problem/62607313&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669043</commentid>
    <comment_count>2</comment_count>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2020-07-06 09:18:46 -0700</bug_when>
    <thetext>Hello, is there any further feedback on this report?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684168</commentid>
    <comment_count>3</comment_count>
    <who name="Bill">bill.brown.hockey</who>
    <bug_when>2020-08-31 10:32:06 -0700</bug_when>
    <thetext>Noticed this issue as well. Seems like a fairly big problem for certain types of apps. Any updates?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706084</commentid>
    <comment_count>4</comment_count>
      <attachid>413698</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-11-10 08:30:30 -0800</bug_when>
    <thetext>Created attachment 413698
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706094</commentid>
    <comment_count>5</comment_count>
      <attachid>413698</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-11-10 08:53:46 -0800</bug_when>
    <thetext>Comment on attachment 413698
Patch

Great to have the fix!

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

&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDevice.h:52
&gt; +    bool defaultDevice();

isDefaultDevice

&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:292
&gt; +    if (haveDeviceChanges &amp;&amp; notify == NotifyIfDevicesHaveChanged::Notify) {

Why not firing a device change event in case default changes?
This might be useful so that applications call again enumerateDevices and might notice the change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706119</commentid>
    <comment_count>6</comment_count>
      <attachid>413713</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-11-10 10:12:35 -0800</bug_when>
    <thetext>Created attachment 413713
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706171</commentid>
    <comment_count>7</comment_count>
      <attachid>413725</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-11-10 12:41:44 -0800</bug_when>
    <thetext>Created attachment 413725
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706265</commentid>
    <comment_count>8</comment_count>
      <attachid>413753</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-11-10 15:57:14 -0800</bug_when>
    <thetext>Created attachment 413753
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706405</commentid>
    <comment_count>9</comment_count>
      <attachid>413753</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-11-11 02:49:16 -0800</bug_when>
    <thetext>Comment on attachment 413753
Patch

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

&gt; Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDevice.mm:44
&gt; +    setIsDefault(defaultInput &amp;&amp; [defaultInput.UID isEqualToString:deviceInput.UID]);

Having two AVAudioSessionPortDescription* might be a bit confusing
Since we are only using defaultInput to check whether deviceInput is default, we could just pass isDefault value here or add a setter for this value that would be called later.

&gt; Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:52
&gt; +    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(routeDidChange:) name:PAL::get_AVFoundation_AVAudioSessionRouteChangeNotification() object:session];

Is it always calling from the main thread?

&gt; Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:158
&gt; +        LOG_ERROR(&quot;Failed to activate audio session with error: %@.&quot;, error.localizedDescription);

RELEASE_LOG?

&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDevice.cpp:70
&gt; +        err = AudioObjectGetPropertyData(static_cast&lt;UInt32&gt;(deviceID), &amp;address, 0, nullptr, &amp;dataSize, &amp;localizedName);

Logging maybe?

&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDevice.cpp:110
&gt; +    setIsDefault(!err &amp;&amp; defaultID == m_deviceID);

logging?

&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:154
&gt; +                CoreAudioCaptureDeviceManager::singleton().scheduleUpdateCaptureDevices();

Sounds good to do this indeed.
The other changes of this method are refactoring and are not really changing any behavior, is that correct?

&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:267
&gt; +            auto&amp; newState = audioDevices[cptr];

s/oldState/oldDevice/
s/newState/newDevice/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706469</commentid>
    <comment_count>10</comment_count>
      <attachid>413825</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-11-11 08:47:54 -0800</bug_when>
    <thetext>Created attachment 413825
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706499</commentid>
    <comment_count>11</comment_count>
      <attachid>413753</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-11-11 09:43:09 -0800</bug_when>
    <thetext>Comment on attachment 413753
Patch

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

&gt;&gt; Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDevice.mm:44
&gt;&gt; +    setIsDefault(defaultInput &amp;&amp; [defaultInput.UID isEqualToString:deviceInput.UID]);
&gt; 
&gt; Having two AVAudioSessionPortDescription* might be a bit confusing
&gt; Since we are only using defaultInput to check whether deviceInput is default, we could just pass isDefault value here or add a setter for this value that would be called later.

It might be slightly confusing, but it seems better to me to keep the logic for what makes an input default in the class that represents the input.

&gt;&gt; Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:52
&gt;&gt; +    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(routeDidChange:) name:PAL::get_AVFoundation_AVAudioSessionRouteChangeNotification() object:session];
&gt; 
&gt; Is it always calling from the main thread?

Good point, I don&apos;t know if it is or not so I&apos;ll add a check.

&gt;&gt; Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:158
&gt;&gt; +        LOG_ERROR(&quot;Failed to activate audio session with error: %@.&quot;, error.localizedDescription);
&gt; 
&gt; RELEASE_LOG?

Changed.

&gt;&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDevice.cpp:110
&gt;&gt; +    setIsDefault(!err &amp;&amp; defaultID == m_deviceID);
&gt; 
&gt; logging?

Fixed.

&gt;&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:154
&gt;&gt; +                CoreAudioCaptureDeviceManager::singleton().scheduleUpdateCaptureDevices();
&gt; 
&gt; Sounds good to do this indeed.
&gt; The other changes of this method are refactoring and are not really changing any behavior, is that correct?

Correct, the other changes are just minor cleanup.

&gt;&gt; Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:267
&gt;&gt; +            auto&amp; newState = audioDevices[cptr];
&gt; 
&gt; s/oldState/oldDevice/
&gt; s/newState/newDevice/

Fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1706506</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-11 10:07:09 -0800</bug_when>
    <thetext>Committed r269688: &lt;https://trac.webkit.org/changeset/269688&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 413825.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719524</commentid>
    <comment_count>13</comment_count>
    <who name="Bill">bill.brown.hockey</who>
    <bug_when>2021-01-13 20:25:12 -0800</bug_when>
    <thetext>Thanks for fixing this. Do you know what version of iOS will have the change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733194</commentid>
    <comment_count>14</comment_count>
    <who name="Bill">bill.brown.hockey</who>
    <bug_when>2021-02-24 20:15:30 -0800</bug_when>
    <thetext>Hey everyone, I&apos;m still seeing this issue on iPad OS 14.5 beta. Should that version have the fix? It seems like this was merged awhile ago.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747884</commentid>
    <comment_count>15</comment_count>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2021-04-07 08:13:28 -0700</bug_when>
    <thetext>As per my email to Eric, I upgraded to 14.5 beta 6 on my spare iPhone XS.

Unfortunately I’m still not seeing the USB device enumerated. 

I’m using a Lighting cable to USB adapter (official Apple) and have an Audio Technica ATR2100-USB plugged in. The device works in other apps; just not Safari. 

Both my test on Cleanfeed and WebRTC example pages (https://webrtc.github.io/samples/src/content/devices/input-output) do not display the input device.

I&apos;ve reopened the ticket for confirmation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783769</commentid>
    <comment_count>16</comment_count>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2021-08-12 03:32:20 -0700</bug_when>
    <thetext>Tested on iOS 15 Beta (build 19A5318f); Safari is able to enumerate the device correctly; however upon selecting it, it doesn&apos;t open the device. 

In fact it just reverts the input back to the built in microphone of the device, despite its selection in the device selection menu.

If you&apos;d like some more information, please let me know. It seems incredibly close!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783834</commentid>
    <comment_count>17</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-08-12 08:44:48 -0700</bug_when>
    <thetext>(In reply to Marc Bakos from comment #16)
&gt; Tested on iOS 15 Beta (build 19A5318f); Safari is able to enumerate the
&gt; device correctly; however upon selecting it, it doesn&apos;t open the device. 
&gt; 
&gt; In fact it just reverts the input back to the built in microphone of the
&gt; device, despite its selection in the device selection menu.
&gt; 
&gt; If you&apos;d like some more information, please let me know. It seems incredibly
&gt; close!

r280702 (bug 228753) should fix the inability to select some devices.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789670</commentid>
    <comment_count>18</comment_count>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2021-09-02 05:06:06 -0700</bug_when>
    <thetext>Thanks Eric. I have reviewed the latest iOS 15 Beta 8 build 19A5340a on iPhone Xs and I now see the USB device listed as &apos;Advanced USB Audio Device&apos;, though it is still not being used.

I&apos;m guessing this is just a case of waiting for the patch 280702 to land in a build to correct this? I&apos;ll keep my eyes peeled for Beta 9, or the gold seed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801612</commentid>
    <comment_count>19</comment_count>
    <who name="">tim.proegler</who>
    <bug_when>2021-10-07 08:28:13 -0700</bug_when>
    <thetext>Dear all,

chiming in on this.

Has this change landed in either iOS 15 release version or 15.1 beta 3?

I&apos;m not able to access an external audio interface in these version using an iPhone 6s. The interface is listed correctly but still the built-in mic is used, no matter if I select the external audio interface or not.

Tested with https://webrtc.github.io/samples/src/content/devices/input-output/ and cleanfeed.

Any help would be appreciated!


Regards
Tim</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1833132</commentid>
    <comment_count>20</comment_count>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2022-01-23 13:18:19 -0800</bug_when>
    <thetext>Hi all,

iOS 15.2.1 has been tested, with still no resolve. 
The USB device is enumerated, but still cannot be used. 

I made a video to demonstrate the issue: 
https://www.youtube.com/watch?v=V5BobU8vaBg

I can confirm that the correct device ID is selected, but the the device is still not opened correctly. It continues using the audio from the built in microphone.

If there is further information I can give, please let me know.

Thanks
Marc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844643</commentid>
    <comment_count>21</comment_count>
    <who name="Antti Laitinen">anttil</who>
    <bug_when>2022-02-22 04:30:33 -0800</bug_when>
    <thetext>Hello everyone!

We&apos;re having this same issue in Soundtrap&apos;s iOS client.
You can&apos;t use an iRig for example. It&apos;s detected as an input device, but if you try to use it, then the incoming audio will come from the built-in mic.

getUserMedia() returns a MediaStream which has iRig in its label, but the audio still comes from the built-in mic.

Here&apos;s a simple piece of code which should be able to reproduce the problem: https://codepen.io/laiskimus/pen/WNXJYGb

That works in desktop browsers, but in mobile Safari you always get audio from the built-in mic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1911841</commentid>
    <comment_count>22</comment_count>
    <who name="Marc Bakos">marc+webkit</who>
    <bug_when>2022-11-11 10:02:34 -0800</bug_when>
    <thetext>Hello. I see there has been a lot of input to this ticket, though I&apos;m afraid the user experience has recently got worse in recent iOS releases. 

For example, USB audio devices connected to iOS devices now don&apos;t even output audio from Safari. 

It is still not possible to correctly use the enumerated device.

Could someone kindly update this ticket as to whether it is possible to iron out these issues and finally get this bug resolved?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2052413</commentid>
    <comment_count>23</comment_count>
    <who name="Hastings">hastings.greer</who>
    <bug_when>2024-08-13 11:01:22 -0700</bug_when>
    <thetext>As of August 2024, this is still not fixed- selecting the USB Microphone appears to work, and the stream.getAudioTracks()[0].label matches the label of the USB device, but the audio comes from the onboard microphone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2063327</commentid>
    <comment_count>24</comment_count>
    <who name="PhungDuong">ddp.bkdn</who>
    <bug_when>2024-09-26 02:32:44 -0700</bug_when>
    <thetext>This error still exists on iOS/iPadOS 17 and the latest version is iOS/iPadOS  18.0.
Connected Bluetooth, but the audio comes still from iPhone/iPad speaker.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2074622</commentid>
    <comment_count>25</comment_count>
    <who name="Dan M">danny.mills</who>
    <bug_when>2024-11-12 13:52:28 -0800</bug_when>
    <thetext>Just wanted to confirm, seeing this on iOS 18.1 with iPhone 14 Pro Max, still.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2088431</commentid>
    <comment_count>26</comment_count>
    <who name="PhungDuong">ddp.bkdn</who>
    <bug_when>2025-01-19 17:51:31 -0800</bug_when>
    <thetext>Bug is still reproducible on iOS/iPad 18.2.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2099658</commentid>
    <comment_count>27</comment_count>
    <who name="">steve</who>
    <bug_when>2025-03-01 12:29:11 -0800</bug_when>
    <thetext>This critical issue and limitation persists it seems.  It&apos;s not with all microphones; but the vast majority.

I did a YouTube some while ago with video detailing the issue for my own app&apos;s users, as its a very common issue and it&apos;s me, as the developer, who gets all the blame from the end users. I very much welcome being corrected however; if there is a solution, please let me know.

https://www.youtube.com/watch?v=BBus_S8iJUE

I point out in the video that certain Apple certified &quot;communication/headset&quot; devices work, but most others do not. It&apos;s a source of great frustration and has been for several years now.

Users facing this issue either switch to using TRRS or just switch to Android. Given the lack of video controls, like exposure/auto-focus, Apple is losing professional users to these oversights.

I would happily work with Apple to test or field-trial solutions. I have a large user base of starved users who greatly want this feature added/fixed. I also welcome the option to be allowed to install non-webkit browsers that might support this feature instead.

Regards</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2111434</commentid>
    <comment_count>28</comment_count>
    <who name="PhungDuong">ddp.bkdn</who>
    <bug_when>2025-04-16 20:06:42 -0700</bug_when>
    <thetext>Bug is still reproducible on iOS/iPad 18.4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197000</commentid>
    <comment_count>29</comment_count>
    <who name="joost">joost</who>
    <bug_when>2026-04-05 02:09:26 -0700</bug_when>
    <thetext>Since iOS 26.3 Safari doesn&apos;t use the Mic input of our audio interface anymore: https://www.technicadelarte.com/miki/
All other apps still work fine.
This is related to the availability of the Volume Control in the USB descriptors of our device.
If we remove it , Safari uses the Mic-input in the MIKI
If we change the MIN/MAX values of the USB device, Safari uses the Mic correctly also. We have it set to 0x6000/0x7fff to be compatible with older Windows versions,  if we change this to 0/0x1fff Safari uses it fine and works Ok.
Of course the USB Audio classes say the range goes from -128 to +128 dB , so we&apos;re in that 96 to 128 dB range (don&apos;t ask me why Windows decided otherwise at the time...). But iOS , using the public API (gain from 0 to 1.0) works fine.
Safari apparently uses some private API&apos;s to do it&apos;s own thing ? But then makes a mistake ?

We have to check implications to other OS&apos;s if we change this. It would be good if Safari on iOS just works ;-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197001</commentid>
    <comment_count>30</comment_count>
    <who name="joost">joost</who>
    <bug_when>2026-04-05 02:14:12 -0700</bug_when>
    <thetext>Btw, this is only for the Input Volume control, the Output Volume Control with the same MIN/MAX of 0x6000/0x7ffff values is fine and the output is used by Safari.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197249</commentid>
    <comment_count>31</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2026-04-06 08:26:46 -0700</bug_when>
    <thetext>Could you file a new bug report?
When you say that it does not work, does it mean that capture is failing or that the microphone is not listed via enumerateDevices?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197572</commentid>
    <comment_count>32</comment_count>
    <who name="joost">joost</who>
    <bug_when>2026-04-07 03:22:40 -0700</bug_when>
    <thetext>Ok, will do. It always uses the iPhone Mic instead of the MIKI input, while all other apps use the MIKI input. Also Apple&apos;s Voice memo uses the MIKI input.
The MIKI input is visible with enumerateDevices, choosing that input doesn&apos;t work either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197580</commentid>
    <comment_count>33</comment_count>
    <who name="joost">joost</who>
    <bug_when>2026-04-07 03:31:44 -0700</bug_when>
    <thetext>Bug report 311639</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>397975</attachid>
            <date>2020-04-29 10:12:51 -0700</date>
            <delta_ts>2020-04-29 10:12:51 -0700</delta_ts>
            <desc>Audio Tools (and other apps) discovers USB microphone connected to iOS, Safari does not.</desc>
            <filename>auditools-vs-safari-usb-mic.jpg</filename>
            <type>image/jpeg</type>
            <size>170877</size>
            <attacher name="Marc Bakos">marc+webkit</attacher>
            
              <data encoding="base64">/9j/4RkJRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAA
agEoAAMAAAABAAIAAAExAAIAAAAiAAAAcgEyAAIAAAAUAAAAlIdpAAQAAAABAAAAqAAAAPAACvyA
AAAnEAAK/IAAACcQQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpADIwMjA6MDQ6Mjkg
MTg6MTA6MDAAAASShgAHAAAAEgAAAN6gAQADAAAAAQABAACgAgAEAAAAAQAAAk6gAwAEAAAAAQAA
AoAAAAAAQVNDSUkAAABTY3JlZW5zaG90AAYBAwADAAAAAQAGAAABGgAFAAAAAQAAAT4BGwAFAAAA
AQAAAUYBKAADAAAAAQACAAACAQAEAAAAAQAAAU4CAgAEAAAAAQAAF7MAAAAAAAAASAAAAAEAAABI
AAAAAf/Y/+0ADEFkb2JlX0NNAAH/7gAOQWRvYmUAZIAAAAAB/9sAhAAMCAgICQgMCQkMEQsKCxEV
DwwMDxUYExMVExMYEQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQ0LCw0ODRAO
DhAUDg4OFBQODg4OFBEMDAwMDBERDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/
wAARCACgAJQDASIAAhEBAxEB/90ABAAK/8QBPwAAAQUBAQEBAQEAAAAAAAAAAwABAgQFBgcICQoL
AQABBQEBAQEBAQAAAAAAAAABAAIDBAUGBwgJCgsQAAEEAQMCBAIFBwYIBQMMMwEAAhEDBCESMQVB
UWETInGBMgYUkaGxQiMkFVLBYjM0coLRQwclklPw4fFjczUWorKDJkSTVGRFwqN0NhfSVeJl8rOE
w9N14/NGJ5SkhbSVxNTk9KW1xdXl9VZmdoaWprbG1ub2N0dXZ3eHl6e3x9fn9xEAAgIBAgQEAwQF
BgcHBgU1AQACEQMhMRIEQVFhcSITBTKBkRShsUIjwVLR8DMkYuFygpJDUxVjczTxJQYWorKDByY1
wtJEk1SjF2RFVTZ0ZeLys4TD03Xj80aUpIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9ic3R1dnd4eX
p7fH/9oADAMBAAIRAxEAPwD0XP6ljVtto+0Oxr2Fg9U1Oc0FwNrdXM9Kzcyt+/a//wAEUek3ZF1u
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
v9pWOdTylrdlRMREiJJsg2Rw7eHFNSSSSKx//9n/7SEwUGhvdG9zaG9wIDMuMAA4QklNBAQAAAAA
ACQcAgAAAgAAHAI3AAgyMDIwMDQxNhwCPAALMTM1NDQ0KzAwMDA4QklNBCUAAAAAABAg4O+wPPgy
0FaC8JxmxnjlOEJJTQQ6AAAAAADlAAAAEAAAAAEAAAAAAAtwcmludE91dHB1dAAAAAUAAAAAUHN0
U2Jvb2wBAAAAAEludGVlbnVtAAAAAEludGUAAAAAQ2xybQAAAA9wcmludFNpeHRlZW5CaXRib29s
AAAAAAtwcmludGVyTmFtZVRFWFQAAAABAAAAAAAPcHJpbnRQcm9vZlNldHVwT2JqYwAAAAwAUABy
AG8AbwBmACAAUwBlAHQAdQBwAAAAAAAKcHJvb2ZTZXR1cAAAAAEAAAAAQmx0bmVudW0AAAAMYnVp
bHRpblByb29mAAAACXByb29mQ01ZSwA4QklNBDsAAAAAAi0AAAAQAAAAAQAAAAAAEnByaW50T3V0
cHV0T3B0aW9ucwAAABcAAAAAQ3B0bmJvb2wAAAAAAENsYnJib29sAAAAAABSZ3NNYm9vbAAAAAAA
Q3JuQ2Jvb2wAAAAAAENudENib29sAAAAAABMYmxzYm9vbAAAAAAATmd0dmJvb2wAAAAAAEVtbERi
b29sAAAAAABJbnRyYm9vbAAAAAAAQmNrZ09iamMAAAABAAAAAAAAUkdCQwAAAAMAAAAAUmQgIGRv
dWJAb+AAAAAAAAAAAABHcm4gZG91YkBv4AAAAAAAAAAAAEJsICBkb3ViQG/gAAAAAAAAAAAAQnJk
VFVudEYjUmx0AAAAAAAAAAAAAAAAQmxkIFVudEYjUmx0AAAAAAAAAAAAAAAAUnNsdFVudEYjUHhs
QFIAAAAAAAAAAAAKdmVjdG9yRGF0YWJvb2wBAAAAAFBnUHNlbnVtAAAAAFBnUHMAAAAAUGdQQwAA
AABMZWZ0VW50RiNSbHQAAAAAAAAAAAAAAABUb3AgVW50RiNSbHQAAAAAAAAAAAAAAABTY2wgVW50
RiNQcmNAWQAAAAAAAAAAABBjcm9wV2hlblByaW50aW5nYm9vbAAAAAAOY3JvcFJlY3RCb3R0b21s
b25nAAAAAAAAAAxjcm9wUmVjdExlZnRsb25nAAAAAAAAAA1jcm9wUmVjdFJpZ2h0bG9uZwAAAAAA
AAALY3JvcFJlY3RUb3Bsb25nAAAAAAA4QklNA+0AAAAAABAASAAAAAEAAQBIAAAAAQABOEJJTQQm
AAAAAAAOAAAAAAAAAAAAAD+AAAA4QklNBA0AAAAAAAQAAAAeOEJJTQQZAAAAAAAEAAAAHjhCSU0D
8wAAAAAACQAAAAAAAAAAAQA4QklNJxAAAAAAAAoAAQAAAAAAAAABOEJJTQP1AAAAAABIAC9mZgAB
AGxmZgAGAAAAAAABAC9mZgABAKGZmgAGAAAAAAABADIAAAABAFoAAAAGAAAAAAABADUAAAABAC0A
AAAGAAAAAAABOEJJTQP4AAAAAABwAAD/////////////////////////////A+gAAAAA////////
/////////////////////wPoAAAAAP////////////////////////////8D6AAAAAD/////////
////////////////////A+gAADhCSU0EAAAAAAAAAgACOEJJTQQCAAAAAAASAAAAAAAAAAAAAAAA
AAAAAAAAOEJJTQQwAAAAAAAJAQEBAQEBAQEBADhCSU0ELQAAAAAABgABAAAACzhCSU0ECAAAAAAA
EAAAAAEAAAJAAAACQAAAAAA4QklNBB4AAAAAAAQAAAAAOEJJTQQaAAAAAANHAAAABgAAAAAAAAAA
AAACgAAAAk4AAAAJAGEAdQBkAGkAdABvAG8AbABzAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAA
AAAAAAAAAAJOAAACgAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABAAAAABAAAA
AAAAbnVsbAAAAAIAAAAGYm91bmRzT2JqYwAAAAEAAAAAAABSY3QxAAAABAAAAABUb3AgbG9uZwAA
AAAAAAAATGVmdGxvbmcAAAAAAAAAAEJ0b21sb25nAAACgAAAAABSZ2h0bG9uZwAAAk4AAAAGc2xp
Y2VzVmxMcwAAAAFPYmpjAAAAAQAAAAAABXNsaWNlAAAAEgAAAAdzbGljZUlEbG9uZwAAAAAAAAAH
Z3JvdXBJRGxvbmcAAAAAAAAABm9yaWdpbmVudW0AAAAMRVNsaWNlT3JpZ2luAAAADWF1dG9HZW5l
cmF0ZWQAAAAAVHlwZWVudW0AAAAKRVNsaWNlVHlwZQAAAABJbWcgAAAABmJvdW5kc09iamMAAAAB
AAAAAAAAUmN0MQAAAAQAAAAAVG9wIGxvbmcAAAAAAAAAAExlZnRsb25nAAAAAAAAAABCdG9tbG9u
ZwAAAoAAAAAAUmdodGxvbmcAAAJOAAAAA3VybFRFWFQAAAABAAAAAAAAbnVsbFRFWFQAAAABAAAA
AAAATXNnZVRFWFQAAAABAAAAAAAGYWx0VGFnVEVYVAAAAAEAAAAAAA5jZWxsVGV4dElzSFRNTGJv
b2wBAAAACGNlbGxUZXh0VEVYVAAAAAEAAAAAAAlob3J6QWxpZ25lbnVtAAAAD0VTbGljZUhvcnpB
bGlnbgAAAAdkZWZhdWx0AAAACXZlcnRBbGlnbmVudW0AAAAPRVNsaWNlVmVydEFsaWduAAAAB2Rl
ZmF1bHQAAAALYmdDb2xvclR5cGVlbnVtAAAAEUVTbGljZUJHQ29sb3JUeXBlAAAAAE5vbmUAAAAJ
dG9wT3V0c2V0bG9uZwAAAAAAAAAKbGVmdE91dHNldGxvbmcAAAAAAAAADGJvdHRvbU91dHNldGxv
bmcAAAAAAAAAC3JpZ2h0T3V0c2V0bG9uZwAAAAAAOEJJTQQoAAAAAAAMAAAAAj/wAAAAAAAAOEJJ
TQQUAAAAAAAEAAAACzhCSU0EDAAAAAAXzwAAAAEAAACUAAAAoAAAAbwAARWAAAAXswAYAAH/2P/t
AAxBZG9iZV9DTQAB/+4ADkFkb2JlAGSAAAAAAf/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMT
FRMTGBEMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQU
Dg4ODhQRDAwMDAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgAoACU
AwEiAAIRAQMRAf/dAAQACv/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEB
AQEAAAAAAAAAAQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIG
FJGhsUIjJBVSwWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieU
pIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEA
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
u/RvsyqX+36Dv0f00L7Tjf8AzudR/wDYaj/3tSs9h9v/AKCqofvy/wAQf+rXb9Oz9133FL07P3Xf
cVifacb/AOdzqP8A7DUf+9qs4TMPL37+k3YWyI+101175n+a9G7I3bI9+7YlZ7D7f/QVVD9+X+IP
/VrpOY5rS5wLWgSXO0AA7ucUDDIdSbB9G2y21k6Sx9j31u/ts96YYGACCMaqRqJYDr/aVjnU8pa3
ZUTERIiSbINkcO3hxTUkkkisf//ZADhCSU0EIQAAAAAAXQAAAAEBAAAADwBBAGQAbwBiAGUAIABQ
AGgAbwB0AG8AcwBoAG8AcAAAABcAQQBkAG8AYgBlACAAUABoAG8AdABvAHMAaABvAHAAIABDAEMA
IAAyADAAMQA5AAAAAQA4QklNBAYAAAAAAAcACAAAAAEBAP/hEMBodHRwOi8vbnMuYWRvYmUuY29t
L3hhcC8xLjAvADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3pr
YzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2Jl
IFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAg
Ij4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1z
eW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6cGhvdG9zaG9w
PSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXA9Imh0dHA6Ly9u
cy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVu
dHMvMS4xLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHht
bG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVu
dCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3Vy
Y2VSZWYjIiBwaG90b3Nob3A6RGF0ZUNyZWF0ZWQ9IjIwMjAtMDQtMTZUMTM6NTQ6NDQiIHBob3Rv
c2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIu
MSIgeG1wOkNyZWF0ZURhdGU9IjIwMjAtMDQtMTZUMTM6NTQ6NDQiIHhtcDpNb2RpZnlEYXRlPSIy
MDIwLTA0LTI5VDE4OjEwKzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIwLTA0LTI5VDE4OjEw
KzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL2pwZWciIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6
ZjQwODYzODUtOTQ1Mi0wOTQyLThmZDEtOGJhM2IxYWRiZjNmIiB4bXBNTTpEb2N1bWVudElEPSJh
ZG9iZTpkb2NpZDpwaG90b3Nob3A6OWVjNjhhNTgtM2ZjMy0yMjQ0LThiMmYtMzNjMzgxY2U2MDE4
IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZTM2YmU5N2MtMWIzYi0xMjQ1LTgz
ZWUtNDU4MDZjODg1OWI5Ij4gPHBob3Rvc2hvcDpUZXh0TGF5ZXJzPiA8cmRmOkJhZz4gPHJkZjps
aSBwaG90b3Nob3A6TGF5ZXJOYW1lPSJBVURJTyBUT09MUyAoaU9TIEFQUCkiIHBob3Rvc2hvcDpM
YXllclRleHQ9IkFVRElPIFRPT0xTIChpT1MgQVBQKSIvPiA8cmRmOmxpIHBob3Rvc2hvcDpMYXll
ck5hbWU9IlNBRkFSSSAoaU9TIEFQUCkiIHBob3Rvc2hvcDpMYXllclRleHQ9IlNBRkFSSSAoaU9T
IEFQUCkiLz4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpUZXh0TGF5ZXJzPiA8eG1wTU06SGlzdG9y
eT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJ
RD0ieG1wLmlpZDplMzZiZTk3Yy0xYjNiLTEyNDUtODNlZS00NTgwNmM4ODU5YjkiIHN0RXZ0Ondo
ZW49IjIwMjAtMDQtMjlUMTg6MTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBo
b3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0
RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0
byBpbWFnZS9qcGVnIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJh
bWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBpbWFnZS9wbmcgdG8gaW1hZ2UvanBlZyIvPiA8cmRmOmxp
IHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZjQwODYzODUt
OTQ1Mi0wOTQyLThmZDEtOGJhM2IxYWRiZjNmIiBzdEV2dDp3aGVuPSIyMDIwLTA0LTI5VDE4OjEw
KzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2lu
ZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDx4
bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOmUzNmJlOTdjLTFiM2It
MTI0NS04M2VlLTQ1ODA2Yzg4NTliOSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDplMzZiZTk3
Yy0xYjNiLTEyNDUtODNlZS00NTgwNmM4ODU5YjkiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0i
eG1wLmRpZDplMzZiZTk3Yy0xYjNiLTEyNDUtODNlZS00NTgwNmM4ODU5YjkiLz4gPC9yZGY6RGVz
Y3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD94cGFja2V0IGVuZD0idyI/Pv/iDFhJQ0Nf
UFJPRklMRQABAQAADEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAA
AElFQyBzUkdCAAAAAAAAAAAAAAABAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rlc2MAAAGEAAAAbHd0cHQA
AAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdYWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRt
bmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1ZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAA
FG1lYXMAAAQMAAAAJHRlY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8
AAAIDHRleHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55AABk
ZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0IgSUVDNjE5NjYtMi4x
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYWVogAAAA
AAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAAAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVog
AAAAAAAAYpkAALeFAAAY2lhZWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6
Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklFQyA2MTk2Ni0y
LjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAAAAAAAAAALklFQyA2MTk2Ni0y
LjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABk
ZXNjAAAAAAAAACxSZWZlcmVuY2UgVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAA
AAAAAAAAAAAsUmVmZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwADXJ4AAAAB
WFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAACjwAAAAJz
aWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAUABkAHgAjACgALQAyADcAOwBAAEUASgBP
AFQAWQBeAGMAaABtAHIAdwB8AIEAhgCLAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA
4ADlAOsA8AD2APsBAQEHAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGS
AZoBoQGpAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6AoQC
jgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+A4oDlgOiA64DugPH
A9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2BMQE0wThBPAE/gUNBRwFKwU6BUkF
WAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYnBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcr
Bz0HTwdhB3QHhgeZB6wHvwfSB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8J
ZAl5CY8JpAm6Cc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh
C/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5JDmQOfw6bDrYO
0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1ERMRMRFPEW0RjBGqEckR6BIH
EiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPlFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsV
vRXgFgMWJhZJFmwWjxayFtYW+hcdF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3
Gd0aBBoqGlEadxqeGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYe
QB5qHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKCIq8i3SMK
IzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtyboJxgnSSd6J6sn3CgNKD8o
cSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSudK9EsBSw5LG4soizXLQwtQS12Last4S4W
Lkwugi63Lu4vJC9aL5Evxy/+MDUwbDCkMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0
ZTSeNNg1EzVNNYc1wjX9Njc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrv
Oy07azuqO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGsQe5C
MEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgFSEtIkUjXSR1JY0mp
SfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63TwBPSU+TT91QJ1BxULtRBlFQUZtR
5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXCVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pW
WqZa9VtFW5Vb5Vw1XIZc1l0nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Nj
l2PrZEBklGTpZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I
bWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWFdeF2Pnabdvh3
VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5ifsJ/I3+Ef+WAR4CogQqBa4HN
gjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4efiASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqN
MY2Yjf+OZo7OjzaPnpAGkG6Q1pE/kaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4
mSSZkJn8mmia1ZtCm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMel
OKWpphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1sOqxYLHW
skuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7LrunvCG8m70VvY++Cr6Evv+/
er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dBx7/IPci8yTrJuco4yrfLNsu2zDXMtc01
zbXONs62zzfPuNA50LrRPNG+0j/SwdNE08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724Dc
BdyK3RDdlt4c3qLfKd+v4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl
63Dr++yG7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH+lf6
5/t3/Af8mP0p/br+S/7c/23////uAA5BZG9iZQBkQAAAAAH/2wCEAAEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgMDAwMDAwMDAwMBAQEBAQEBAQEB
AQICAQICAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA//A
ABEIAoACTgMBEQACEQEDEQH/3QAEAEr/xAGiAAAABgIDAQAAAAAAAAAAAAAHCAYFBAkDCgIBAAsB
AAAGAwEBAQAAAAAAAAAAAAYFBAMHAggBCQAKCxAAAgEDBAEDAwIDAwMCBgl1AQIDBBEFEgYhBxMi
AAgxFEEyIxUJUUIWYSQzF1JxgRhikSVDobHwJjRyChnB0TUn4VM2gvGSokRUc0VGN0djKFVWVxqy
wtLi8mSDdJOEZaOzw9PjKThm83UqOTpISUpYWVpnaGlqdnd4eXqFhoeIiYqUlZaXmJmapKWmp6ip
qrS1tre4ubrExcbHyMnK1NXW19jZ2uTl5ufo6er09fb3+Pn6EQACAQMCBAQDBQQEBAYGBW0BAgMR
BCESBTEGACITQVEHMmEUcQhCgSORFVKhYhYzCbEkwdFDcvAX4YI0JZJTGGNE8aKyJjUZVDZFZCcK
c4OTRnTC0uLyVWV1VjeEhaOzw9Pj8ykalKS0xNTk9JWltcXV5fUoR1dmOHaGlqa2xtbm9md3h5en
t8fX5/dIWGh4iJiouMjY6Pg5SVlpeYmZqbnJ2en5KjpKWmp6ipqqusra6vr/2gAMAwEAAhEDEQA/
AN/X3TqnXvfuvde9+69173vr3Xvfuvde9+69173rr3Xvfuvde9+691737r3Xvfuvde9+691737r3
Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9
+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691p9/8ACkT/ALeh/wDCZn/x
ffL/APwQ3wD92HWx59bYxFwR731brEn6vfuvdZW+h/1j7917rCODf/X/AN69+691zDm/0H+8+/de
68HNx9Pfuvddaz/Qe/de69rP+H+8/wDFffuvde1n/D/ff7H37r3XtZ/w/wB5/wCK+/de69rP+H++
/wBj7917r2s/4f7z/wAV9+6917Wf8P8Aef8Aivv3Xuvaz/h/vv8AY+/de69rP+H+8/8AFffuvde1
n/D/AH3+x9+6917Wf8P95/4r7917r2s/4f7z/wAV9+6917Wf8P8Aff7H37r3XtZ/w/3n/ivv3Xuv
az/h/vv9j7917r2s/wCH++/2Pv3Xuvaz/h/vP/Fffuvde1n/AA/3n/ivv3Xuvaz/AIf77/Y+/de6
9rP+H+8/8V9+6917Wf8AD/ff7H37r3XtZ/w/33+x9+6917Wf8P8Aef8Aivv3Xuvaz/h/vv8AY+/d
e671m30F7/7x7917riWJ+tvfuvdcffuvde9+691yDkC3Hv3XushN1v8A4e/de6w+/de6/9Df1906
p1737r3Xvfuvda7m/sBn+lP5tPa+RzPyo+RVJg9//wAvHvPs3NbgymZqd/Yjp1sD2R15j9v1fUvS
1Dt3I7Mpf7lYusqHp4kwmQyGSnlc1L1JZUW/V+isfO7HV+/O0dl9tVPbXTnyJ696g/l07Y7ch2p3
/wDLX5AfDfszsdP45h8vm+3m6t6Go+vWptwbvwuNFOs2Ujpsdi6ytaGWjU6E9+690Wn+Z5/MDftj
YXUsmJqPlV8YeoeletfiN2l11tbCbC+Sgbtfsftup2XkWxG6O49obQr9tbi2b011tWzU0tNkc0s2
4NwV0LGKWSnZH917rdH27n8buvb+C3RhmrGxG5MNjM9imyOMyeEyDY7L0UFfRNXYbNUmPzGJrDTV
C+Wmq4IamB7pLGjqyip49VPHp596611737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
vr3TNTbgw1ZmMht+myEM2ZxUNPPkMeok81LDVqWp3kJQRkSqONLH36nW6Hqtr5N/znP5Y/w+3/Vd
U99fLbYm3ezMcQM3sPamH3v2rujbXClxuzFdVbW3pUbUeJGDOmRFNIqkErbn36nXqdGz+M/y4+M/
zI2AnaHxd7s2B3bsg1Bo6rL7HzcNfNiK8KHbGbiw0wps5trKqjBjS5CmpqgKQSliPfqdep1g3H8u
vjttLLVOE3B2Zh8ZkaViskNTBkIlcAlfLTSyUiRVlMxB0zRF4n+qsR73Tr1Pn0qcL3715uXF0+c2
2N67jwdWrPSZvb3WvYGdw9UiMUkelymJ23WUNSsbqQxjdrEEHn36nXtPz6FTCZvFbjxVDnMJWxZD
FZKnSpoquEOqSxOOLpKkcsUinh0dVdGBVgCCPeutEU61EP8AhSJ/29D/AOEzP/i++X/+CG+AfvY6
2PPrbH976t10FA+nv3XuumICsSQAFJJJAAAFySTwAB9SeB7917otHWvzG+K3cG6u3dm9Yd/dYb3z
/QeTxeF7kiwe5qWbF9fZfNPVw47F5zck3g219/NU0M0LRQVkzwzxtFIEkGn37r3SC7K/mI/C/p/u
Rvj92D3dQ4XuSEbcap2NQ7H7R3TW0A3e0q7ZOTye0Nj5/b+L/jPgcw/c1cXpQs1lF/fuvdSN2/zC
fhZsPvil+NG7vkDs/Cd0VOawW2Zdr1FHuebFYnde6Y1l2vtDcm/KPA1PXe1t37lidWoMVkstS19W
rqY4m1rf3XujkFGBIKkEEggixBHBFv6j37r3XWlv6H37r3XtLf0Pv3XuvaW/offuvde0t/Q+/de6
9pP9D7917r2lv6H37r3XtLf0Pv3XuvaT/Q+/de69pb+h9+6917S39D7917r2k/0Pv3XuvaT/AEPv
3XuvaW/offuvde0t/Q+/de69pb+h9+6917S39D7917r2lv6H37r3XtLf0Pv3XuvaW/offuvde0n+
h9+6917S39D7917r2lv6H37r3XrH88fQckAXJsBc/kn37r3TVis9hczLlKfG5GnrZcNWPQZRIvIP
sqyNdUkErSIi6lU3JBK/4+/de6qy7i/nmfynuiOxMn1Z2H80OvE3nga58duak2Vgew+0cPtOtjma
nmpd07r602duzauCnpZ1KTJPWq0LKQ4Ugj37r3VhnUvenTHfPXGL7g6V7S2J2n1bmqOevxu/dj7j
xuf21PTUqM9YZMhRTSJR1FCqN9xBOIp6dlKyIpBHv3Xug6yfzG+N2Hr6jGZPs/E0FfSyGKopayly
NHUROP8AVwVdJBOoYcqSo1DkcEe/de6ESLunZElDHlTS77XESU61ozT9ZdiDDLQMnm/iL5RNtNRr
jlg/cafX4hGNRbTz7917oVoKinqqaGqpZo56aphjnp54XWSKaCZBJDLFIpKvHIjAgjgg+/de6979
17r/0d/X3TqnXve+vdcS6B1jLqJGVnWMsNbIhUO6pfUVUuAT9Bcf19+69TpLPsTZEm9KfsiTZ21p
Ow6TAVW1KTfb4DFPvGm2vW1lLkK3blPuVqU5mHBVdfRQzy0izCB5YkdlLKpHq9er0GncHxd+NfyE
yO08v3x8f+mO58tsOuOS2Vk+0us9nb8r9q1zPHI9RgKvc2Hyc+KaSSFGcQsiuyKWBKi3q9bqehE3
Rsfr/sDb82zN6bR2hvXa0NRjJZ9qblwWH3DgYarET09fhnmweSpqugjnxlTTRTUxaINC8aulioI9
nr2R0sveutde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdBV3nu/ffX/AEx2rvnq/Yc3
aPY+0Ovt27k2J1vT1ElLPvrdmHwlbX4HakVRDHLNFJnMlBHTgorPeT0gm3vY68OqQOmO7f5sXe/y
n2zL3T0HvnpH4yb++AOA3turq47WwVTg9ifKau3Fg2yezl7AqcXS74m3BRY56xWoJahYhCgLRA6W
a3V+rkesNt7ixW+s/kstiq6jpKnaO0aOKsql/bnrKSgVKuFZNbF5oJBZ/wCh9+691RP/ADFP5XfY
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
MQUzUdU9JI0tBXwhgXp6hIp0uNSD37r3Qj+/de6//9TdA9+6912AWNlBY/0AJP8Ath70SBknHWwC
cAZ68VKmzAqf6EEH/bH34EHIOOvEEYIz11731rr3v3Xuve/de697917r3v3Xuve/de697917r3v3
Xuve/de697917pO0W7tqZPcOY2ljtzYCv3Vt2noqzP7ao8vQVOewdJkQTj6nL4iGd6/HU9cFJheW
NFkt6SffuvdKL37r3XvfuvdcXdI0eSR0jjjVnkkdlRERAWd3diFRFUXJJAA9+691go62iyVNFWY6
spMjR1ALQVlBVQVtJOoJUtBU00ksEoDAi6seRb37r3QRYz5G/H3NdhVPUmH7w6mynaNJJJDU9eY/
sDbFXvCGeEXmpmwEGSfIGrhH64ghlT8qPfuvdDN7917r3v3Xuve/de697917r3v3Xuve/de69791
7r3v3Xuve/de697917r3v3Xuve/de697917pGbf37gNzbm3ztLFmtOX68yWLxW4hUUvhpRV5jDUW
do/sJ/I/3cX2FfHrbSul7ixtciLduV912XZuWd+vRH9Bu0MksGlqtpimeB9a0Gk60agqarQ/Loh2
zmPbd23bmHZbQyfW7ZLHHPqWi6pYkmXQanUNDipoKGo+fSz9h3o+697917r3v3XutVb+fl/29D/4
Ta/+L7v/APBDfBP37r3W1d8nOzK7pn45959s4tY2yvXPVG/N44sSpri/ieA23kMjQGVCQHjFXAhY
fke/de6+XPujde5d97lz29d55rIbk3buzLVu4Ny5/LVMtZksvmcpO9VXV1ZUzM0kks00htzZVsqg
KAB7r3TF7917qTVUVbQtEldR1lE9RTxVdOlZSz0rT0k4Jgq4FqI4zNSzhTokW6PY2J9+691G9+69
054nC5fPVYoMLjK7LVrKzilx9LLVT6F5ZzHCrMEX8k8e0O4bntu025u90v4be1BprkYItTwFSRk+
nQk5V5N5t563VNi5L5Zvt13lkLCC0hknl0r8TaI1YhR5saAevSlm6z7Dgikmm2TueOKJGeR2w1bp
RFF2Y2iPAHsjj565LlkSKLmqwaRjQATJkngOPUkXf3a/vCWNtPeXnsnzPHaxIWdjt9zRVUVJPZwA
yekRpaxOlrA6SbGwbn0k2sG4+n19imoqBUV6hXQ4DMUOkGhNDQH0PocHHHHXXvfVeve/de697917
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
ve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697
917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3X
uve/de697917r3v3Xuve/de697917r//0tor/uuf/wCYnP8A58D3E/8A4PD/AMZT/tf6z8/+VY/+
5Af+Uj1bGL/i/wDsPcq9YAdYmqIEJVqiFD+VaaNT/sQWB97oet0PXH7umvf7qC/9fPHf/of36h69
nr33dN9Puqe39PPH/wBH+/UPXqHrwq6YfSqgH+tPH/0f79Q9eoevCrph9KqAf608f/R/v1D16h69
93TD/lKg5+v78fP/ACf79Tr2evfdUx+tTT/9T4/+j/fqHr1D177um/5WoP6f5+P6f0/X79Tr2evf
d03/ACtQf9T4/wDo/wB+oevZ6993Tcf5VBx9P34+P9b1+/UPXs9diqp/qKmD/XE8f/R3v1D6deoe
g3reqercl2ng+7a7bWHqO1dt7Yyey8HvV6qpGUx218zUpV5PDQxrWLQmmrKmMOxaFpLjhh7E8HOH
NFtypf8AI8G7yrync3SXMtsAuh5410pITp1alBoKMB6jpk28JnW5MQ+oVSobzoeI6Ej7mn/5WIf+
p0f/AEd7DND6dPZ6991B/wArMP8A1Oj/AOjvetJ9OvZ699zT/wDKxD/X/PR/9He96T6dez177qDn
/KYefr+9Hz/r+r36h9OvZ699zTj6VEH/AFOj/wCjvfqH069Q9e+5p/p9xDb/AJbR/wDR3vWk+nXq
Hrv7qAfSph/6nR/9He/aT6dez1191B/ysw/9To/+jve6H069nr33MH/KzDx9P3o/+jvetJ9OvZ6y
K6Sco6uPyVYP/vIJ9+oetUPXK596691737r3RTfnt/2Qv80f/FTvkX/75/ePsK89/wDKj85f9Kq7
/wC0eTrID7p3/iU/3af/AD4HLv8A3d7Pr3wJ/wCyF/hd/wCKnfHT/wB8/s737kT/AJUfk3/pVWn/
AGjx9e+9j/4lP95b/wA+BzF/3d7zo2XsVdY/9e9+691737r3WdfoPezx62ePXfvXWqH0697917r3
v3Xuve/de61A/wDhR1/29N/4TIf+L/5D/wCCK+APvY8+tjgetvz3rrXXvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3X/9PaK/7rn/8AmJz/AOfA9xP/AODw/wDGU/7X+s/P/lWP
/uQH/lI9WfbiqJS2IxUM0lMc1kVo5p4W0TJTRwzVNQsT/VJJI4dIYci/uWF9esAh1MXae2lUL/Ba
B7D9c0Amkb/F5ZdcjsfySbn3rUetV68219sIrO+ExSIgLM700KqqgXLMxACgD8n3vU3XqnrhDtra
tRFHPBh8PPBMiyRTQwQSxSxuLq8ciakdGBuCCQfftTdeqesn91Ntf86LGf8AnJF/xT3rUevV6i1m
C2bjqeSsyGOwVBSRWMtVWpS0tNEGIVfJPOY4kuxsLkc+96m69U9cqTAbPr6eKsocZg62knXXBVUk
dLU00yglS0U8JeKRdQIuCeR79qbr1T1I/uptr/nRYz/zki/4p71qPXq9e/uptr/nRYz/AM5Iv+Ke
/aj16vXv7qba/wCdFjP/ADki/wCKe/aj16vXv7q7a/50WL/85Iv+jfftR69XoNN9YXHYObG1ePhW
ljrpnppqdCfD5FjaVJI1YnxmyG4HB93U1630mwBYcD6D8D+nvROePW+u7D+g/wBt79U+vXuoj12P
jhapkraGOmRmR6l6qnSnV01a0adpBErppNwTcW59+o3XuuONyOMzNFT5PD5DH5fG1iGSjyOKrKbI
0FXGHaMyUtbRyTU1SgkQrdGYagR9R79nr3XdDX47KQfdYyuoMlSiWWD7rHVdNXU3ngcxzw+elkli
80EgKut9SMLEA+/Z9evdcEymIkrnxceUxcmUjQySYyOvo3yUaAXLvQLMatEA+pKAD37PXup9h/Qf
7Ye/VPr17r1h/Qf7b36p9evdesP6D/be/VPr17r1h/Qf7b36p9evdTKCtnx9VDU07tGyOuoA2V0J
AZHX6MrKffhnB690PCNrRH/1Sq3+3Huh49UPHrl7117opvz2/wCyF/mj/wCKnfIv/wB8/vH2Fee/
+VH5y/6VV3/2jydZAfdO/wDEp/u0/wDnwOXf+7vZ9e+BP/ZC/wALv/FTvjp/75/Z3v3In/Kj8m/9
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
H+9Abf8AQ0NFla3bOPztTQ42WWoUIg8y26t0jsh25/OFh2h1TR4CXvquyHZvXm8t+Yrc2e6ix1Ln
cFt/4zdrbs3RtnEdm4Wn2fS0uzeyPlh0tLisXUUNRT0lTJVrrhp6apaRB7r3Rj/k7s75NfIz+UNj
H33sjdO++6u6u7Otex5OqOyuv8pmZtnbI3P8jcXn9q9f7+2Dt/FUmaG29j9a/ZRZunliWeJI6nzu
CGI917oleJw3yw+LvVPeWwtp9Yd2dF763z8yt2x5Ta/w36833sT4xdc7dwHTkVX1xmerKfCdAfKX
elbsfubKUNM1Y2ExOMpzujVRZGsooFeSo917oW9tdh/zStz7QpO7c5vf5Q4DfHX21/5eFbQ9PU/V
GFxWwd/bh7FyWew/yYXe+3Kzq+XcmSWixkEEuWhoK2gjwMricpB6AvuvdAlXfLH+Y/jd4Ue3Ovey
/k5uv5Jby64+eua3J092B1XtWj6VpOwus6nPQ9NUnx3zVP1rRLvnB4bayUc8Ax2T3FTVVWQa50rG
+2f3Xurkv5UW6fknuvr3tWs747A3/wBh7cj3Vtr/AEXZDtTYnaG09+4yObbavvnE5LNdq9C/HDOb
vxsW4BHJTyRbaWnoJpJ6VKqeONBHo9aPDq173XqvQSdrn/J9uj/q6v8A+4s/txeHVh0i1/Sv/BV/
3oe/Hj1vrNEQJYyTYCRCSeAAGFyT78OI691rjVfTHzNi+PeDQZTDz9eU3zmy+6oemovjfvj/AEvU
2E/v1n6uk3JV9gS9oVWOqNuEulQZW2itNJA4XXpOo2z1rpKb574+W/WWwaav3Jvz5I9QZja+wul6
nqzbfWPTu24erstXbm7UbGdmS94MOtq3GbJyaUdRHDSQV9VgbUknmokmlYt71nr3Rr/hLsz5FdUb
36Y+93J3bP172pvv5RnsbrHdu18bTdc7EpaDKyZzYGfxEcezMbn9s5DOVs76KusyUyZRHsqmw97H
Xui59mfHbtuX5adlduv0ftSPYcnzo2rmZ+6dpdN7nyvy6wmGxO1IpsRNsLeiVdFQVHT248zGMdlJ
Y46mnpI5LyK6liuvPr3UTbXdH8wPf2/ty7cwea+V+y9nbw3D1ychldwbOy2b3V1rV1/bGUwW88Jh
Mxuf4udVbL28aXZUcbz0+ITcuJpITHULXvJd29Xr3Sl7T7a+YvXOJ3Rt7fPb3y8wey+t8X8oh152
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
3Xuve/de697917r3v3Xuve/de697917opvz2/wCyF/mj/wCKnfIv/wB8/vH2Fee/+VH5y/6VV3/2
jydZAfdO/wDEp/u0/wDnwOXf+7vZ9e+BP/ZC/wALv/FTvjp/75/Z3v3In/Kj8m/9Kq0/7R4+vfex
/wDEp/vLf+fA5i/7u950bL2Kusf+ve/de697917rOv0HvZ49ePHrv3rr3Xvfuvde9+691737r3Wo
H/wo6/7em/8ACZD/AMX/AMh/8EV8Afex59bHA9bfnvXWuve/de697917r3v3Xuve/de697917r3v
3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de
697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3
v3Xuve/de697917r3v3Xuv/Q2KM72LXVP85qrze21hxOTf8AlZphaKfL0H8bpKecfLdK+SoqMfTZ
PDvUxNThkCrUxkOQ1yBY8abD+9N9sYtqi+8nuftHvs3KwvTy01hHeWsV0Z/CO6C5E7RyRLFopGUK
M5bOBnrpTe8jbtJ/dfy7Lt+7W8W4H328ZZJInkjA/qroIKK8bE8eDj/J0fmbsvu5dP226uu5OfV5
+t81BpA/1Ji7GqNWo/1tb/H2t/5Pjfdu/wDZa+dP+51tv/bB1zy/1q/cH/pstp/7IJ/+2zrF/pN7
3+p3L1pf1c/3Bz//ACD/AMx5/Z/3n37/AJPj/dv/APZa+dP+51tv/bB17/Ws9wf+my2n/shn/wC2
zrl/pO71vf8AvH1t+P8AmA89e1uRf+/X9fev+T433cP/AGWznT/uc7b/ANsHXv8AWs9wP+mx2n/s
hn/7bOuv9J3en/PR9a3t9f7hZ76/+h1e1vfv+T433cP/AGWznT/uc7b/ANsHXv8AWs9wP+mx2n/s
hn/7bOvf6Tu9fxuPrUC9/wDjws99Lcf8x19b+/f8nxvu4f8AstnOn/c523/tg69/rWe4H/TY7T/2
Qz/9tnXX+k7vf8bl60BsOf7g5/635P8Ax/f0I9+/5Pj/AHb/AP2WznT/ALnW2/8AbB17/Ws9wf8A
psdp/wCyGf8A7bOvf6Tu+L8bl60+rf8AMA5+9j9Bf+/n1B/2/vf/ACfH+7f/AOy186f9zrbf+2Dr
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
NyJ9zr/XD/qTzZu26f1j+g8b636f9L6D63w/C8CKL4/rZNerV8CaaZqHt/5kueYBa/UW8aeDqppr
nXprWpPDSKdbmfvM/oN9e9+691737r3Xvfuvde9+691737r3Xvfuvde9769173rr3Xvfuvde9+69
1737r3Xvfuvde9769173rr3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xv
fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvdf//S
39fdOqde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3WoH/wAKOv8At6b/AMJkP/F/
8h/8EV8Afex59bHA9bfnvXWuve/de697917r3v3Xuve/de697917r3vfXuve9de697917r3v3Xuv
e/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6979
17r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xu
v//T39fdOqde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69
1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3WoH/wAKOv8At6b/AMJk
P/F/8h/8EV8Afex59bHA9bfnvXWuve/de697917qBlMlR4bGZHL5CVYKDFUNXka2dyAsNJRQSVNR
IxJAASKMn3sdeHHqjTo/+YKKfKd874/0z7Y7mPaHWe/fkJ1N1kd6Y/IwdX03WGUfb9J17FRYl6iv
wVFvfYcmP3G8MoMsVUtabfj3bq/R1+4/mLvDrvcX90du7C2/nM7ner+ttwbObK5rIY7Gy7+7R7A2
519gsZn6ino6mWl2pj6/cST1U8KPVeKMhUufeqDrVB0WfH979xdXfJTsWh7v/hO46td+9VUMUfW2
8uyMDsylxEHUXc266vJ43ZmQydWFqMpU4EQVGLrJ8jRu0UVSXaVUWLfW+jXdP/IvuvN7q6Nj7b2l
1njNofJ7aeS3V1imwspuKq3JseoptozdiY7bO/JM6Bjtzy12yaeV5sjjYqGGlyMX26wTxOtSNU61
TpB7l+SPbdJ37uLpvqXaezajcW5O6abr0bj7M3pv3J7ZwONo+itw9nTbipNpUU8qRSRzYBaX+F42
XGw1ZkMsk6Pd/e6db6btvfLH5J9l1eydmde7N6RxG96nZ/fua35md4ZHfOQ2rBmuiOzsL1y9FtLE
YcY/Kz47er5T7lJKytR8UrWYVhjtLqg61QdO21PnZn92dOd89pQde4fH1nT3TGyOxYMDLm62rhr9
z5v/AEi4/dG3qvJR0VO0mIxGe2BJFSVkUSPVU8gkaNCQg9QdeoOhF+LvYXee9+4flVjey9x7My+x
9m772rjeucNt/A5PG5fb1BmNjYHPvQV+Sq8lU02ShY1zM7eISGdiQyx2Qe68egSyHzt7N2TuHtOX
snY+xMBQbIxXamYoepMkOwdldyT4bYP8Qbbe6NvZvdmEHXncm396U1HDUVL7bkUYGnrkM8kzQTqv
qDr1B0rtw/KzvfqDc+N697j2b1Rld3bibrzN4LJ9d5TdVLt+LbW8N1HaecxmTodwffZL+O7byNvB
VxzClyMV3MNM37Xv1B16g6zb8+Wfc3+nr/QL1hsjrZsjN2fS7JG6t9Zbc32OOwS7GXeWSzkmGwUE
VTlsnGQaeCkSppY3vqaZbWPqDr1B1kwnyn77fYuZ+QuW6367yPx+xsO/JJcVgcznqXtfE4/ZAyFH
BuauGQNVgsvBuLNYuSL+E0dP95QxOjiarbUg9QdeoOsfxx+Vnend+cbC1HW2MoqTMbPwHYOF3dU9
XfI7rvaGAocnXQrXbAzmW7U2Ftun3Tu+nxM61FPX4h/sqggg08aaXb1B16g6sY916r1737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3X/1N/X3TqnXvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6
91737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3X
vfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+
691qB/8ACjr/ALem/wDCZD/xf/If/BFfAH3sefWxwPW35711rr3v3Xuve/de6Ld8st+da7D6M3zP
2stbU7RzuFr8BkcbjctWYKvydPX0sq1VLBmcdJFXYtDTBjJPCwkRASt2sCM+RuTNw553yPZ7KRYo
wpeWVsrHGOLEYqfICoqSMgZ6DXNXM9pyptZ3C4haWZ3CRRr8UkjcFB8h5k0NB5HqtTd3Y/e3d21d
i0sn8unsPPdfbWpmn66jSXbuzVp8BktrVu0ftP4VnO69k7kXEZLaGVlpHpq7HU2unl5iU2tKsvIv
sjZyPbXfubObmM0bRGStRg0K28i0r6O32noEJzB7uTqJoeTrBYmFQHlbUAeFe9c/kPs6CXGdcd10
VLumnyfwB+R28qrduy8N15W5rfXd2O3Tn8VtHbWRhy+1sdtXLV/yj+52pWbZyVPHPR5Ch8ORWaNZ
JJ5JFDBkcm+xVM+5t1X/AJpP/wBsnV/337wf9Mjtv/OZv+tnT5tbbPfW185LuqX+X531vLdtVuPF
7rye6uxO19ub2zeYzmF21n9oY2oyUuZ+TUtI9JT7d3NWU/2kUMNGfL5DF5BrOxyd7FYr7mXVf+aT
/wDbJ1799+8H/TI7b/zmb/rZ0+dYJ8j+o9z43dm1/gF3tkchtvD5Hbmw6HenaG197YHrHbeWkjfI
4DrbB7i+TFbQbTxlRHCkCiJWmgo0FJDJHSjw+/Dk72KzX3Muqf8ANJ/+2TrX7794f+mR23/nK3/W
zpVw7r+TdP2Oe2Iv5dPZS76O65N7HKndGwWg/vHLsjI9dvW/ww/JE4/xnaeVnp/D4/FrYS6fIoYe
/qd7E/8AhTLv/nE//bJ1799+8P8A0yO2/wDOVv8Arb0A+5NhfKbOb/23ufFfCr5E7FwmC2t27iJq
Lr3trbWz83kMr3Jvfbu9d2VNXl8Z8kfNV4qvq8PMhpZXaODzgwLG6I6ePJvsTTHubdhv+aT/APbJ
1v8AffvB/wBMjtv/ADlb/rb08bs667k3di129L/Lz7+2ztSfYOA6w3BtDYfceJ2Vtreux9q/enbe
G3tj8D8oqWXcbYdsnVFKqWUVc/3c4qJZllkVtHk32KNKe5l0B/zSf/tk69++/eD/AKZHbf8AnM3/
AFt6HPafZHy62Rvve3YW2vgP2/QZfsSiwlLuzFPu/ryr2pkKrb9IuOx+dh23VfIqWgx+4TjI0pZq
qARtUQRosgYqCN/1O9ia/wDTzLqn/NJ/+2TrX7794P8Apkdt/wCcrf8AWzoKo9vd9NmarJ5b+Xx3
rurFv/fVsVsXePae290dd7Vn7FpMpQb2qtp7Py/yaqMdhqjP0WcrYSRrWlirJkpVgWRh79/U72Jq
a+5l1T/mk/8A2yde/ffvB/0yO2/85m/62dQKbaHfK4Hc+Ey/wF+RG7qrdVDg8XUbv3n3Fgty7+wm
K2tVpX7Xxu0d41/ybOX2rSbfrY1mgFG0bySjXO0zkk+HJ3sVQ19zLqv/ADSf/tk63++/eD/pkdt/
5zN/1s6K5F83do/G3tfMRbi+LvdH+mTa286rcW5cvv7eOQ3/ALifeFbt+LAVFXkslWd75PF1SnBl
Y1gp9NHH+pI1a59iyw9lPbTcbO3vrPna8ktZBVWCgVH2G3BH5jorn519zbeV4ZuW9sWVcEeI5p/1
U6SdF/MR6Zp901u4Kv429sVWGrq7cGVbr/KZrP5XqfD5XddNLR7mzWF60h7hr8RQ1+VpZ5AywUsy
Qs7PTwxyMxKv/WG9vyTp5wvPlhePzJgH+Efb01/Xv3IGTy5tp+ySSv8Ax89XPfBDLdFd39YHc3VW
8e6oqKJMTRwbezHdvZ2ao9o4jE1Xno9v7YpsxmIqjEYWCeP7eamqIvukiQU0jmFVX3B/uR7dXvt/
uFtE10Lna7hS0UoGmtOKsKkBh8iQRkdD/k3nKPmq3ukmszbbtbNpliJ1UrwZWoKqfsx1Zr7jXoZ9
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3Xvfuvde9+691737r3Xvfuvde9+691/9Xf1906p1737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69
1737r3Xvfuvdagf/AAo6/wC3pv8AwmQ/8X/yH/wRXwB97Hn1scD1t+e9da697917r3v3XuqqP5s0
vh6Q2tIf0rvPHs6nlWUMNSsv0ZSvBB/HvIX2Dw/PR8/3U/8AhHUSe6GbzkcHh+81/wAB6BD5+/MP
t7rLdOxdgdQ5reGIze902y/m2UeqJtwzw5HvnqPYGSodu03bm3MhtKDcldg951MVJVZGsix1Ozky
wO2iSLHtfhX7OpfPE9AnTfNz5t9BbtykPdONwW+dl7b2TXb3yeA3rndjYjuCl2Rk+0tl7O2zV19X
0ptGu6yzvZkdNl68yQUc9HhmpVgViaou4t1rpdUP807tjcOZ2jtXaXVvTmZ3D2S+Ly21Jh2/uObC
bO23k33qr4jtiXGbBr8hheyaCLZ7SNjKSKWGRjPF5UNKZJPde6ffjf8AzWdxfIHuHZuwB0xHtjbO
5oosVX5ibdzVGexG5oesaHsivyFPjq3E4qkzuyGas/h1PLTOa9nU1LxJEroPde6Jpvz+Z38qdvnt
3rag3tiY+waT5QZLP7B3KdnbbePFfFDZ27m27vbbctJLjZMVW5ehzWJp8SMlPHJWRyblp2LFo0Pv
3XujE0P82TsKn2NuXc2P2Z1Vmhsyir8X/d7sDukbV7b3tuxsZuHcNBksHtzCdbjD1mw4aXHRUs1Z
BBHUDx1Mojb7VhN7r3Tzv/8Amw9j9cjPLmutel6mtx25N2bAixMPc2cx2R27u7YsO35M7uXsaPIb
DEm1Oq8pNmzHjcgYnq2H2zyQgVYWL3Xukti/5pneUPZHYOWyeyutNwdWdbz9f7F3rjtob6yWUSs3
Tn+0cxsOp3h0xnF2RHJvHEZCGWmeWHKzUiU81FPTR6pLy+/de6VeM/mp9wbirtr7a2v1V0lndy7y
wmE3zjshRdzblrNmbc2fn+t+xOx4tu7uyOO69rclD2phKTr9qWtx0MP2vlqw4lRYm1+690Jvxd/m
c535I9sS7K/0S/3Q2lWYbOV+JzVVufz7moKzblPjJ6yPcOAq8fj45KDKtkdNJNQNN4yg8wGsEe69
1r8fPDtna+N/mCdvrvhctV7O/wBIeLfc9Lgq+LHZl8JLR0C5FsXWT0tdDBWxU5Z49UMisy2tz7za
9vdvu7j242aWw0C9Ns2jUKrqBNKgEGlccR1D++zxR7/drPXwfEFaGhpitOPSM+a+6/if132Jgtq/
E3d28t67Yj2ti8xuXde6d04jcNPNmc1Tx1sWExYxOBwsNPLhqeTx1eoykVF1FrH2Y8kQ81bpt1xe
c02cMM3ilUREZDRTQs2pmqCfh4Y6T7w22W08cW2yu6aQSSQcnNBQDh59Xe/8J98o2Y6z7HyHkLrV
bh3BIPUSv/F4gHA+g+nsHfeNiEXLXKEdMiVh/wAY6Q+27audOaWHA28f+HrYy94hdTn1737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69
1737r3Xvfuvde9+691737r3X/9bf1906p1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69
1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xv
fuvdagf/AAo6/wC3pv8AwmQ/8X/yH/wRXwB97Hn1scD1t+e9da697917r3v3XuiWfOv485z5F9KV
219rTmHcuLqDlcSg8ZeeaOGRFWFJmjglqInZZER2VZCukkXuJa9oOb9r5W329g31imz39u0EjgE+
HqpRjTOnyNASAa0NKdR97icv7lvO3bfebMgfdLG4WZEJp4lK1UE4qQcV4nHVZU++fmbC9NBuj4bY
Xc+exiRwVGepd47px9NVVdPNDO9bjsdk+jc1WYaOatpkqFgFZUiCVV0zSFFkIuk9l+UpneWw93Nr
FkxqgfwywU8AxFwASBgmgr6Dh0Sp7o7lGqpd+3+7C5A7gsTEV86HTw65VPZHy6rHeWs+EdNWSyRJ
BJLV9ibgqZJII5VqI4Heb4+uzwJUIsioSVDqGAuAfdP9ZPl7/wAK9s/7E/7aerf66l1/0wG8f84m
/wCgOmzH7t+UGJlrZsT8CsBipslk5M1kZsZvHJUE2QzUsbxS5iulpPjtDJWZaWKRlapkLTMrEFiC
b+/1k+Xv/CvbP+xP+2nrX+upc/8ATAbx/wA4m/6A67pN3/KGgy43DQfAvA0O4BjY8MM9RbyydJmx
h4n8kWIGXp/jtHkBiopPUtN5PCrchb+/f6yfL3/hXtn/AGJ/209e/wBdS6/6YDef+cTf9AdSH318
rJGdpPgtipGkE6yNJvrMO0i1VRFV1KuzfHkl1qauBJZAb65UV2uygj3+sny9/wCFe2f9if8AbT17
/XUuf+mA3j/nE3/QHUM7q+TjVwybfAbbjZMY5sQMk27sg2QGIeY1D4kVp+OpqRi3qGMjU+rwmQli
tyT79/rJ8vf+Fe2f9if9tPW/9dS6/wCmA3j/AJxN/wBAdJXfNL352Pjs9jd3/wAv7DZKPdIxCblr
It/Z6hzG4KfBV9Pk8XRZrNUXx8gyuUx1LWUkbCnnlkhKjSV0m3v3+sny9/4V7Z/2J/209a/11Lr/
AKYDeP8AnE3/AEB0saLefykxlJBj8Z8DcFjMfSRU8FJj8bvPJ4+gpIKOoero4KSipPjtDS00FHVy
NLCiIqxSMWUBiT79/rJ8vf8AhXtn/Yn/AG09b/11Lr/pgN4/5xN/0B1hxm6/k7hUmjwvwI29h46n
IVmWqY8TvDI41KnK5GN4chlKhKL46wLPkshDIyT1DXlmRirsQSPfv9ZPl7/wr2z/ALE/7aevf66l
1/0wG8f84m/6A6zUG8/lLispXZzFfA/C4vN5SCmpcnmcbvXK0GXyVLRqEo6bIZOk+PENdW09IotF
HLIyRjhQPfv9ZPl7/wAK9s/7E/7aetf66l1/0wG8/wDOJv8AoDqj75W/y0P5gPyO7+7D7oxfWm3t
oUO+MlBkIdvV+V7Fy9XjhDSRUzRzZCm6mooKgsYtV1iWwPvJLkq75L5U5Y2vYJ+dtunltkIMizQo
GqScKZSR+3qP945g3Pc9xub6PlLdUWQ10m3ckfmAOi/U38lv+YdNPDC+3dpU8ckio0wXs2fxBzYu
IF60iMpF72DLf+o9ihubuRFUsearCg/5eIP+tnRaNw3Ymg5X3Sv/ADzP/m627v5SXwf3V8MOjRgN
71slTubMa6iuE0DUkslTV1ArK6qaheSWSggeeywxSHyhFu4UnSMR/fn3B2bmu723Z9hnE1laEs0q
/AzkUoh/EAOLDBPCo6lP205c3awl3XmDebU29zdhVSI/EqLmr+jE+XEefVtPvHjqWeve/de69791
7r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv
e/de697917r3v3Xuve/de6//19/X3TqnXvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6
91737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3X
vfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+
691qB/8ACjr/ALem/wDCZD/xf/If/BFfAH3sefWxwPW35711rr3v3Xuve/de697917r3v3Xqn169
7916p9eve/deqfXr3v3Xqn1697916p9eve/deqfXr3v3Xqn1697916p9eve/deqfXr3v3Xqn1697
916p9eve/deqfXr3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de
697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//0N/X3TqnXvfuvde9
+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r
3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691qB/8ACjr/ALem/wDCZD/xf/If/BFfAH3sefWx
wPW35711rr3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de69791
7r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv
e/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//0d/X3TqnXvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691qB/8ACjr/ALem/wDCZD/xf/If/BFfAH3s
efWxwPW35711rr3v3Xuve/de697917oK9g92dX9obr7Q2RsTddLuDdHTO4sbtXsnF09JkqdtuZzL
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
7XzuXzbGpwM+Jr8pLj4LPHJAi2HuvdHT6s6N2Z0/2vLjk6jzuG6n3B0L1PX5+hwmzt25vD5juXG7
hpaRM3mqXD0eRmrN7UtJdq+unVqnxgyVUlgW9+691Z97r1ToonzArv4bt7qCuvp+3732C2o8BbjK
Ac8AfX3sdWHDquj+Zn2Gf9k+7BYz/wCby+z5P1H8Z6nH5IH597631Rr8evn9j+kuq+5dgZTr7ae9
stvXEr/o23Jm9t7ay1ZsPctYVoMvkHq8rRT1slA2KJmpokZhFXIH06Xa3uvdNfwO36+4vmx8Y6F5
zM9R2rFO9rXZl2zud3bSnCi5J4Fh/re/de63sD9fdeqHj173rr3Xvfuvde9+691737r3Xvfuvde9
+691737r3Xvfuvde9+691737r3X/09/X3TqnXvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691qB/8ACjr/ALem/wDCZD/xf/If/BFfAH3sefWxwPW35711rr3v3Xuve/de697917r3vfXu
vX9+69Xr1/fuvV697917r3v3Xuve/de6TVTs/bFZuzF77qcLRTbvwmEyu3MTuB0Y5CgwecqsdXZf
GQSBgi01fV4mmkkBUktCvIt79XrdT0pffutde9+691737r3Xr+/der1737r3XvfuvdeuffuvVPXr
+/der1737r3Xr+/der173rr3SA7N6z2j27s7JbH3rRVFXhci0E6y0FbUYzK4vI0cgnx+Xw2UpHjq
sblcfOA8M0Zup4IKkg7B68DToiXaP8sbrzuTZeU687A+QHySzWzsvJRyVuJGX6dpJpPsKhKqkBy1
L0xFmGaKaMEs05d7eonm+69WqOilf9A8fwl/5+F8m/8A0YOxf/tXe/V69UdGa+K/8oT4ifEnsmk7
b2RD2RvXfuIgqYNuZjs7dlBnodsNWwvTVdZhMZhNv7axseRnpZGiNRPFPKkbsqFAzX9Xr1erR/de
q9e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691//9Tf1906p1737r3X
vfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+
691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3
Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvdagf/AAo6/wC3pv8AwmQ/8X/yH/wRXwB97Hn1
scD1t+e9da697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/
de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917
r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6//9Xf1906p173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6917
37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvdagf/AAo6/wC3pv8AwmQ/8X/yH/wRXwB9
7Hn1scD1t+e9da697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3X
uve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de69
7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6//9bf1906
p1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3X
vfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+
691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvdagf/AAo6/wC3pv8AwmQ/8X/yH/wR
XwB97Hn1scD1t+e9da697917r3v3XukP2ZuDcm0+vd57n2ft+l3Vufb+28tmcJtutyD4mlzdfjqS
Wqix02Sjpqx6JanxafIIpCt/0n3sdbHRV96fMvD0G2+jdwbNx+Hq6TuDrzcHbeXyW5q3MwYzrjrf
bWyv7xZbcW4INuYbOZarkotx1lBhZaaGHyrWVYH1Uqd063QdJ7vX567C6x29LS7Skn3hv+jrur8d
lmpNg9n5TrHCZHsrIYeHF4fO9iY3bkO19v57J47J/cUVDX19NV6HhaaJPLGH9Tr1OhvX5cdB/wB8
MhsybeVbQz46vz+HfdWT2fvTGdaVm4dq42pzG5tsYntOu2/T9eZjcuAxtFNLVUNLkpaiPwyJpMkc
iL6nWqdOnUvya6h7sy0+C2LltyrlxgIN343H7w6+3913U7m2XVTwUtLvXZyb821t3+920p56qFRX
477mnX7iEsyrPCX1Tr1OoMvyu6Pg7DqetJ9y5qHM0e4pNm1Wfl2LvpOuIN7Q4qHOTbKm7SO3P9Hk
W648TUxTGhbJCb91Et5XRDunXqdJrD/Nz435qnzlfDvPOY3EYbaub31SZ7cXXPY+2MBvHZm2po4M
9unrfM7g2pjsd2RhcZJKhebCSVwaF1mTXCyyH1OvU6VXZvyr6I6fNanYG9pcRUUOM2dlpaKi2tu/
cWRnpOwNx020dmpj8btvA5evyldn9x1sVJDTU0ctR5HGpAvPv1OvU+fTK3zF6Hh3Njtp12b3fisn
WVe18Vk6vL9XdmYzbuzNx70jp5Nq7R7E3ZWbTi2z19vHNCriCYvMVdHWxmaISxxmWLX6nXqdTcP8
t+jM9uLI7YxWf3RVV1Gm6DjK1OsuzP4BvSfZL1MW8Mf1tuT+6P8AA+ysrtuWinWqpMFUV9Spp5tK
N4JvH6nXqdGPhlSeGKePWI5oo5UEsUsEgSRA6+SGZI5oX0tyrqrKeCAfeutdZfeuvde9+691737r
3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691//9cGv+H3P5q//eU//sD/AI4//ag96oOtUHXv
+H3P5q//AHlP/wCwP+OP/wBqD36g69Qde/4fc/mr/wDeU/8A7A/44/8A2oPfqDr1B17/AIfc/mr/
APeU/wD7A/44/wD2oPfqDr1B17/h9z+av/3lP/7A/wCOP/2oPfqDr1B17/h9z+av/wB5T/8AsD/j
j/8Aag9+oOvUHXv+H3P5q/8A3lP/AOwP+OP/ANqD36g69Qde/wCH3P5q/wD3lP8A+wP+OP8A9qD3
6g69Qde/4fc/mr/95T/+wP8Ajj/9qD36g69Qde/4fc/mr/8AeU//ALA/44//AGoPfqDr1B17/h9z
+av/AN5T/wDsD/jj/wDag9+oOvUHXv8Ah9z+av8A95T/APsD/jj/APag9+oOvUHXv+H3P5q//eU/
/sD/AI4//ag9+oOvUHXv+H3P5q//AHlP/wCwP+OP/wBqD36g69Qde/4fc/mr/wDeU/8A7A/44/8A
2oPfqDr1B17/AIfc/mr/APeU/wD7A/44/wD2oPfqDr1B17/h9z+av/3lP/7A/wCOP/2oPfqDr1B1
7/h9z+av/wB5T/8AsD/jj/8Aag9+oOvUHXv+H3P5q/8A3lP/AOwP+OP/ANqD36g69Qde/wCH3P5q
/wD3lP8A+wP+OP8A9qD36g69Qde/4fc/mr/95T/+wP8Ajj/9qD36g69Qde/4fc/mr/8AeU//ALA/
44//AGoPfqDr1B17/h9z+av/AN5T/wDsD/jj/wDag9+oOvUHXv8Ah9z+av8A95T/APsD/jj/APag
9+oOvUHXv+H3P5q//eU//sD/AI4//ag9+oOvUHXv+H3P5q//AHlP/wCwP+OP/wBqD36g69Qde/4f
c/mr/wDeU/8A7A/44/8A2oPfqDr1B17/AIfc/mr/APeU/wD7A/44/wD2oPfqDr1B17/h9z+av/3l
P/7A/wCOP/2oPfqDr1B17/h9z+av/wB5T/8AsD/jj/8Aag9+oOvUHXv+H3P5q/8A3lP/AOwP+OP/
ANqD36g69Qde/wCH3P5q/wD3lP8A+wP+OP8A9qD36g69Qde/4fc/mr/95T/+wP8Ajj/9qD36g69Q
de/4fc/mr/8AeU//ALA/44//AGoPfqDr1B17/h9z+av/AN5T/wDsD/jj/wDag9+oOvUHXv8Ah9z+
av8A95T/APsD/jj/APag9+oOvUHVUv8AMC/mU/Nb5C/Jf+XJ2d3B3R/e/fHxt7zn330tm/8ARz1N
gP7mbrk390ZuB8r/AA3a+xMJiNxXy+xMVN4MtT11N/kujx6JZlk3Tr1OrWv+H3P5q/8A3lP/AOwP
+OP/ANqD3qg69Qde/wCH3P5q/wD3lP8A+wP+OP8A9qD36g69Qde/4fc/mr/95T/+wP8Ajj/9qD36
g69QdcX/AJ7P81SRHjk+UqujqyOjdHfHBldGBVlZT1AQVZTYj3unXqDovVD/ADL/AJtY2gzmMo+6
vFQbi2fufYGSpW646knjXZ2891Vm9tz4DF+fYUrYGjy+5656lzQmmkXRFGjLFBDHH7rfTuf5pnzw
O0tz7GPev+/X3nufEbx3LjP9GPTmrJ7jwWL2zhcVkWyH+j3+J0v2mM2fjYhDBNFTuKa7IzSSl/de
6CCp+anydrYq+nr+06zI0mRzW6tx1FFkdt7LyFBFnd65TLZrcuVx9DWbbno8TW1+TzlXKr0qQmmM
xWDxqFUe690ZRv5yH8yB927T3yfkYF3TsfbeV2htfJx9QdDQri9uZv8AhpyeL/h8XV6YytiqDiKY
hqmGaSMxAoym9/de6QtV/NI+eVTu7dO94/kBk8Vnd80tXS73i25sfq/a23N5NXYwYaoyG69l7b2R
itm7jzn8LVIUyNZQTV8Sxx6JlMcZX3Xuvbq/mi/One20tl7F3N3guR2r15tit2Zs/FJ1h05jxh9s
5HZtTsCsxQrcZ17R5Gvil2lVyUmuqmmlUkSq4nVZB7r3U7cH81j58bp3PR7yz3fP325KCLY0NJkv
9F/TNL4Y+ttzUm8dlL9pRdd09A/8F3JQxVN2iJqNPjn8sRKH3XulRhf5xX8xrb1PvelxXyGghp+x
90V29N5xVHTfQeRTNbmyOIw+Cq8of4l1bVmgd8VgKOJY6XwQxGEOiK7Mze690DXWv8wr5h9RZ3a+
5dhdy1mNzOyZ8zVbSqcrs7rvdsO3arcFNkqPM1eJoN4bRz2PpKqvpMxVRPKsQkEc7qCAbe/de6NJ
/wAPufzV/wDvKf8A9gf8cf8A7UHvVB1qg69/w+5/NX/7yn/9gf8AHH/7UHv1B16g69/w+5/NX/7y
n/8AYH/HH/7UHv1B16g69/w+5/NX/wC8p/8A2B/xx/8AtQe/UHXqDr3/AA+5/NX/AO8p/wD2B/xx
/wDtQe/UHXqDr3/D7n81f/vKf/2B/wAcf/tQe/UHXqDr3/D7n81f/vKf/wBgf8cf/tQe/UHXqDr3
/D7n81f/ALyn/wDYH/HH/wC1B79QdeoOvf8AD7n81f8A7yn/APYH/HH/AO1B79QdeoOvf8PufzV/
+8p//YH/ABx/+1B79QdeoOvf8PufzV/+8p//AGB/xx/+1B79QdeoOvf8PufzV/8AvKf/ANgf8cf/
ALUHv1B16g69/wAPufzV/wDvKf8A9gf8cf8A7UHv1B16g69/w+5/NX/7yn/9gf8AHH/7UHv1B16g
69/w+5/NX/7yn/8AYH/HH/7UHv1B16g69/w+5/NX/wC8p/8A2B/xx/8AtQe/UHXqDr3/AA+5/NX/
AO8p/wD2B/xx/wDtQe/UHXqDr3/D7n81f/vKf/2B/wAcf/tQe/UHXqDr3/D7n81f/vKf/wBgf8cf
/tQe/UHXqDr3/D7n81f/ALyn/wDYH/HH/wC1B79QdeoOvf8AD7n81f8A7yn/APYH/HH/AO1B79Qd
eoOvf8PufzV/+8p//YH/ABx/+1B79QdeoOvf8PufzV/+8p//AGB/xx/+1B79QdeoOvf8PufzV/8A
vKf/ANgf8cf/ALUHv1B16g6//9Cif37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+
691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3
Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9
+690TD5Nf8za+K3/AIkWT/3peuvfuvdHP9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r
3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3Xvfuvde9+691//0aJ/fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3RMPk1/
zNr4rf8AiRZP/el669+690c/37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
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
X7vf3eOff6v2e0b7708171BaXW3bnYT3VjBsVrDK+qYOsdrcG4uZHQwJMxKmN5UPhKOnDIbjxGWr
NnZ6eaGlylBX0keapYaar8UVHS16zxVMJEbxtHHGrnQrPJ6wOdPsPbP7e818sbH7xcj2FtNdct39
jPJts0s8TSPcXNq0c0MhZ1ZWaXQQ7qkZozs1WPUic7feM9pfdTnn7mXvvzBu1ntPuZsG+2EHMlnb
WN4lvBt23brHc2l7bBIZInjjthNqt4ZZ7kB4oUjIiHTNuDembyc2Uoky0suHnq6laeJIIafyUPnc
06M608VUUaHTdXNyOGH19jHkT2g5J5YteXd2HKkEPNUNpF4khZpGWfwlErCsjxhtervQYzoND1C/
v798r3x90N19yeTx7tX137SX27Xf00CQw2yy2AupGtEcpbwXRiMPh6op2qwAEyFgR1OXeVZittbb
x+DyRp6un/jH8VhFLHJp81f56H9yqppIm1RSOf22Nr2bm3sO/wCs/tPMvuX7k8wc78spc7Rc/u/6
GRpSK+Ha+Fc0WKUOtHSMfqqK0BSoqepFX75fN3th92P7tHt57F+582284bZ/WL9+26Wito+o3X6n
bKy3lpJDJqhluHH0sj6NRWfS2hem3bIrs5u/G1VTPJPOtfDk6yqlu2mHHlal2lYWWOPRAI1+iqSo
H4HsU+5Y2flH2l5n2zbrFIbJtvks7eCJaVkulMEaRoASzF5dRABY9zHzPUV/djPOfvL9732u5o5k
32e93uLmK23ncb65YtpttpdL+4mnlYhY41gtfBRmKxoTFGo+BCw5mqirsxla2Akw1eSrqqEkFSYq
iqlljJVgCCUccHn2NeUNqn2LlPlfY7og3Nnt1tA9OGqGFI2pSuKqfPqDveTmvb+fPd73V542kN+6
t55k3O+h1AhvCu72e4jqCAQdEgqCAQeIB6bfYi6jfr3v3Xuve/de697917r3v3Xuve/de697917r
3v3Xuv/Uon9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691737r3Xvfuvde9+691737r3Xvfuvde9+691mSoqI4ZadJ5kp6gxmeBJXWGYxEtEZYgwSQx
sbrcGx+ntNJZWctzb3stpE15CGEchVS6B6BwjEalDAAMFI1UFa06NLbfN6s9r3PY7PeLqLZL1omu
LdJZFgnaEloWmiVhHKYmZjEXVjGWJWhJ6w+1PRX1737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3WaGoqKcyGnnmgMsTwSmGV4jJBIAJIZCjLrikA9Sm4P59prmys71YVvLSKZY5FkUOqsFdDVXXU
DR1OVYUIPAjo02rfN62J72XZN4urOS5tpLeUwSyRGW3mGmWCQxspeGVcSRNVHGGUjrD7U9FfXvfu
vde9+691737r3Xvfuvde9+691737r3RMPk1/zNr4rf8AiRZP/el669+690c/37r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691mWoqEhkpknmWnlZHlp1ldYZXj/zbyRBhG7JfgkEj2meztJLqG9ktY2vY1ZUkKqXVWpq
VXpqUNQagCAaCvDo0h3verbab3Ybfd7qPY7mWOSa2WWRYJZItXhSSQhhHI8epvDZlLJqbSRU9Yfa
nor697917r3v3Xuve/de697917r3v3Xuve/de697917rNDUT0/l8E80Pnhenm8Mjx+aCS3kgl0Mv
khk0i6m6m3I9prmzs7z6f6u1jl8KRZE1qraJFrpdNQOl1qdLCjCpoc9Gm2b5vWyfvEbNu91aC8tX
tp/Blki8e2l0+LbzaGXxIJNK64n1RvpXUpoOsPtT0V9e9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691737r3X//Von9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdEw+TX/M
2vit/wCJFk/96Xrr37r3Rz/fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvdf/9a8j/oGS+Bv/P2vl1/6HnTf/wBoT3WvVanr3/QMl8Df+ftfLr/0POm//tCe/V69U9e/6Bkv
gb/z9r5df+h503/9oT36vXqnr3/QMl8Df+ftfLr/ANDzpv8A+0J79Xr1T17/AKBkvgb/AM/a+XX/
AKHnTf8A9oT36vXqnr3/AEDJfA3/AJ+18uv/AEPOm/8A7Qnv1evVPXv+gZL4G/8AP2vl1/6HnTf/
ANoT36vXqnr3/QMl8Df+ftfLr/0POm//ALQnv1evVPXv+gZL4G/8/a+XX/oedN//AGhPfq9eqevf
9AyXwN/5+18uv/Q86b/+0J79Xr1T17/oGS+Bv/P2vl1/6HnTf/2hPfq9eqevf9AyXwN/5+18uv8A
0POm/wD7Qnv1evVPXv8AoGS+Bv8Az9r5df8AoedN/wD2hPfq9eqevf8AQMl8Df8An7Xy6/8AQ86b
/wDtCe/V69U9e/6Bkvgb/wA/a+XX/oedN/8A2hPfq9eqevf9AyXwN/5+18uv/Q86b/8AtCe/V69U
9e/6Bkvgb/z9r5df+h503/8AaE9+r16p69/0DJfA3/n7Xy6/9Dzpv/7Qnv1evVPXv+gZL4G/8/a+
XX/oedN//aE9+r16p69/0DJfA3/n7Xy6/wDQ86b/APtCe/V69U9e/wCgZL4G/wDP2vl1/wCh503/
APaE9+r16p69/wBAyXwN/wCftfLr/wBDzpv/AO0J79Xr1T17/oGS+Bv/AD9r5df+h503/wDaE9+r
16p69/0DJfA3/n7Xy6/9Dzpv/wC0J79Xr1T17/oGS+Bv/P2vl1/6HnTf/wBoT36vXqnr3/QMl8Df
+ftfLr/0POm//tCe/V69U9e/6Bkvgb/z9r5df+h503/9oT36vXqnr3/QMl8Df+ftfLr/ANDzpv8A
+0J79Xr1T17/AKBkvgb/AM/a+XX/AKHnTf8A9oT36vXqnr3/AEDJfA3/AJ+18uv/AEPOm/8A7Qnv
1evVPXv+gZL4G/8AP2vl1/6HnTf/ANoT36vXqnr3/QMl8Df+ftfLr/0POm//ALQnv1evVPXv+gZL
4G/8/a+XX/oedN//AGhPfq9eqevf9AyXwN/5+18uv/Q86b/+0J79Xr1T17/oGS+Bv/P2vl1/6HnT
f/2hPfq9eqevf9AyXwN/5+18uv8A0POm/wD7Qnv1evVPWup/Oe/k9/Gf4o/PL+R10113vjvTM7X+
X3y5rOseyq/em5tgZHPYPAxdyfEbaq1exqrB9Zbcx+Ny5x/Z1e5kr6XJw+aGnPi0pIku68etg8et
iv8A6Bkvgb/z9r5df+h503/9oT3qvWqnr3/QMl8Df+ftfLr/ANDzpv8A+0J79Xr1T17/AKBkvgb/
AM/a+XX/AKHnTf8A9oT36vXqnokH8yb+RP8AEf4dfBT5QfJ3rLsX5G53fvSnUe7N/bVxG+93dZ5P
aGQzGCx0tXSU24KDb/UO2MzVY2SRAJEpshSSlf0yKefewa9bBr18+X/Z5+2v+ed66/8APTuX/wCy
73vrfXv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/
89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v
+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r
3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5
f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed6
6/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9
nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su
9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8A
PTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a
/wCed66/89O5f/su9+6917/Z5+2v+ed66/8APTuX/wCy737r3Xv9nn7a/wCed66/89O5f/su9+69
0f7+Vrv3MfN35+/Gn4rdrU2N2/173JvPJ7d3PmevYarFbzoKKj2juPPxS4HIbkrN2YSlqmrMPErN
UY6qQxMwChiGX3Xut/v/AKBkfgZ/z9r5df8AoedN/wD2hPeq9Vr17/oGS+Bv/P2vl1/6HnTf/wBo
T3qvXqnr3/QMl8Df+ftfLr/0POm//tCe/V69U9e/6Bkvgb/z9r5df+h503/9oT36vXqnr//X39fd
Oqde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69
1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xv
fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3WoH/wAKOv8At6b/AMJkP/F/8h/8
EV8Afex59bHA9bfnvXWuve/de697917qpn+et/26H/mA/wDitnY3/ukqPdh1tfPr4uHvfVuve/de
697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3
v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xurlv+
E9//AG+U+B//AIlLPf8Avtd8e/de6+y+fr7r1Q8eve9de697917r3v3Xuv/Q39fdOqde9+691737
r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3WoH/wAKOv8At6b/AMJkP/F/8h/8EV8Afex59bHA
9bfnvXWuve/de697917qpn+et/26H/mA/wDitnY3/ukqPdh1tfPr4uHvfVuve/de697917r3v3Xu
ve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697
917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xurlv+E9//AG+U+B//
AIlLPf8Avtd8e/de6+y+fr7r1Q8eve9de697917r3v3Xuv/R39fdOqde9+691737r3Xvfuvde9+6
91737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3X
vfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+
691737r3Xvfuvde9+691737r3WoH/wAKOv8At6b/AMJkP/F/8h/8EV8Afex59bHA9bfnvXWuve/d
e697917qpn+et/26H/mA/wDitnY3/ukqPdh1tfPr4uHvfVuve/de697917r3v3Xuve/de697917r
3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/
de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xurlv+E9//AG+U+B//AIlLPf8Avtd8
e/de6+y+fr7r1Q8eve9de697917r3v3Xuv/S39fdOqde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6917
37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3WoH/wAKOv8At6b/AMJkP/F/8h/8EV8Afex59bHA9bfnvXWuve/de697917qpn+e
t/26H/mA/wDitnY3/ukqPdh1tfPr4uHvfVuve/de697917r3v3Xuve/de697917r3v3Xuve/de69
7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3
Xuve/de697917r3v3Xuve/de697917r3v3Xurlv+E9//AG+U+B//AIlLPf8Avtd8e/de6+y+fr7r
1Q8eve9de697917r3v3Xuv/T39fdOqdYZainp9Pnnhg1X0+aWOLVb66dbLe1/e6E8OvUPWH+I4//
AJX6L/zqg/6+e96T6deoevfxHH/8r9F/51Qf9fPftJ9OvUPXv4jj/wDlfov/ADqg/wCvnv2k+nXq
Hr38Rx//ACv0X/nVB/189+0n069Q9e/iOP8A+V+i/wDOqD/r579pPp16h69/Ecf/AMr9F/51Qf8A
Xz37SfTr1D17+I4//lfov/OqD/r579pPp16h69/Ecf8A8r9F/wCdUH/Xz37SfTr1D17+I4//AJX6
L/zqg/6+e/aT6deoevfxHH/8r9F/51Qf9fPftJ9OvUPXv4jj/wDlfov/ADqg/wCvnv2k+nXqHr38
Rx//ACv0X/nVB/189+0n069Q9e/iOP8A+V+i/wDOqD/r579pPp16h69/Ecf/AMr9F/51Qf8AXz37
SfTr1D17+I4//lfov/OqD/r579pPp16h69/Ecf8A8r9F/wCdUH/Xz37SfTr1D17+I4//AJX6L/zq
g/6+e/aT6deoevfxHH/8r9F/51Qf9fPftJ9OvUPXv4jj/wDlfov/ADqg/wCvnv2k+nXqHr38Rx//
ACv0X/nVB/189+0n069Q9e/iOP8A+V+i/wDOqD/r579pPp16h69/Ecf/AMr9F/51Qf8AXz37SfTr
1D17+I4//lfov/OqD/r579pPp16h69/Ecf8A8r9F/wCdUH/Xz37SfTr1D17+I4//AJX6L/zqg/6+
e/aT6deoevfxHH/8r9F/51Qf9fPftJ9OvUPXv4jj/wDlfov/ADqg/wCvnv2k+nXqHr38Rx//ACv0
X/nVB/189+0n069Q9e/iOP8A+V+i/wDOqD/r579pPp16h69/Ecf/AMr9F/51Qf8AXz37SfTr1D17
+I4//lfov/OqD/r579pPp16h69/Ecf8A8r9F/wCdUH/Xz37SfTr1D17+I4//AJX6L/zqg/6+e/aT
6deoevfxHH/8r9F/51Qf9fPftJ9OvUPWoT/wo0qKeo/mm/8ACZLwTwz6Pn/X6/DLHLp1fIr4BadW
hm06tJtf629+oRWvWxwPW4F7r1rr3v3Xuve/de6qZ/nrf9uh/wCYD/4rZ2N/7pKj3YdbXz6+Lh73
1br3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xu
ve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697
917q5b/hPf8A9vlPgf8A+JSz3/vtd8e/de6+y+fr7r1Q8eve9de697917r3v3Xuv/9Tf1906p1xZ
Ee2tEa301KrW/wBa4PvdevV64+GH/jjF/wBS0/6N9+qevVPXvDD/AMcYv+paf9G+/VPXqnr3hh/4
4xf9S0/6N9+qevVPXvDD/wAcYv8AqWn/AEb79U9eqeveGH/jjF/1LT/o336p69U9e8MP/HGL/qWn
/Rvv1T16p694Yf8AjjF/1LT/AKN9+qevVPXvDD/xxi/6lp/0b79U9eqeveGH/jjF/wBS0/6N9+qe
vVPXvDD/AMcYv+paf9G+/VPXqnr3hh/44xf9S0/6N9+qevVPXvDD/wAcYv8AqWn/AEb79U9eqeve
GH/jjF/1LT/o336p69U9e8MP/HGL/qWn/Rvv1T16p694Yf8AjjF/1LT/AKN9+qevVPXvDD/xxi/6
lp/0b79U9eqeveGH/jjF/wBS0/6N9+qevVPXvDD/AMcYv+paf9G+/VPXqnr3hh/44xf9S0/6N9+q
evVPXvDD/wAcYv8AqWn/AEb79U9eqeveGH/jjF/1LT/o336p69U9e8MP/HGL/qWn/Rvv1T16p694
Yf8AjjF/1LT/AKN9+qevVPXvDD/xxi/6lp/0b79U9eqeveGH/jjF/wBS0/6N9+qevVPXvDD/AMcY
v+paf9G+/VPXqnr3hh/44xf9S0/6N9+qevVPXvDD/wAcYv8AqWn/AEb79U9eqeveGH/jjF/1LT/o
336p69U9e8MP/HGL/qWn/Rvv1T16p694Yf8AjjF/1LT/AKN9+qevVPXvDD/xxi/6lp/0b79U9eqe
veGH/jjF/wBS0/6N9+qevVPXvDD/AMcYv+paf9G+/VPXqnrUF/4UcIifzTf+EyGhEW/z/wAhfSqr
e3yK+ANr2Ava/vfr1sHB62/vdetde9+691737r3VTP8APW/7dD/zAf8AxWzsb/3SVHuw62vn18XD
3vq3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Vy3/Ce//t8p8D//ABKWe/8Afa749+6919l8/X3Xqh49e96691737r3Xvfuvdf/V39fdOqde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Wnv/wAKSpJYf5nv/CZ6WndY54vnlmpI
ZHj8qpKnyD+AjRu0WpPIquAStxf6XHuy9bHn1tT/AN4t2f8AO3oP/PEv/wBcvd9K9bx17+8O7P8A
nb0P/niX/wCuXv1F61jridxbsH/L3oP/ADxL/wDXL3vSvWs+XRfPlZ0fQfMH469vfGXs3dGXxOwe
6dk5nYe6sjs3H43G7oo8PnaV6SsnwldlVzeOpcgkTkxvNSToD9UPv2kdeBPp1rMf9AcH8tz/AJ/t
8yf/AELun/8A7Tvv2nrdT6de/wCgOD+W5/z/AH+ZP/oXdP8A/wBp337T16p9Ouj/AMI4P5bg+ne/
zJ/9C7p7/wC0772FHWgfn1x/6A4f5bv/AD/b5k/+hb0//wDad96ovVvz69/0Bw/y3f8An+3zJ/8A
Qt6f/wDtO+/UXr359e/6A4f5bv8Az/b5k/8AoW9P/wD2nffqL178+vf9AcP8t3/n+3zJ/wDQu6f/
APtO+/UXrVfn17/oDh/lu/8AP9vmT/6F3T//ANp336i9eqfXr3/QHD/Ld/5/t8yf/Qu6f/8AtO+/
UXr1T69e/wCgOH+W7/z/AG+ZP/oXdP8A/wBp336i9eqfXrv/AKA4P5bv/P8Af5kf+hd0/wD/AGnP
fqL1qp69/wBAcH8t3/n+/wAyP/Qu6f8A/tOe/UX59eqevf8AQHB/Ld/5/v8AMj/0Lun/AP7Tnv1F
+fXtR69/0Bwfy3f+f7/Mj/0Lun//ALTnv1F+fXtR69/0Bwfy3f8An+/zI/8AQu6f/wDtOe/UX59e
1Hr3/QHB/Ld/5/v8yP8A0Lun/wD7Tnv1F+fXtR69/wBAcH8t3/n+/wAyP/Qu6f8A/tOe/UX59e1H
r3/QHB/Ld/5/v8yP/Qu6f/8AtOe/UX59e1Hr3/QHB/Ld/wCf7/Mj/wBC7p//AO0579Rfn17Uevf9
AcH8t3/n+/zI/wDQu6f/APtOe/UX59e1Hr3/AEBwfy3f+f7/ADI/9C7p/wD+0579Rfn17Uevf9Ac
H8t3/n+/zI/9C7p//wC0579Rfn17Uevf9AcH8t3/AJ/v8yP/AELun/8A7Tnv1F+fXtR69/0Bwfy3
f+f7/Mj/ANC7p/8A+0579Rfn17Uevf8AQHB/Ld/5/v8AMj/0Lun/AP7Tnv1F+fXtR69/0Bwfy3f+
f7/Mj/0L+n//ALTnv2kde1Hrv/oDg/luf8/3+ZH/AKF/T/8A9pz37SOvVPr13/0Bv/y3P+f7/Mj/
ANC/p/8A+0579pHVs+vRlfh9/wAJhfg/8J/kp1P8puqO5Pk7mewunc9V7i2vjN8bg6yye1KuurMJ
lcBLHmqDDdaYHJ1NMKPLysqxVkDCQKdRAIPtI69nrZV/vFuz/ncY/wD88S//AFy9+Cg+XWs9c/7w
bs/53GP/APPEv/1x9+IX0PWgfXr394N2f87jH/8AnjX/AOuPvVF9Ot1HXv7wbs/53GP/APPGv/1y
9+ovoevVHp1//9bf1906p1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvdaev/AApN
/wC3nX/CaD/xfDOf/BBfAX3ZePWx59bS9/8AE/77/Y+3aDr35dev/if99/sffqDr35dcSRcDUbm5
AP1IH1IF7kD8+9jrR49df7E/77/Y+/dar8z17/Yn/ff7H37r1fmeu7G1+bXte3F/6X+l/eqitPPr
eaVzTrgf9j/sPdh1oefXR4NjrB+tjwbHkfX+o90wcg9WofQddXH9W97p16h9B164/q3v1OvUPoOu
vr/U/wC+/wBY+9de/Z163+B/33+w9+/Prf59et/gf99/sPfvz69+fXrf4H/ff7D378+vfn1yt/gP
99/sPfv29Vr8+u7f4D/ff7D379vXvz69b/Af77/Ye/ft69X59et/gP8Aff7D379vXq/Pr1v8B/vv
9h79+3r1fn163+A/33+w9+/b16vz69b/AAH++/2Hv37evV+fXrf4D/ff7D379vXq/Pr1v8B/vv8A
Ye/ft69X59et/gP99/sPfv29er8+vW/wH++/2Hv37evV+fXrf4D/AH3+w9+/b16vz69b/Af77/Ye
/ft69X59et/gP99/sPfv29er8+vW/wAB/vv9h79+3r1fn163+A/33+w92HWq/Prse/de8+sio7my
IzEC5Cgsbf1sAePdSyqKswA6uATgJU9dEFSQVII+oPBH+uD72CDkHHWqEYK9df7D3sde/LrJb/aR
/vv9h7r+3qvXdv8AAf77/Ye/VHz63+fXrf4D/ff7D36o+fXvz6//19/X3TqnXvfuvde9+691737r
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
EL4da5rprXNepuF606525Ftmn29sLZ+Cg2XT19Js+HEbcxGOj2vTZVY1ycGASkpYlxMeSWFBUCDR
5tI13t7Yv+b+a91k3eXdeZr+5k3B0a6Ms8shuGjqY2mLMfEMdTo110VOmnT9lyxy5tybYm37BZwJ
ZK624jhjQQLJTWItKjww9Br001UFa9MeY6I6S3FQbcxef6g60zWN2fPPU7Ux+V2Rtuvo9uT1VV99
VPhaapx8sOOFVW/vSLEFWSX1sC3PsxsPcr3D2q53W92znvd7e8v1C3Lx3c6POFXQolZXBfSnapYk
qvaCBjotu+ROSNwg261v+T9smtrNi0CSW0LLCWbUxjUoQmpu5gKAtk56FRESNFjjQRxoqokaBURE
UBVREWyqqqLAAWA9gpmZ2ZmarE1JOST6k+Z6FYAUBVACgYFOuX+wP+3/AON+9db6/9Hf1906p173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6917
37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvdadv/AApYqoaL+Zh/wmqragssFJ86NxVU
7KpdhDT9/fAeWQqg5dgiGw/Pu6AlgBxr1sYBPWzD/pN2l/ys1v8A57pvanwZPQft6bMqjj1x/wBJ
20h/yk1v/num978CX0HXvEXrgez9o/8AKzW/+e2Ye9+BJ6DrXiL69cT2htAf8pVd/wCe6f3rwZPT
+fXvEX1/l1x/0p7PH/KVXf8Anun978CT0/n1vxF9f5ddf6VNnD/lKrv/AD2z+9eBJ8v29e1r6/y6
4N2ts4f8pVf/ALDGzn3bwH9B+3rXiJ1w/wBK+zv+Vuv/APPZP7p4EnoOveLH17/Svs7/AJW6/wD8
9s/vfgP6DrfiJ17/AEr7O/5W6/8A89s/v307+g694iddHtfZv/K3kP8AYY2o/wCI9++nf0HXvETr
r/Sxs3/lbyP/AJ7aj/ivvf00noOteKnp17/Sxs3/AJW8j/57aj/ivv300noOt+Knp17/AEsbN/5W
8j/57aj/AIr799NJ6Dr3ip6dd/6WNmf8rWR/89tT799PL6jrXir17/Szsz/layP/AJ7an376eX1H
XvFXr3+lnZn/ACtZH/z21Pv308vqOveKvXv9LOzP+VrI/wDntqffvp5fUde8Vevf6Wdmf8rWR/8A
PbU+/fTy+o694q9e/wBLOzP+VrI/+e2p9++nl9R17xV69/pZ2Z/ytZH/AM9tT799PL6jr3ir17/S
zsz/AJWsj/57an376eX1HXvFXr3+lnZn/K1kf/PbU+/fTy+o694q9e/0s7M/5Wsj/wCe2p9++nl9
R17xV69/pZ2Z/wArWR/89tT799PL6jr3ir17/Sxsz/layH/nuqfevp5fUdeEinrv/Svsz/layH/n
vqP+K+/fTy9e8RfXrv8A0r7M/wCVqv8A/PfUf8V9++nl694i+vXv9K+zP+VrIf8AnvqP+K+/fTy9
e8RfXr3+lfZv/K1kP/PdUf8AFfexBJ8uveIvr1zHauzv+Vqv/wDPdUe9+BJ8uveIvr1yHamzj/yl
V/8A57p/evAk9B1vxE9T1y/0pbP/AOVqv/8APfP794EnoOveInqeuQ7Q2gf+Uqu/898/v3gS+g69
4iep6yDtDaH/ACs1/wD5wVH/ABX3r6eb5ft60JF4efXY7P2ifpU1/wD5wT/8V9++nm+XW9a9d/6T
tpf8rNd/5wz/APFffvp5vl17WOv/0t/X3TqnXvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69173
7r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691ptf8ACnL/ALeMf8Jv/wDxdbeH/v8AT4Ge3Yv7RPtH+Hr34W+zq+L+z/sD7NPPpG3EdY2/
P+t7sOrHiOsT+/eXVfI/b1iP0P8ArH3U+XXhx6wt/wASP97Hu1etniesbfj/AGPuo8+tr1iP0926
oeHXD3Xqo4jrgfp7308eHXH3vqnXvfuvde9+60OA69791vr3v3Xuve/de697917r3v3Xuve/de69
7917r3v3Xuve/de697917r3v3Xuve/de697917ro/n/W/wCK+9+nXhx679669137svWuux9fdutj
j1zH191PW24D7eufvQ4jrXWVfr/vv6H3o8R1Y9ZR72OPWl8+sy/j/Ye/Dj17z6zD6H/WPv3+frX4
z1yT6H/X9+8x1f165+9niOvdf//T39fdOqde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6917
37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Wm1/wAKcv8At4x/wm//APF1t4f+/wBPgZ7di/tE+0f4evfhb7Or4v7P+wPs08+kbcR1jb8/
63uw6seI6xP795dV8j9vWI/Q/wCsfdT5deHHrA3/ABI/3se9+XWzxPXBvx/sfdR1tfPojHY3z36l
21u6v6z6u292B8ke0sYzRZTZ3Ru3X3ZT7emV2iYbp3V5YNuYaKGaN459E9TLTSIVmjQj3Gu8e6mw
WW4TbLsdpd7zviYaGyj8URnh+rLURoAahqMxUijAdZr+3v3EfdbmXlKx9yfc7mDYPbn2wuQGg3Dm
W7Fi92pAYfRWOlru4ZlKtFqjhSZWDRSOD0kR8mPnJWD7jEfy4crNQyeqCTNfKfqHb2QZD+k1GKq8
RNPSyEfVWYkey7+unudJ32/s7IYjw17naRt+alCR0Kf+Br+5FZt4G7f3itql8vxC35J366ir56Z4
7hVcejACvXR+R3z3/wC9bv8A7OF0z/8AWP3v+uPur/4Rv/urWf8A0B1c/d2+4jT/AOSMf+QDzD/2
09df7Md89/8AvW7/AOzhdM//AFj97/rj7q/+Eb/7q1n/ANAdV/4Hb7iH/wA0Z/8AIA5h/wC2nr3+
zHfPf/vW7/7OF0z/APWP37+uPur/AOEb/wC6tZ/9Ade/4Hb7iH/zRn/yAOYf+2nrr/Zjvnt/3rd/
9nC6Z/8ArH79/XH3V/8ACN/91az/AOgOtD7u33EP/mjP/kAcw/8AbT13/sx3z3/71u/+zhdM/wD1
j9+/rj7q/wDhG/8AurWf/QHW/wDgdvuIf/NGf/IA5h/7aevf7Md89/8AvW7/AOzhdM//AFj9+/rj
7q/+Eb/7q1n/ANAde/4Hb7iH/wA0Z/8AIA5h/wC2nr3+zHfPf/vW7/7OF0z/APWP37+uPur/AOEb
/wC6tZ/9Ade/4Hb7iH/zRn/yAOYf+2nr3+zHfPf/AL1u/wDs4XTP/wBY/fv64+6v/hG/+6tZ/wDQ
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
3xQkyzyEHx0D3HkRKqB4a5uv905w5kb245evXtrGKJZNzuY8PHE/9naxN+GWZcsfJD5gOp6K/d75
T5F+7v7NJ98n3d5bt955mvr6Wy5J2W6Gq2u722NLre72PBksttk7IkBGu5Wh8N3tp0Oh1P071r0Z
szHbB6r2jidn7ZxqLakxsAFTkKoIscmTzWRlMlfmstUhR5aqqklmewBawAElbDy7svLG2xbVsW3x
29kg4KMsafE7Hudz5sxJPr1hj7r+73uR73c4bjz57o82Xe78y3DHvmbsiSpIht4VpFbwJU6IYUSN
ckLUkkSfZx1Gg4jrgfp7308eHXH3vqnXvfuvde9+60OA69791vr3v3Xuve/de697917r3v3Xuve/
de697917r3v3Xuve/de697917r3v3Xuve/de697917ro/n/W/wCK+9+nXhx6796691372DTr3XY+
vu/Xhx65j6+6nrbcB9vRWvkr8UNjfIbG0eZjmn2B3PtLTkOsu6drD+H702dnKMtNjfLX0jU9TmNv
GpNqigmkKGORzCYZSJQBOc+Q9r5uhiuAxtOY7futryLtmhcZWrCheOvxITShOnS3cMofu4fep53+
79uN5s7wpv3s5u1Yt55dvf1du3C2kos2mKQOlvd6MxXUahg6oJRLEDGWj4e9+br7WwG8+uu36Ckw
XyF6H3DFsftzE0aiKhy8kkEs+2ewcHEEjT+Ab5xcDVMJVUTypIY0WFobpfb7mq/3613HZ+YYli5u
2qXwLpRhXNKxzoMfpzqNQoAKg0AUr0efe59ieVfazfeTvcL2kv5b72A5529ty2KeQ6pYAGC3m1XL
VJ+q22ZhDJqLNoaMSO0yy0OSPchjz6xDXrMPx/sP96Hvx6159ZR9D/rH3ocetfjPWRfx/sPez1Ye
fXP+1/sf94/5F7r5db8uv//V39fdOqde97691659+69U9euffuvVPXrn37r1T1659+69U9euffuv
VPXrn37r1T1659+69U9euffuvVPXrn37r1T1659+69U9euffuvVPXrn37r1T1659+69U9euffuvV
PXrn37r1T1659+69U9euffuvVPXrn37r1T1659+69U9euffuvVPXrn37r1T1659+69U9euffuvVP
Xrn37r1T1659+69U9euffuvVPXrn37r1T1659+69U9euffuvVPXrn37r1T1659+69U9euffuvVPX
rn37r1T1659+69U9abf/AApy/wC3jH/Cb/8A8XW3h/7/AE+BntyL+0T7R/h68fhb7Or4f7P+wPs0
8+kbcR1jb8/63uw6seI6xP795dV8j9vWI/Q/6x91Pl14cesLf8SP+I938+tnj1XJ/LSp13P01v3v
6uAqNx/I7u/tPsXJV8nqqBisfuvJbQ2/hUkuSuNwsWBnFNF+mITsBwfcPezKi+5d3XmuXN5vG53N
wzeelZWijT/SoEOkeWo9dDP7yCc8s+8PIvsNY/p8ve3fJWybTDEML48tjDf3VwR5zXDXUfjPxcxq
TkdWJH6e5g654nh1w916qOI64H6e99PHh1x976p1737r3XvfutDgOve/db697917r3v3Xuve/de6
97917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de66P5/1v+K+9+nXhx6796691737
r3XY+vuw4Hrw4jrIPr78ettwH29c/ehxHWuq7t8U69bfzLOiNxYsfbQfJTpHtHrvc9NH6YcjluoI
qHfmKzdSn0kyVPip0o0lPqWnXQOCbxBuqDZvefla7g7V3nbLm3lHkzWgE6uf6QUhAf4RTroZyTO3
uN/dwe+XL+5nxJvbjnXZd2snOWig35pNsnt0PlC86tcMnAynWcgdWOD3Lw8+uew4DrKv/FP96Hvx
6r5jrKPof9Y+9Dj1r8Z65p9PdvMdX9esnv1BUde6/9bf1906p1737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3XvfuvdabX/AApy/wC3jH/Cb/8A8XW3h/7/AE+Bnt2L+0T7R/h69+Fvs6vi/s/7
A+zTz6RtxHWNvz/re7Dqx4jrE/v3l1XyP29Yj9D/AKx91Pl14cesLf8AEj/iPd/PrZ49V2/ypv8A
sgXoT/yqX/v6OxfcQexP/Tq+Vv8AqJ/7TLjroJ/elf8Aid/vr/1Jf/Je2nqwk/T3L3XPk8OuHuvV
RxHXA/T3vp48OuPvfVOve/de69791rr3v3W+ve/de697917r3v3Xuve/de697917r3v3Xuve/de6
97917r3v3Xuve/de697917r3v3Wuvf1/1vfutjjXr3v3Xuve/de67H192Hn14cR1kH19+PW24D7e
uY968x1rqvb5Hf8AZfX8tn/y8T/3y+D9xHzl/wBPW9m/+pt/2hp10E+7v/4gh/eM/wDjAf8Akw3P
Vig9y2PPrn95DrKv++/2w9+PVRxHWUfQ/wCsfehx61+M9c0+nu3mOr+vWT36uR17r//X39fdOqde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvd
e9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Wm1/wAKcv8At4x/wm//APF1t4f+/wBP
gZ7di/tE+0f4evfhb7Or4v7P+wPs08+kbcR1jb8/63uw6seI6xP795dV8j9vWI/Q/wCsfdT5deHH
rC3/ABI/4j3fz62ePVdv8qb/ALIF6E/8ql/7+jsX3EHsT/06vlb/AKif+0y466Cf3pX/AInf76/9
SX/yXtp6sJPuXuufJ4dcPdeqjiOuJ+ntylenTw64e69V697917r3v3Xuve/daz1737r2eve/dez1
737r2eve/dez1737r2eve/dez1737r2eve/dez1737r2eve/dez1737r2eve/de69791vr3v3Xuv
e/de65Ae9jz62Aa9c1+vvx683l1kHvXp14eZ6r3+R/Hz6/ls/wDl4v8A75fBe4h5wz7rezh/6W3/
AGhp10C+7t/4gh/eM/8AjAf+TDc9WJr/AL0L+5d8+uf3kOso+vvfHrQ49ZR9D/rH3vz/AD61+Prm
v4/2H+8+9Hq3r1z/AD/sfdfLrfl1/9Df1906p1737r3Xvfuvde9+691737r3Xvfuvde9+691737r
3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde
9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737
r3XvfuvdabX/AApy/wC3jH/Cb/8A8XW3h/7/AE+Bnt2L+0T7R/h69+Fvs6vi/s/7A+zTz6RtxHWN
vz/re7Dqx4jrE/v3l1XyP29Yj9D/AKx91Pl14cesLf8AEj/iPd/PrZ49V2/ypv8AsgXoT/yqX/v6
OxfcQexP/Tq+Vv8AqJ/7TLjroJ/elf8Aid/vr/1Jf/Je2nqwo+5e8uufZweuB90HVfMH59cD9Pb3
Vzw64e6dV697917r3v3XuvWH9B7916p69Yf0Hv3Xqnr1h/Qe/deqevWH9B7916p69Yf0Hv3Xqnr1
h/Qe/deqevWH9B7916p69Yf0Hv3Xqnr1h/Qe/deqevWH9B7916p69Yf0Hv3Xqnr1h/Qe/deqeve/
de697917r3v3Xuux9fewK9bHEdc/fiaDHW2NBXrkPdQanpupJHXMfn37q44Hqvf5H/8AZfX8tn/y
8X/3y+C9xFzf/wBPV9nP+pt/2hp10C+7t/4gh/eM/wDjAf8Akw3PVia/8R7l3zH29c/vIdZR9fdh
x60OPWUfQ/6x9+/z9a/Geua/j/kH3o+fW/Xrn/a/2P8AxPuvl1by6//R39fdOqde9+691737r3Xv
fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6
91737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3X
vfuvde9+691737r3Xvfuvde9+691737r3Wm1/wAKcv8At4x/wm//APF1t4f+/wBPgZ7di/tE+0f4
evfhb7Or4v7P+wPs08+kbcR1jb8/63uw6seI6xP735Hqvkft6xH6H/WPup8uvDj1hb/inux49bPH
quz+VN/2QL0J/wCVS/8Af0di+4g9if8Ap1fK/wD1E/8AaZcddBP70r/xO/31/wCpL/5L209WFn3L
w659tx64H6e6DrXp9vXA+3urHh1x906rTrr37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvf
uvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdcgPdh59bANR1yH191by683
Afb1k91Xz611y/Hvfn1by6r2+R//AGX1/LZ/8vF/98vgvcRc3/8AT1fZv/qbf9oaddAfu7f+IIf3
jP8A4wH/AJMNz1Ymv/Ee5d/h+3rn95DrKPr7sOPWhx6yj6H/AFj791r8Z65r+P8AkH3o+fW/Xrn/
AGv9j/xPuvl1by6//9Lf1906p1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+69
1737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xv
fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdabH/
AAp1Lr/MU/4ThNGnldfmnvIpHrEfkcd5fA0qnkYFU1ni5Fh9fbsX9on2j/D14/C32dXnGry1v+LI
tuf+XvS/9efZp/h6RtSo6xGsy/8AzpF/8+1N/wBefex9nVjxHWJqzL/86Rf/AD7Uv/Xn3YefWvI9
Y/vMv/zpF/8APtS/9efdevY9esRq8v8A86Rf/PtTH/rj72fLr3EdV4/yrajIx/ArohIMWKmJf9KG
iY5CCDXfubsQt+08TMulrjk82v7iP2I/6dXyt/1E/wDaZcddA/70v/xO/wB9P+pL/wCS9tPVgpq8
v/zpV/8APrTf9efcuU+XXPw9cDWZf/nSL/59qX/rz70R1ogevXH7vL/86Rf/AD70v/Xn3sHrdfn1
193l/wDnSr/59ab/AK8+9086dbNadcfusv8A86Vf/PrS/wDXn36ny6rQ9e+6y/8AzpV/8+tL/wBe
ffqfLr1D177rL/8AOlX/AM+tL/159+p8uvUPXvusv/zpV/8APrS/9effqfLr1D177rL/APOlX/z6
0v8A159+p8uvUPXvusv/AM6Vf/PrS/8AXn36ny69Q9e+6y//ADpV/wDPrS/9effqfLr1D177rL/8
6Vf/AD60v/Xn36ny69Q9e+6y/wDzpV/8+tL/ANeffqfLr1D177rL/wDOlX/z60v/AF59+p8uvUPX
vusv/wA6Vf8Az60v/Xn36ny69Q9e+6y//OlX/wA+tL/159+p8uvUPXvusv8A86Vf/PrS/wDXn36n
y69Q9e+6y/8AzpV/8+tL/wBeffqfLr1D177rL/8AOlX/AM+tL/159+p8uvUPXvusv/zpV/8APrS/
9effqfLr1D12KrL/APOlX/z603/Xn36ny62Aa9chV5f/AJ0i/wDn2pf+vPv1aYp1smnXYq8v/wA6
Rf8Az70v/Xn3U56qcnj1yFZl/wDnSKP/ACLUp/64+/AU62adZBV5f6fwRf8Az7U3/Xn3scOtnh1X
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
6qKliV4oQiMsai1gPdqcMdax69R06/64TJbzzA2ftA5TsampKLsCukw+Mmn3tR0GP/hVFSbpaaGR
c5TUuM/ydI6gSIIfRa3Hv2njjr1R69Ibqv45fHTo2rzeQ6a6Z6r6vr9yAJnq/ZG0sFt+uysSszrT
VdZQ00dS9EjsSsAYQKTcIPeggXgAOvE14npSp1J1DH1/P1PH1/sdOsapZUqdgLhMYNozpPkRmJll
wYj+xdZcqoqWBTmYa/r73pFKUFOvY9c9JftD42/G/u2TAy9v9LdU9lz7XgWl27Ubz2jgs5U4ejRl
ZaCiqqyneojx2pQTTFjAT9UPvZVD8QB68DTgehkxVBhMHjaHDYSjxWIxGLpIKDGYrFQUePxuOoaa
NYqajoaGkWGlpKWniUKkcaqqqLAW91Nfy6qRXj04+eH/AI6xf9TI/wDo73sUHn1qnXfmg/47Rf8A
UxP+jvfqjrYz1Xp8jpYj8+v5bJEsRVf9nE1ESIQt+l8FbUQbC5/r9fcSc5H/AJip7N/9Tb/tDTro
H93b/wAQQ/vGaf8Ahgf+TDc9WJCeD/jtF/1MT/o73LZI65+Dj1lE8H/HeH6H/dsf/R3v1M561+Kv
XJZ4bf56H/qan/R3uxz1tusgng4/fh/6mp/h/tXupHWj5dcvNDe/mh+v/HWP/o73ry6v5df/1t/X
3TqnXvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691psf8ACnVEk/mK/wDCcKOREkjf
5qbyR45FV0dG7z+BqsjowKujKbEEWI9uw/2if6Yf4evH4W+zq9MYfDkf8WnF3/7V1H/159m54HpG
wPl1xOGw/wDzqMV/57qP/rx7qD+3rwNcN1wOGxH/ADqcX/57qP8A68e9g9b4YPXD+DYc/wDLoxVx
/wBW6j/68+9HB+XWsjPl1wOGw/8AzqMX/wCe6j/68+7YIx1v5g46rv8A5VGMxtT8B+hpajHUE8z/
AOlHXLPRU0sj6e5+xUXVJJEztpVQBc8AW9xF7E/9Oq5V/wCon/tMuOugX96X/wCJ3++n/Ul/8l7a
erCThsP/AM6jFj/yHUf/AF59y9Qdc/uPA9dfwbEf86nF/wDnuo/+vPup9COvafn1x/guI/51GL/8
91H/ANefesenXu7rr+DYf/nUYv8A891Hf/rT79Qda66/g2G/51GL/wDPdSf9efftPz6117+DYf8A
51GL/wDPdSf9ePeiD1vr38Gw/wDzqMZ/57qT/rx71n06917+DYf/AJ1GL/8APdSf9ePewD17r38G
w3/Ooxf/AJ7qT/rz73p+fWuvfwbD/wDOoxf/AJ7qT/rx70Qet9e/g2H/AOdRi/8Az3Un/Xj34A9e
69/BsP8A86jF/wDnupP+vHvdD1rr38Gw/wDzqMZ/57qT/rx7rn06317+DYf/AJ1GM/8APdSf9ePe
6Hr3Xv4Nhv8AnUYv/wA91J/15970/PrXXv4Nhv8AnUYv/wA91J/159+0/Pr3Xv4Nhv8AnUYv/wA9
1J/159+0/Pr3Xv4Nhv8AnUYv/wA91J/149+0nr3Xv4Nh/wDnUYz/AM91J/1496ofTrfXv4Nhv+dR
i/8Az3Un/Xj3vSetde/g2G/51GM/891J/wBePftPXuu/4Nh/xiMX/wCe6k/68+90HXuuQw2H/wCd
Ti//AD3Uf/Xn3rHp1vJ8+u/4Nh/+dTi//PdR/wDXn3YD1HW6fPrkMNh/r/CMXb/tXUfP/WH3UkcB
1onyHVe3yOxmOT58fy24Ux1AkU/+zh+aFKKmWKbxdMYNo/NGsQSXxsbrqB0n6e4j5wFPdX2b/wCp
t/2hp10D+7t/4gh/eMgf+GB/5MNz1YgMNiP+dRiv/PdRf9ePcuE9c/DjA49cv4Rh/wAYnF/+e6j/
AOvPvajz68AfPrkuHw5/5dGK/wDPdRf9ePdvPrzdZRh8Pcf7iMXz/wBW6j/w/wCbPvTD060fw9d/
wfEXt/CcX9f+ddR/1/5Ye9aRT59W8uv/197S9f8A87nLf9TaT/6j9+691jElffnM5a3/AC2pOP8A
1S9+691kvXnn+NZb/qbS/wD1F7917rFryF/+L1lv9bzUf+9/Ze/de678lf8AT+M5b/qdSf8A1F79
17r3kr/+dxlv+p1J/wDUXv3XuuStXt/y+csP+n1J/wDUXv3XuuV6/wD53WW/6nUn/wBRe/de69ev
/wCd1lv+p1J/9Re/de69ev8A+d1lv+p1J/8AUXv3XuvXr/8AndZb/qdSf/UXv3XuvXr/APndZb/q
dSf/AFF7917r16//AJ3WW/6nUn/1F7917r16/wD53WW/6nUn/wBRe/de69ev/wCd1lv+p1J/9Re/
de69ev8A+d1lv+p1J/8AUXv3XuvXr/8AndZb/qdSf/UXv3XuvXr/APndZb/qdSf/AFF7917r16//
AJ3WW/6nUn/1F7917r16/wD53WW/6nUn/wBRe/de69ev/wCd1lv+p1J/9Re/de69ev8A+d1lv+p1
J/8AUXv3XuvXr/8AndZb/qdSf/UXv3XuvXr/APndZb/qdSf/AFF7917r16//AJ3WW/6nUn/1F791
7r16/wD53WW/6nUn/wBRe/de69ev/wCd1lv+p1J/9Re/de69ev8A+d1lv+p1J/8AUXv3XuvXr/8A
ndZb/qdSf/UXv3XuvXr/APndZb/qdSf/AFF7917rgZK8G38Zyx/6fUn/ANRe/de668lf/wA7nLf9
TqT/AOovfuvddCTIfnM5Y/8AT6kH/wAZe/de68ZMh+Mzlh/0+pD/APGXv3XuuQeutzmstf8A5a0v
/wBRe/de653r/r/Gst/1OpP/AKj9+691p8f8KUmqG/mMf8Jy/PW1dX/zmtunR908L+P/AIzp8E9X
j8UENtfF73+g93i/tI/9MP8AD1pvhb7OtgT2bngeknXY+n+x/wCI9t+fVH8usZ92p1tuPXEi/P0P
v3HrwP7OuP1/1/yP99+PegSp618OR8PVdX8qIf8AOAfQn/lUv/f09je4k9if+nVcrf8AUT/2mXHX
QP8AvTB/4Hf76H/pS/8AkvbT1YeRf6+5d65+fZ17SPes+vXqn1660j3U1HHrdT69dFfeww9OvVrx
HXHT7sKHr1AeB66t79T069p+fXre/UPW9Pz69b36nWtPz69b3ug9Ovafn163vRHp17T8+vW9+p17
T8+vW97p6de0/Pr1veqHren59et79TrWn59et73Qde0/Pr1vfqD069p+fXre/UHp17T8+vW9+oOv
afn163vVD17T8+vW97oOvafn163v1B6de0/PrkF/w/2/upKjr2OuwvupPoOvVPXLSPdhXz61k+fX
dvfsde+Q6rw+SA/5z9/lrf8Al43/AL5bBe4j5xz7q+zf/U2/7Q066Cfd1FPuI/3jH/jA/wDkw3PV
ig+h/wBY/wC9+5bpn5dc+vxnrwF/9b3cmnVyadZAPegc9aArk9cx9f8Aff4e9MaU683l16/N/wDH
/ife64+fVvLr/9De49+691jZSTce/de65KLCx9+691h9+691yB5+g/23v3Wuu9Bv/hf/AHj37rfW
QAD6D37r3Xfv3Xuve/de697917r3v3XusM1RT0yh6ieCnQnSHnmjhQt/qQ0jKpP+HuyRvIaRozH5
An/B1VnSMVkcKPmQP8PWVWV1V0ZXR11I6MGR1P0ZGUlWU/1HHvRBBIIoR1sEEAg1B6ivX0MVZBj5
a6jjyFVFLNTUElVAlbUww2801PSNIKieKG/rZVKr+SPbiwTtE86wuYFIBYKSoJ4AtSgJ8gTU+XTZ
ngWVIGmQTsCQpYBiBxIWtSB5kDHn1MAJNgCT/QC54+vA9tE0yeHToBPDrr37r3XB5I4lLyukaLyz
yOqIo/qzMQo97CsxAUEn5Z60WVQWYgD59QavL4jHvFHX5XGUMk0M9RDHW19JSSTU9KnkqqiJKiaN
pIKaP1SOoKovLED2/FaXU4ZoLWR1BAJVWYAnABoDQk4AOSeHTMt1awFVnuY0YgkBmVahRViKkVAG
SeAHHqXT1FPVwRVNLPDVU08aywVNNLHPTzxSAMksM0TPHLE6m4ZSQR9PbTxvE7RyoVkU0IIIII4g
g5BHoenUdJUWSJw0bCoIIIIPAgjBHzHWb3Tq3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuv
de9+691GWso3qZaJKykesp0EtRRrUwNVwRN+mSemWQzwxt+GZQD7cMUojSYxMIWNA1DpJ9AaUJ+Q
PTYliMjQiVTMoqVqNQHqRWoHzI66oq+hyVNHWY2to8jRy6vFWUFVBWUsuhij+KpppJYZNLqQbMbE
W97mgnt5GhuIXjmHFWUqw+0EAj9nWoZobiNZreZJIjwZSGU/YQSD+3qTpH1t7a6d64soAJ+lvzfg
f1v+Le/de6jLPC3jZZoXEpIiKyxssxAuREVYiQgc+m/uxRwWBQgjjg4+30/PqodGC0cEHhkZ+z1/
Lro1FPYsZ4AqyCFm80YVZr6RESXsJSeNP6r/AI9+0SVp4bVpXgeHr9nz4da1xgH9RaA04jj6fb8u
PWRWR2dFeNnj0+RA6F49QuvkQHUmoci4Fx70VYAEqdJ4H1+zqwZSSAwqOPy+3rJE8ckYeKSOVGuV
eJ1kRuSPS6EqeR/X35lZSQykMPI460CrLqVgVPmMjrT6/wCFKf8A28Y/4Tlf+Lrbp/8Af6fBL3aL
+0j/ANMP8PW2+Fvs62A/Zx0k67H0/wBj7bIp1R+uiP8Aff097B8j14N5Hj1wI9+pTrZ6xn9X++/p
73So62OHVdv8qAX+AXQn/lUv/f09je4g9iv+nV8rf9RP/aZcddAf70uo+/f76ny/3S/+S9tPVhxH
uXwKiteufvzHDrq3+H+8e9V+fXs9et/h/vHv1evZ69Yf0/3j37r2eure/Y9Otf4eutI97r17u/i6
70j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt6
9e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt69e0j36vXqt
69esB79x69nzPXdv9j71jr32det/h/vHv3W89et/h/vHvYz59ez1zA91OOtVpgceq7/kiP8AnP3+
Wr/5eP8An/vy2C9xHzhX/XV9m/8Aqbf9oaddAvu7av8AgEP7xn1/5AH/AJMNz1Yn9eB9P979y9w6
5/Aaft65e9cetdcx798OT1cmnXZ/p/t/esk9e6692pjr3X//0d7j37r3Xvfuvde9+691H9+691kU
Kebcj/fD37r3WT37r3Xvfuvde9+691737r3Xvfuvde9+690QH56r19JTfG2LtZ9sL11L8idqR7tG
9J6Gm2q2IOJzX3C5yXJSRUC0J/teVgn9fc7exp35ZPcR+VxcnmAcvzmD6cMZ/E1x08MIC2r00ivU
He9w2Fovb1OZzbfuA7/CJ/qCoh0aJK+IXIXT66jTonVR2rkOqZO23+KmaXDfGnO9s9S7TxW98blM
QmxNj5TMUuW/0jVfXG5N+0uZ2Rg8PNJHQU8lZLFPiKOsn1Bbgj3LcfK8HNC8qj3PszN7jQbVfTvb
Okn1NykbJ9It3DbNHcySAGVhGrLPJGtK9RK/M8/LLc0n2zvPB9vJ90soEuEeMW1u8gf6trSW5WS3
jjNIlLsGgR2rTp7re3u2oczsHsuau292Fv7anT/yK/uhmcFkMJuqHPY3D19JDiMjlK3amOxe2szm
KOlJasfGwJQzyRFoxpJHtHDynyq1nvvLiQ3FhsV1u+1ePHIskBieRWMiIs7vNHGzYjEzGRQ1GNel
s3NXNK3ex8xNPBf75a7TungSRtHMJERlEbO0KpFJIq5kMSiNitQKY6S25O1+6exOgu3JMp3vFltv
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
MIEU0FQSOoP98vvbe9Xv/Z7fy/zfvlvY8gWRH0mybXAm37Pahcr4dnDiQpU+G9y88kYZgjqpI6ND
7HIFOsZ+uVveiadWIA49cgPbZNeqk6iOuvyfdl6c697v17r3v3Xuv//U3uPfuvde9+691737r3Uf
37r3WVBYf7H37r3XP37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfu
vde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691
737r3XvfuvdcX/Sf9h/vfv3XusPv3Xuve/de6zJ+n37r3XFx9PfuvdafX/ClL/t4x/wnK/8AF190
/wDv9Pgl7vH/AGkf+mH+Hqr/AAt9nWwN7NekXXj9D/re/Drw49Y/d+r9de6Efs691yHN/wDYe6dU
YADh1wP09ujh1s8B1x91611737r3XRF/ewetg0646T/h73XrdR119Pe+t9e9+691737r3Xvfuvde
96691734CnXuve99e697917r3v3Xuve/de697917rr3oCh69137317rr3qma9e6797691737r3Xv
fuvddgE+9V61Udd6ffq9er1y916r137svHr3XK3vxNOt0A49cgPbZNeq11H5dcbn36nTlAPLr3u6
+fXuu/duvdd2Nr+9V61Xr//V3uPfuvdcSwHv3Xuuwbi/v3XusHv3Xuuxe/F/r791r/D1l1gG3v3X
uuXv3W+ve/de697917r3v3Xuve/de6SW/t9bW6w2Ru3sbfGVjwWzdi7dy+6905mWKeePF4HBUU2R
ylc8FLHNUzCnpIGbRGjO1rAE+/de61uaz/hXL/J4pqqop4dxfJTIRQTSRR11H0QUpatEYqtRTpX7
yoa5YZgNSiWGKQA+pVPHv3Xuo/8A0F2fyff+dt8nf/RFUv8A9nnv3Xuvf9Bdn8n3/nbfJ3/0RVL/
APZ57917r3/QXZ/J9/523yd/9EVS/wD2ee/de69/0F2fyff+dt8nf/RFUv8A9nnv3Xuvf9Bdn8n3
/nbfJ3/0RVL/APZ57917r3/QXZ/J9/523yd/9EVS/wD2ee/de69/0F2fyff+dt8nf/RFUv8A9nnv
3Xuvf9Bdn8n3/nbfJ3/0RVL/APZ57917r3/QXZ/J9/523yd/9EVS/wD2ee/de69/0F2fyff+dt8n
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
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413698</attachid>
            <date>2020-11-10 08:30:30 -0800</date>
            <delta_ts>2020-11-10 09:12:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211192-20201110083029.patch</filename>
            <type>text/plain</type>
            <size>29971</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTcxYzRkMjY1MWZhYTNi
NzA2MWYyYzM1ODA3YmQ1ZGM5MjM5MWMxNS4uMmQ2NGRiM2NlNTZlN2JmNTA4NmVlYmEzOTkyOTk1
MzViNzM5YjcxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTExLTEwICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFVTQiBtaWNyb3Bo
b25lIG5vdCByZWNvZ25pemVkIGlPUyBTYWZhcmkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTE5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjI2
MDczMTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGVzdGluZyByZXF1aXJlcyBoYXJkd2FyZSwgdGVzdGVkIG1hbnVhbGx5LgorCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oOiBBZGQgY29uY2VwdCBvZiBkZWZh
dWx0IGRldmljZS4KKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmlzRGVmYXVsdCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjpzZXRJc0RlZmF1bHQpOgor
ICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmRlY29kZSk6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmg6IERvbid0IHJldGFp
biBwb3J0CisgICAgICAgIGRlc2NyaXB0aW9uLCBpdCBpcyBuZXZlciB1c2VkLgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW06
CisgICAgICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZSk6
IEFkZCBkZWZhdWx0IGlucHV0IHBhcmFtZXRlci4KKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKTogU2V0IGVu
YWJsZWQKKyAgICAgICAgYW5kIGRlZmF1bHQgYXR0cmlidXRlcy4KKworICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZU1hbmFnZXIubW06CisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxl
SW5wdXRzTGlzdGVuZXIgaW5pdFdpdGhDYWxsYmFjazphdWRpb1Nlc3Npb246XSk6IFRha2UKKyAg
ICAgICAgcGFyZW50IG9iamVjdCBhbmQgYXVkaW8gc2Vzc2lvbi4gTGlzdGVuIGZvciBzZXNzaW9u
IHJvdXRlIGNoYW5nZSBub3RpZmljYXRpb24uCisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9u
QXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgaW52YWxpZGF0ZV0pOgorICAgICAgICAoLVtXZWJBVkF1
ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyIHJvdXRlRGlkQ2hhbmdlOl0pOgorICAg
ICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6QVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcik6CisgICAgICAgIEFsbG9jYXRlIGFuZCB1c2Ug
YW4gYXV4aWxpYXJ5IGF1ZGlvIHNlc3Npb24gYmVjYXVzZSBpdCBpc24ndCBwb3NzaWJsZSB0byBl
bnVtZXJhdGUKKyAgICAgICAgYWxsIGF1ZGlvIGlucHV0cyB3aXRob3V0IG9uZS4KKyAgICAgICAg
KFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlvU2Vzc2lv
bkRldmljZVdpdGhVSUQpOiBObyBuZWVkCisgICAgICAgIHRvIGNhbGwgcmVmcmVzaEF1ZGlvQ2Fw
dHVyZURldmljZXMsIGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzIGRvZXMgaXQgaWYgbmVjZXNz
YXJ5LgorICAgICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcyk6IE5ldywKKyAgICAgICAgcmVmcmVzaCBk
ZXZpY2VzIG9uIGEgdGFzayBxdWV1ZSBiZWNhdXNlIHdlIGZyZXF1ZW50bHkgZ2V0IG1vcmUgdGhh
biBvbmUgbm90aWZpY2F0aW9uCisgICAgICAgIHdoZW4gYSByb3V0ZSBjaGFuZ2VzLgorICAgICAg
ICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaEF1
ZGlvQ2FwdHVyZURldmljZXMpOiBTb3J0IGRldmljZXMKKyAgICAgICAgc28gdGhlIGRlZmF1bHQg
aXMgYWx3YXlzIGZpcnN0LiBPbmx5IGNhbGwgZGV2aWNlQ2hhbmdlZCB3aGVuIHNvbWV0aGluZyBh
Y3R1YWxseSBjaGFuZ2VzLgorICAgICAgICAoLVtXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlu
cHV0c0xpc3RlbmVyIGluaXRXaXRoQ2FsbGJhY2s6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dl
YkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgb2JzZXJ2ZVZhbHVlRm9yS2V5
UGF0aDpvZk9iamVjdDpjaGFuZ2U6Y29udGV4dDpdKTogRGVsZXRlZC4KKworICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmdldERldmljZUluZm8pOiBEZWFsIHdpdGggaW5wdXQgYW5kIG91dHB1dCBk
ZXZpY2VzLiBUcmFuc2xhdGUgdGhlIGRhdGEKKyAgICAgICAgc291cmNlIG5hbWUgaWYgcG9zc2li
bGUuCisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Q29yZUF1ZGlvQ2FwdHVy
ZURldmljZSk6IFNldCBuZXcgYGRlZmF1bHRgIGF0dHJpYnV0ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmRlZmF1bHREZXZpY2UpOiBOZXcuCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaDoKKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcyk6IE5ldywgY29hbGVzY2UKKyAgICAgICAg
Y2FsbHMgdG8gcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMuCisgICAgICAgIChXZWJDb3JlOjpD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29yZUF1ZGlvQ2FwdHVyZURldmljZXMpOiAK
KyAgICAgICAgKFdlYkNvcmU6OmNvbXB1dGVBdWRpb0RldmljZUxpc3QpOiBObyBuZWVkIHRvIGNo
ZWNrIGZvciB0aGUgZGVmYXVsdCBkZXZpY2UgZXhwbGljaXRseS4KKyAgICAgICAgRG9uJ3QgY2Fs
bCBkZXZpY2VDaGFuZ2VkKCkgaWYgb25seSB0aGUgZGVmYXVsdCBkZXZpY2UgY2hhbmdlcy4KKyAg
ICAgICAgKFdlYkNvcmU6OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVk
aW9DYXB0dXJlRGV2aWNlcyk6CisgICAgICAgIChXZWJDb3JlOjpnZXREZWZhdWx0Q2FwdHVyZUlu
cHV0RGV2aWNlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmdldERlZmF1bHRDYXB0dXJl
T3V0cHV0RGV2aWNlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9t
YWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuaDoKKwogMjAyMC0xMS0wNSAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCBidWls
ZCBhZnRlciByMjY5NDM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBjOTQ2ZjA0YmFmOTYwN2UwOTE1
NWE5MGJhOTZhN2M5YjAyNmZmY2ZkLi4xYTAxMjRhMzc4MjJiOGQyYzFiZjY3YmQ1ZmVkNGM3M2Zm
MmY4NGYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMS0xMCAg
RXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBVU0IgbWlj
cm9waG9uZSBub3QgcmVjb2duaXplZCBpT1MgU2FmYXJpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTExOTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzYyNjA3MzEzPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogcGFsL3NwaS9jb2NvYS9BVkZvdW5kYXRpb25TUEkuaDogRGVjbGFyZSArW0FWQXVkaW9T
ZXNzaW9uIGluaXRBdXhpbGlhcnlTZXNzaW9uXS4KKwogMjAyMC0xMS0wNCAgRGF2aWQgS2lsemVy
ICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdCBzaG91bGQgcmVtb3ZlIHVu
dXNlZCBkZWJ1ZyB2YXJpYW50IHN1cHBvcnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKaW5kZXggZWM2OGI3OGMyNDQ4ZDhjYzllYTUz
MTNlYjQ1MmEyZDYyYjU5MDE4YS4uNTk4ZDM4NGYwNzc4YmM2ZTQyZTcwYmY4MmZjZDgzZjdjMjY5
M2VmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmgKQEAgLTM2MCw2ICszNjAsNyBAQCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIE5T
X0FTU1VNRV9OT05OVUxMX0JFR0lOCiAKIEBpbnRlcmZhY2UgQVZBdWRpb1Nlc3Npb24gKEFWQXVk
aW9TZXNzaW9uUHJpdmF0ZSkKKy0gKGluc3RhbmNldHlwZSlpbml0QXV4aWxpYXJ5U2Vzc2lvbjsK
IEBwcm9wZXJ0eSAocmVhZG9ubHkpIE5TU3RyaW5nKiByb3V0aW5nQ29udGV4dFVJRDsKIEBlbmQK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVy
ZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURl
dmljZS5oCmluZGV4IDRhNDhhOTQzYTZlMzU2YmJhNDg3NWMyNGM1NTkzZmU5NmM0MzliNzIuLjU0
ZThhYWNkNGU2MjM1ZDhlNGU5MmYzNDM0Y2E4OTI0YmVmNDliOTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmgKQEAgLTYzLDYg
KzYzLDkgQEAgcHVibGljOgogICAgIGJvb2wgZW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZW5h
YmxlZDsgfQogICAgIHZvaWQgc2V0RW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9lbmFibGVkID0g
ZW5hYmxlZDsgfQogCisgICAgYm9vbCBpc0RlZmF1bHQoKSBjb25zdCB7IHJldHVybiBtX2RlZmF1
bHQ7IH0KKyAgICB2b2lkIHNldElzRGVmYXVsdChib29sIGlzRGVmYXVsdCkgeyBtX2RlZmF1bHQg
PSBpc0RlZmF1bHQ7IH0KKwogICAgIGV4cGxpY2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdCB7IHJl
dHVybiBtX3R5cGUgIT0gRGV2aWNlVHlwZTo6VW5rbm93bjsgfQogCiAjaWYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKQEAgLTczLDYgKzc2LDcgQEAgcHVibGljOgogICAgICAgICBlbmNvZGVyIDw8IG1f
bGFiZWw7CiAgICAgICAgIGVuY29kZXIgPDwgbV9ncm91cElkOwogICAgICAgICBlbmNvZGVyIDw8
IG1fZW5hYmxlZDsKKyAgICAgICAgZW5jb2RlciA8PCBtX2RlZmF1bHQ7CiAgICAgICAgIGVuY29k
ZXIgPDwgbV90eXBlOwogICAgIH0KIApAQCAtOTksNiArMTAzLDExIEBAIHB1YmxpYzoKICAgICAg
ICAgaWYgKCFlbmFibGVkKQogICAgICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAorICAg
ICAgICBPcHRpb25hbDxib29sPiBpc0RlZmF1bHQ7CisgICAgICAgIGRlY29kZXIgPj4gaXNEZWZh
dWx0OworICAgICAgICBpZiAoIWlzRGVmYXVsdCkKKyAgICAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CisKICAgICAgICAgT3B0aW9uYWw8Q2FwdHVyZURldmljZTo6RGV2aWNlVHlwZT4gdHlw
ZTsKICAgICAgICAgZGVjb2RlciA+PiB0eXBlOwogICAgICAgICBpZiAoIXR5cGUpCkBAIC0xMDYs
NiArMTE1LDcgQEAgcHVibGljOgogCiAgICAgICAgIE9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IGRl
dmljZSA9IHt7IFdURk1vdmUoKnBlcnNpc3RlbnRJZCksIFdURk1vdmUoKnR5cGUpLCBXVEZNb3Zl
KCpsYWJlbCksIFdURk1vdmUoKmdyb3VwSWQpIH19OwogICAgICAgICBkZXZpY2UtPnNldEVuYWJs
ZWQoKmVuYWJsZWQpOworICAgICAgICBkZXZpY2UtPnNldElzRGVmYXVsdCgqaXNEZWZhdWx0KTsK
ICAgICAgICAgcmV0dXJuIGRldmljZTsKICAgICB9CiAjZW5kaWYKQEAgLTExNiw2ICsxMjYsNyBA
QCBwcml2YXRlOgogICAgIFN0cmluZyBtX2xhYmVsOwogICAgIFN0cmluZyBtX2dyb3VwSWQ7CiAg
ICAgYm9vbCBtX2VuYWJsZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9kZWZhdWx0IHsgZmFsc2Ug
fTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2UuaAppbmRleCAwOWI4MTMzMGVjNTNkMzE2NDE4ZjUxODIxYzFjZDZiOWJi
NjdkNTZmLi4xMTAxNWY2NDRkNDQ4ZWExYjJmYzdhZDViY2E4NDM3NGM0ZWRhOWM1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5oCkBAIC0zNiwxMyArMzYsMTEgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2Ug
OiBwdWJsaWMgQ2FwdHVyZURldmljZSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIEFWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZSBjcmVhdGUoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24qKTsK
KyAgICBzdGF0aWMgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlIGNyZWF0ZShBVkF1ZGlvU2Vz
c2lvblBvcnREZXNjcmlwdGlvbiAqZGV2aWNlSW5wdXQsIEFWQXVkaW9TZXNzaW9uUG9ydERlc2Ny
aXB0aW9uICpkZWZhdWx0SW5wdXQpOwogICAgIHZpcnR1YWwgfkFWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZSgpID0gZGVmYXVsdDsKIAogcHJpdmF0ZToKLSAgICBBVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2UoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24qLCBjb25zdCBTdHJpbmcmIHBl
cnNpc3RlbnRJRCwgY29uc3QgU3RyaW5nJiBsYWJlbCk7Ci0KLSAgICBSZXRhaW5QdHI8QVZBdWRp
b1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24+IG1fcG9ydERlc2NyaXB0aW9uOworICAgIEFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqZGV2aWNl
SW5wdXQsIEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpkZWZhdWx0SW5wdXQpOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2UubW0KaW5kZXggZmM0MTgwMzdhYzE5MGY1YmQ0MDQxZmJkNzNjYjc5NmMyNTAyZjYx
OS4uMGZhNzFmYWQxNmUyZGQ1NzI0N2RmMjNmNzJiNjZkN2EwYWIzOWFlYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9p
b3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tCkBAIC0zMiwxOSArMzIsMTYgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi1BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UgQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlOjpjcmVhdGUoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRp
b24qIHBvcnREZXNjcmlwdGlvbikKK0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZSBBVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlv
biogZGV2aWNlSW5wdXQsIEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpkZWZhdWx0SW5w
dXQpCiB7Ci0gICAgU3RyaW5nIHBlcnNpc3RlbnRJRCA9IHBvcnREZXNjcmlwdGlvbi5VSUQ7Ci0g
ICAgU3RyaW5nIGxhYmVsID0gcG9ydERlc2NyaXB0aW9uLnBvcnROYW1lOwotICAgIGF1dG8gZGV2
aWNlID0gQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKHBvcnREZXNjcmlwdGlvbiwgcGVyc2lz
dGVudElELCBsYWJlbCk7Ci0gICAgZGV2aWNlLnNldEVuYWJsZWQocG9ydERlc2NyaXB0aW9uLmRh
dGFTb3VyY2VzLmNvdW50KTsKLSAgICByZXR1cm4gZGV2aWNlOworICAgIHJldHVybiBBVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2UoZGV2aWNlSW5wdXQsIGRlZmF1bHRJbnB1dCk7CiB9CiAKLUFW
QXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKEFW
QXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uKiBwb3J0RGVzY3JpcHRpb24sIGNvbnN0IFN0cmlu
ZyYgcGVyc2lzdGVudElELCBjb25zdCBTdHJpbmcmIGxhYmVsKQotICAgIDogQ2FwdHVyZURldmlj
ZShwZXJzaXN0ZW50SUQsIENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUsIGxh
YmVsKQotICAgICwgbV9wb3J0RGVzY3JpcHRpb24ocG9ydERlc2NyaXB0aW9uKQorQVZBdWRpb1Nl
c3Npb25DYXB0dXJlRGV2aWNlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UoQVZBdWRpb1Nl
c3Npb25Qb3J0RGVzY3JpcHRpb24gKmRldmljZUlucHV0LCBBVkF1ZGlvU2Vzc2lvblBvcnREZXNj
cmlwdGlvbiAqZGVmYXVsdElucHV0KQorICAgIDogQ2FwdHVyZURldmljZShkZXZpY2VJbnB1dC5V
SUQsIENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUsIGRldmljZUlucHV0LnBv
cnROYW1lKQogeworICAgIHNldEVuYWJsZWQodHJ1ZSk7CisgICAgc2V0SXNEZWZhdWx0KGRlZmF1
bHRJbnB1dCAmJiBbZGVmYXVsdElucHV0LlVJRCBpc0VxdWFsVG9TdHJpbmc6ZGV2aWNlSW5wdXQu
VUlEXSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlTWFuYWdlci5oCmluZGV4IDM5OTYxNjg3OWM1MWZhODg0Y2E3OGIzMDhlYWQzZjdmMzc0MzRm
NzAuLmFkYWMzYjA1Y2I1MDQ5ZTE2ZTNhMWVmNmYzODU5MjVhNjU2YThlOGQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNh
cHR1cmVEZXZpY2VNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaApAQCAtMjgsMTAg
KzI4LDEyIEBACiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgUExBVEZPUk0oSU9TX0ZBTUlM
WSkKIAogI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgiCisjaW5jbHVkZSAiR2VuZXJp
Y1Rhc2tRdWV1ZS5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hh
c2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKK09CSkNfQ0xBU1MgQVZBdWRp
b1Nlc3Npb247CiBPQkpDX0NMQVNTIFdlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlz
dGVuZXI7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ4LDE5ICs1MCwyMyBAQCBwdWJsaWM6
CiAgICAgY29uc3QgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBzcGVha2VyRGV2aWNlcygpIGNvbnN0
IHsgcmV0dXJuIG1fc3BlYWtlckRldmljZXM7IH0KICAgICBPcHRpb25hbDxDYXB0dXJlRGV2aWNl
PiBjYXB0dXJlRGV2aWNlV2l0aFBlcnNpc3RlbnRJRChDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBl
LCBjb25zdCBTdHJpbmcmKTsKIAotICAgIFZlY3RvcjxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2U+JiBhdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlcygpOwogICAgIE9wdGlvbmFsPEFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZT4gYXVkaW9TZXNzaW9uRGV2aWNlV2l0aFVJRChjb25zdCBTdHJp
bmcmKTsKKyAgICAKKyAgICB2b2lkIHNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMoKTsKIAog
cHJpdmF0ZToKLSAgICBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgPSBkZWZh
dWx0OworICAgIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIoKTsKICAgICB+QVZB
dWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcigpOwogCiAgICAgdm9pZCByZWZyZXNoQXVk
aW9DYXB0dXJlRGV2aWNlcygpOworICAgIFZlY3RvcjxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2U+JiBhdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlcygpOwogCiAgICAgT3B0aW9uYWw8VmVjdG9y
PENhcHR1cmVEZXZpY2U+PiBtX2RldmljZXM7CiAgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IG1f
c3BlYWtlckRldmljZXM7CiAgICAgT3B0aW9uYWw8VmVjdG9yPEFWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZT4+IG1fYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXM7CiAgICAgUmV0YWluUHRyPFdl
YkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXI+IG1fbGlzdGVuZXI7CisgICAg
UmV0YWluUHRyPEFWQXVkaW9TZXNzaW9uPiBtX2F1eGlsaWFyeVNlc3Npb247CisgICAgR2VuZXJp
Y1Rhc2tRdWV1ZTxUaW1lcj4gbV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlTWFuYWdlci5tbQppbmRleCA0NjA1MGQ5MzgzNGYzYTkzN2ZlZTM3NTU3MzdkZWFhNGUy
YzljMGE1Li44ZDA5YmZkNTc0NzAwN2I4N2Q0ODExNTg4YjJjNjZkMWJlZjcwNTc4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbQpAQCAt
MzEsNDEgKzMxLDQ1IEBACiAjaW1wb3J0ICJBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaCIK
ICNpbXBvcnQgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCIKICNpbXBvcnQgPEFWRm91bmRh
dGlvbi9BVkF1ZGlvU2Vzc2lvbi5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9BVkZvdW5kYXRp
b25TUEkuaD4KKyNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvVmVjdG9y
Lmg+CiAKICNpbXBvcnQgPHBhbC9jb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oPgogCi12b2lk
KiBBdmFpbGFibGVJbnB1dHNDb250ZXh0ID0gJkF2YWlsYWJsZUlucHV0c0NvbnRleHQ7Ci0KIEBp
bnRlcmZhY2UgV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciA6IE5TT2Jq
ZWN0IHsKLSAgICBXVEY6OkZ1bmN0aW9uPHZvaWQoKT4gX2NhbGxiYWNrOworICAgIFdlYkNvcmU6
OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIqIF9jYWxsYmFjazsKIH0KIEBlbmQK
IAogQGltcGxlbWVudGF0aW9uIFdlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVu
ZXIKLS0gKGlkKWluaXRXaXRoQ2FsbGJhY2s6KFdURjo6RnVuY3Rpb248dm9pZCgpPiYmKWNhbGxi
YWNrCistIChpZClpbml0V2l0aENhbGxiYWNrOihXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2VNYW5hZ2VyICopY2FsbGJhY2sgYXVkaW9TZXNzaW9uOihBVkF1ZGlvU2Vzc2lvbiAq
KXNlc3Npb24KIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAg
ICAgICAgcmV0dXJuIG5pbDsKIAotICAgIF9jYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spOwor
ICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2Vs
ZiBzZWxlY3RvcjpAc2VsZWN0b3Iocm91dGVEaWRDaGFuZ2U6KSBuYW1lOlBBTDo6Z2V0X0FWRm91
bmRhdGlvbl9BVkF1ZGlvU2Vzc2lvblJvdXRlQ2hhbmdlTm90aWZpY2F0aW9uKCkgb2JqZWN0OnNl
c3Npb25dOworCisgICAgX2NhbGxiYWNrID0gY2FsbGJhY2s7CisKICAgICByZXR1cm4gc2VsZjsK
IH0KIAogLSAodm9pZClpbnZhbGlkYXRlCiB7CiAgICAgX2NhbGxiYWNrID0gbnVsbHB0cjsKKyAg
ICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNl
bGZdOwogfQogCi0tICh2b2lkKW9ic2VydmVWYWx1ZUZvcktleVBhdGg6KE5TU3RyaW5nICopa2V5
UGF0aCBvZk9iamVjdDooaWQpb2JqZWN0IGNoYW5nZTooTlNEaWN0aW9uYXJ5PE5TS2V5VmFsdWVD
aGFuZ2VLZXksIGlkPiAqKWNoYW5nZSBjb250ZXh0Oih2b2lkICopY29udGV4dAorLSAodm9pZCly
b3V0ZURpZENoYW5nZTooTlNOb3RpZmljYXRpb24gKilub3RpZmljYXRpb24KIHsKLSAgICBVTlVT
RURfUEFSQU0oa2V5UGF0aCk7Ci0gICAgVU5VU0VEX1BBUkFNKG9iamVjdCk7Ci0gICAgVU5VU0VE
X1BBUkFNKGNoYW5nZSk7Ci0gICAgaWYgKGNvbnRleHQgPT0gQXZhaWxhYmxlSW5wdXRzQ29udGV4
dCAmJiBfY2FsbGJhY2spCi0gICAgICAgIF9jYWxsYmFjaygpOworICAgIGlmICghX2NhbGxiYWNr
KQorICAgICAgICByZXR1cm47CisKKyAgICBfY2FsbGJhY2stPnNjaGVkdWxlVXBkYXRlQ2FwdHVy
ZURldmljZXMoKTsKIH0KKwogQGVuZAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC03Niw2ICs4
MCwxOSBAQCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyJiBBVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0bwogICAgIHJldHVybiBtYW5hZ2VyOwogfQog
CitBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2VNYW5hZ2VyKCkKK3sKKyAgICBtX2F1eGlsaWFyeVNlc3Npb24gPSBhZG9wdE5TKFtb
UEFMOjpnZXRBVkF1ZGlvU2Vzc2lvbkNsYXNzKCkgYWxsb2NdIGluaXRBdXhpbGlhcnlTZXNzaW9u
XSk7CisKKyAgICBOU0Vycm9yICplcnJvciA9IG5pbDsKKyAgICBhdXRvIG9wdGlvbnMgPSBBVkF1
ZGlvU2Vzc2lvbkNhdGVnb3J5T3B0aW9uQWxsb3dCbHVldG9vdGggfCBBVkF1ZGlvU2Vzc2lvbkNh
dGVnb3J5T3B0aW9uTWl4V2l0aE90aGVyczsKKyAgICBbbV9hdXhpbGlhcnlTZXNzaW9uIHNldENh
dGVnb3J5OkFWQXVkaW9TZXNzaW9uQ2F0ZWdvcnlQbGF5QW5kUmVjb3JkIG1vZGU6QVZBdWRpb1Nl
c3Npb25Nb2RlVmlkZW9DaGF0IG9wdGlvbnM6b3B0aW9ucyBlcnJvcjomZXJyb3JdOworICAgIGlm
IChlcnJvcikgeworICAgICAgICBMT0dfRVJST1IoIkZhaWxlZCB0byBzZXQgYXVkaW8gc2Vzc2lv
biBjYXRlZ29yeSB3aXRoIGVycm9yOiAlQC4iLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbik7
CisgICAgICAgIHJldHVybjsKKyAgICB9Cit9CisKIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmlj
ZU1hbmFnZXI6On5BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKIHsKICAgICBb
bV9saXN0ZW5lciBpbnZhbGlkYXRlXTsKQEAgLTEwOCw5ICsxMjUsNiBAQCBWZWN0b3I8QVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlPiYgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6YXVkaW9TZQogCiBPcHRpb25hbDxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+IEFWQXVk
aW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlvU2Vzc2lvbkRldmljZVdpdGhVSUQo
Y29uc3QgU3RyaW5nJiBkZXZpY2VJRCkKIHsKLSAgICBpZiAoIW1fYXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZXMpCi0gICAgICAgIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7Ci0KICAgICBm
b3IgKGF1dG8mIGRldmljZSA6IGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzKCkpIHsKICAgICAg
ICAgaWYgKGRldmljZS5wZXJzaXN0ZW50SWQoKSA9PSBkZXZpY2VJRCkKICAgICAgICAgICAgIHJl
dHVybiBkZXZpY2U7CkBAIC0xMTgsMjggKzEzMiw1NyBAQCBPcHRpb25hbDxBVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2U+IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlv
UwogICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiB9CiAKK3ZvaWQgQVZBdWRpb1Nlc3Npb25DYXB0
dXJlRGV2aWNlTWFuYWdlcjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcygpCit7CisgICAg
aWYgKG1fdXBkYXRlRGV2aWNlU3RhdGVRdWV1ZS5oYXNQZW5kaW5nVGFza3MoKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgbV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlLmVucXVldWVUYXNrKFt0aGlz
XSB7CisgICAgICAgIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7CisgICAgfSk7Cit9CisK
IHZvaWQgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaEF1ZGlvQ2Fw
dHVyZURldmljZXMoKQogewotICAgIGlmICghbV9saXN0ZW5lcikgewotICAgICAgICBtX2xpc3Rl
bmVyID0gYWRvcHROUyhbW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIg
YWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6W3RoaXNdIHsKLSAgICAgICAgICAgIHJlZnJlc2hBdWRp
b0NhcHR1cmVEZXZpY2VzKCk7Ci0gICAgICAgIH1dKTsKLSAgICAgICAgW1tQQUw6OmdldEFWQXVk
aW9TZXNzaW9uQ2xhc3MoKSBzaGFyZWRJbnN0YW5jZV0gYWRkT2JzZXJ2ZXI6bV9saXN0ZW5lci5n
ZXQoKSBmb3JLZXlQYXRoOkAiYXZhaWxhYmxlSW5wdXRzIiBvcHRpb25zOjAgY29udGV4dDpBdmFp
bGFibGVJbnB1dHNDb250ZXh0XTsKLSAgICB9CisgICAgaWYgKCFtX2xpc3RlbmVyKQorICAgICAg
ICBtX2xpc3RlbmVyID0gYWRvcHROUyhbW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRz
TGlzdGVuZXIgYWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6dGhpcyBhdWRpb1Nlc3Npb246bV9hdXhp
bGlhcnlTZXNzaW9uLmdldCgpXSk7CisKKyAgICBOU0Vycm9yICplcnJvciA9IG5pbDsKKyAgICBb
bV9hdXhpbGlhcnlTZXNzaW9uIHNldEFjdGl2ZTpZRVMgd2l0aE9wdGlvbnM6MCBlcnJvcjomZXJy
b3JdOworICAgIGlmIChlcnJvcikKKyAgICAgICAgTE9HX0VSUk9SKCJGYWlsZWQgdG8gYWN0aXZh
dGUgYXVkaW8gc2Vzc2lvbiB3aXRoIGVycm9yOiAlQC4iLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlw
dGlvbik7CiAKICAgICBWZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiBuZXdBdWRp
b0RldmljZXM7CiAgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IG5ld0RldmljZXM7Ci0KLSAgICBm
b3IgKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpwb3J0RGVzY3JpcHRpb24gaW4gW1BB
TDo6Z2V0QVZBdWRpb1Nlc3Npb25DbGFzcygpIHNoYXJlZEluc3RhbmNlXS5hdmFpbGFibGVJbnB1
dHMpIHsKLSAgICAgICAgYXV0byBhdWRpb0RldmljZSA9IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURl
dmljZTo6Y3JlYXRlKHBvcnREZXNjcmlwdGlvbik7CisgICAgYXV0byAqZGVmYXVsdElucHV0ID0g
W21fYXV4aWxpYXJ5U2Vzc2lvbiBjdXJyZW50Um91dGVdLmlucHV0cy5maXJzdE9iamVjdDsKKyAg
ICBmb3IgKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpwb3J0RGVzY3JpcHRpb24gaW4g
W21fYXV4aWxpYXJ5U2Vzc2lvbiBhdmFpbGFibGVJbnB1dHNdKSB7CisgICAgICAgIGF1dG8gYXVk
aW9EZXZpY2UgPSBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZShwb3J0RGVzY3Jp
cHRpb24sIGRlZmF1bHRJbnB1dCk7CiAgICAgICAgIG5ld0RldmljZXMuYXBwZW5kKGF1ZGlvRGV2
aWNlKTsKICAgICAgICAgbmV3QXVkaW9EZXZpY2VzLmFwcGVuZChXVEZNb3ZlKGF1ZGlvRGV2aWNl
KSk7CiAgICAgfQogCisgICAgYm9vbCBmaXJzdFRpbWUgPSAhbV9kZXZpY2VzOworICAgIGJvb2wg
aGF2ZURldmljZUNoYW5nZXMgPSAhbV9kZXZpY2VzIHx8IG5ld0F1ZGlvRGV2aWNlcy5zaXplKCkg
IT0gbV9kZXZpY2VzLT5zaXplKCk7CisgICAgaWYgKCFoYXZlRGV2aWNlQ2hhbmdlcykgeworICAg
ICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG5ld0F1ZGlvRGV2aWNlcy5zaXplKCk7ICsraSkg
eworICAgICAgICAgICAgYXV0byYgb2xkU3RhdGUgPSAoKm1fZGV2aWNlcylbaV07CisgICAgICAg
ICAgICBhdXRvJiBuZXdTdGF0ZSA9IG5ld0F1ZGlvRGV2aWNlc1tpXTsKKyAgICAgICAgICAgIGlm
IChuZXdTdGF0ZS50eXBlKCkgIT0gb2xkU3RhdGUudHlwZSgpIHx8IG5ld1N0YXRlLnBlcnNpc3Rl
bnRJZCgpICE9IG9sZFN0YXRlLnBlcnNpc3RlbnRJZCgpIHx8IG5ld1N0YXRlLmVuYWJsZWQoKSAh
PSBvbGRTdGF0ZS5lbmFibGVkKCkgfHwgbmV3U3RhdGUuaXNEZWZhdWx0KCkgIT0gb2xkU3RhdGUu
aXNEZWZhdWx0KCkpCisgICAgICAgICAgICAgICAgaGF2ZURldmljZUNoYW5nZXMgPSB0cnVlOwor
ICAgICAgICB9CisgICAgfQorCisgICAgaWYgKCFoYXZlRGV2aWNlQ2hhbmdlcyAmJiAhZmlyc3RU
aW1lKQorICAgICAgICByZXR1cm47CisKICAgICBtX2F1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2Vz
ID0gV1RGTW92ZShuZXdBdWRpb0RldmljZXMpOworICAgIHN0ZDo6c29ydChuZXdEZXZpY2VzLmJl
Z2luKCksIG5ld0RldmljZXMuZW5kKCksIFtdIChhdXRvJiBmaXJzdCwgYXV0byYgc2Vjb25kKSAt
PiBib29sIHsKKyAgICAgICAgcmV0dXJuIGZpcnN0LmlzRGVmYXVsdCgpICYmICFzZWNvbmQuaXNE
ZWZhdWx0KCk7CisgICAgfSk7CiAgICAgbV9kZXZpY2VzID0gV1RGTW92ZShuZXdEZXZpY2VzKTsK
IAotICAgIGRldmljZUNoYW5nZWQoKTsKKyAgICBpZiAoaGF2ZURldmljZUNoYW5nZXMgJiYgIWZp
cnN0VGltZSkKKyAgICAgICAgZGV2aWNlQ2hhbmdlZCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9t
YWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5jcHAKaW5kZXggZjVlYjY4MGU0
ZDkwM2MyZjc3N2MwZGY0YzZmYTdlNjliYmU5M2MzZi4uOTgwODQ1MzU2ZWNiYjIwMzhlNzJhNjdk
MmUxMzFmZTRjZTAxZjBlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNwcApA
QCAtMzgsNyArMzgsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNwYWNlIFBB
TDsKIAotc3RhdGljIGJvb2wgZ2V0RGV2aWNlSW5mbyh1aW50MzJfdCBkZXZpY2VJRCwgU3RyaW5n
JiBwZXJzaXN0ZW50SUQsIFN0cmluZyYgbGFiZWwpCitzdGF0aWMgYm9vbCBnZXREZXZpY2VJbmZv
KHVpbnQzMl90IGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlIHR5cGUsIFN0cmlu
ZyYgcGVyc2lzdGVudElELCBTdHJpbmcmIGxhYmVsKQogewogICAgIENGU3RyaW5nUmVmIHVuaXF1
ZUlEOwogICAgIEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVkaW9EZXZp
Y2VQcm9wZXJ0eURldmljZVVJRCwga0F1ZGlvRGV2aWNlUHJvcGVydHlTY29wZUlucHV0LCBrQXVk
aW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKQEAgLTUxLDE0ICs1MSwzMCBAQCBzdGF0
aWMgYm9vbCBnZXREZXZpY2VJbmZvKHVpbnQzMl90IGRldmljZUlELCBTdHJpbmcmIHBlcnNpc3Rl
bnRJRCwgU3RyaW5nJiBsYWJlbAogICAgIHBlcnNpc3RlbnRJRCA9IHVuaXF1ZUlEOwogICAgIENG
UmVsZWFzZSh1bmlxdWVJRCk7CiAKLSAgICBDRlN0cmluZ1JlZiBsb2NhbGl6ZWROYW1lOwotICAg
IGFkZHJlc3MgPSB7IGtBdWRpb09iamVjdFByb3BlcnR5TmFtZSwga0F1ZGlvT2JqZWN0UHJvcGVy
dHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07Ci0gICAg
ZGF0YVNpemUgPSBzaXplb2YobG9jYWxpemVkTmFtZSk7Ci0gICAgZXJyID0gQXVkaW9PYmplY3RH
ZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nhc3Q8VUludDMyPihkZXZpY2VJRCksICZhZGRyZXNzLCAw
LCBudWxscHRyLCAmZGF0YVNpemUsICZsb2NhbGl6ZWROYW1lKTsKKyAgICBDRlN0cmluZ1JlZiBs
b2NhbGl6ZWROYW1lID0gbnVsbHB0cjsKKyAgICBBdWRpb09iamVjdFByb3BlcnR5U2NvcGUgc2Nv
cGUgPSB0eXBlID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUgPyBrQXVk
aW9EZXZpY2VQcm9wZXJ0eVNjb3BlSW5wdXQgOiBrQXVkaW9EZXZpY2VQcm9wZXJ0eVNjb3BlT3V0
cHV0OworICAgIGFkZHJlc3MgPSB7IGtBdWRpb0RldmljZVByb3BlcnR5RGF0YVNvdXJjZSwgc2Nv
cGUsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OworICAgIHVpbnQzMl90IHNv
dXJjZUlEOworICAgIGRhdGFTaXplID0gc2l6ZW9mKHNvdXJjZUlEKTsKKyAgICBlcnIgPSBBdWRp
b09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0aWNfY2FzdDxVSW50MzI+KGRldmljZUlEKSwgJmFk
ZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJnNvdXJjZUlEKTsKKyAgICBpZiAoIWVycikg
eworICAgICAgICBBdWRpb1ZhbHVlVHJhbnNsYXRpb24gdHJhbnNsYXRpb24gPSB7ICZkZXZpY2VJ
RCwgc2l6ZW9mKGRldmljZUlEKSwgJmxvY2FsaXplZE5hbWUsIHNpemVvZihsb2NhbGl6ZWROYW1l
KSB9OworICAgICAgICBhZGRyZXNzID0geyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURhdGFTb3VyY2VO
YW1lRm9ySURDRlN0cmluZywgc2NvcGUsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3Rl
ciB9OworICAgICAgICBkYXRhU2l6ZSA9IHNpemVvZih0cmFuc2xhdGlvbik7CisgICAgICAgIGVy
ciA9IEF1ZGlvT2JqZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQzMj4oZGV2aWNl
SUQpLCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmdHJhbnNsYXRpb24pOworICAg
IH0KKworICAgIGlmIChlcnIgfHwgIWxvY2FsaXplZE5hbWUgfHwgIUNGU3RyaW5nR2V0TGVuZ3Ro
KGxvY2FsaXplZE5hbWUpKSB7CisgICAgICAgIGFkZHJlc3MgPSB7IGtBdWRpb09iamVjdFByb3Bl
cnR5TmFtZSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJv
cGVydHlFbGVtZW50TWFzdGVyIH07CisgICAgICAgIGRhdGFTaXplID0gc2l6ZW9mKGxvY2FsaXpl
ZE5hbWUpOworICAgICAgICBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0aWNf
Y2FzdDxVSW50MzI+KGRldmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwg
JmxvY2FsaXplZE5hbWUpOworICAgIH0KKwogICAgIGlmIChlcnIpIHsKICAgICAgICAgUkVMRUFT
RV9MT0dfRVJST1IoV2ViUlRDLCAiQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Z2V0RGV2aWNlSW5m
byBmYWlsZWQgdG8gZ2V0IGRldmljZSBuYW1lIHdpdGggZXJyb3IgJWQgKCUuNHMpIiwgKGludCll
cnIsIChjaGFyKikmZXJyKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKwogICAgIGxh
YmVsID0gbG9jYWxpemVkTmFtZTsKICAgICBDRlJlbGVhc2UobG9jYWxpemVkTmFtZSk7CiAKQEAg
LTcwLDcgKzg2LDcgQEAgT3B0aW9uYWw8Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gQ29yZUF1ZGlv
Q2FwdHVyZURldmljZTo6Y3JlYXRlKHVpbnQzMl90IGRldmljZUkKICAgICBBU1NFUlQodHlwZSA9
PSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lIHx8IHR5cGUgPT0gQ2FwdHVy
ZURldmljZTo6RGV2aWNlVHlwZTo6U3BlYWtlcik7CiAgICAgU3RyaW5nIHBlcnNpc3RlbnRJRDsK
ICAgICBTdHJpbmcgbGFiZWw7Ci0gICAgaWYgKCFnZXREZXZpY2VJbmZvKGRldmljZUlELCBwZXJz
aXN0ZW50SUQsIGxhYmVsKSkKKyAgICBpZiAoIWdldERldmljZUluZm8oZGV2aWNlSUQsIHR5cGUs
IHBlcnNpc3RlbnRJRCwgbGFiZWwpKQogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCiAg
ICAgcmV0dXJuIENvcmVBdWRpb0NhcHR1cmVEZXZpY2UoZGV2aWNlSUQsIHBlcnNpc3RlbnRJRCwg
dHlwZSwgbGFiZWwsIGdyb3VwSUQuaXNOdWxsKCkgPyBwZXJzaXN0ZW50SUQgOiBncm91cElEKTsK
QEAgLTgxLDYgKzk3LDcgQEAgQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Q29yZUF1ZGlvQ2FwdHVy
ZURldmljZSh1aW50MzJfdCBkZXZpY2VJRCwgY29uc3QgU3RyaW5nJgogICAgICwgbV9kZXZpY2VJ
RChkZXZpY2VJRCkKIHsKICAgICBzZXRFbmFibGVkKGlzQWxpdmUoKSk7CisgICAgc2V0SXNEZWZh
dWx0KGRlZmF1bHREZXZpY2UoKSk7CiB9CiAKIFZlY3RvcjxBdWRpb0RldmljZUlEPiBDb3JlQXVk
aW9DYXB0dXJlRGV2aWNlOjpyZWxhdGVkQXVkaW9EZXZpY2VJRHMoQXVkaW9EZXZpY2VJRCBkZXZp
Y2VJRCkKQEAgLTEyNSw2ICsxNDIsMTcgQEAgYm9vbCBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpp
c0FsaXZlKCkKICAgICByZXR1cm4gc3RhdGU7CiB9CiAKK2Jvb2wgQ29yZUF1ZGlvQ2FwdHVyZURl
dmljZTo6ZGVmYXVsdERldmljZSgpCit7CisgICAgVUludDMyIHByb3BlcnR5ID0gdHlwZSgpID09
IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUgPyBrQXVkaW9IYXJkd2FyZVBy
b3BlcnR5RGVmYXVsdElucHV0RGV2aWNlIDoga0F1ZGlvSGFyZHdhcmVQcm9wZXJ0eURlZmF1bHRP
dXRwdXREZXZpY2U7CisgICAgQXVkaW9PYmplY3RQcm9wZXJ0eUFkZHJlc3MgYWRkcmVzcyB7IHBy
b3BlcnR5LCBrQXVkaW9PYmplY3RQcm9wZXJ0eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9w
ZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKKyAgICBBdWRpb0RldmljZUlEIGRldmljZUlEID0ga0F1ZGlv
RGV2aWNlVW5rbm93bjsKKyAgICBVSW50MzIgcHJvcGVydHlTaXplID0gc2l6ZW9mKGRldmljZUlE
KTsKKworICAgIGF1dG8gZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2Jq
ZWN0U3lzdGVtT2JqZWN0LCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJnByb3BlcnR5U2l6ZSwgJmRl
dmljZUlEKTsKKyAgICByZXR1cm4gIWVyciAmJiBkZXZpY2VJRCA9PSBtX2RldmljZUlEOworfQor
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFN
KSAmJiBQTEFURk9STShNQUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaAppbmRleCAy
Njg3YmZjNjNmNjYzY2M2MjFiMmVkZTQzZjRhYWU5MjY4Y2U3YTVjLi4yOTgwZGYyMTY4NWRlMTdh
MzAyZWNlNTMzMWJkOGRmODVmYmRlOGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNl
LmgKQEAgLTQ5LDYgKzQ5LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBDb3JlQXVkaW9DYXB0
dXJlRGV2aWNlKHVpbnQzMl90LCBjb25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgRGV2aWNlVHlw
ZSwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3QgU3RyaW5nJiBncm91cElEKTsKICAgICBib29s
IGlzQWxpdmUoKTsKKyAgICBib29sIGRlZmF1bHREZXZpY2UoKTsKIAogICAgIHVpbnQzMl90IG1f
ZGV2aWNlSUQgeyAwIH07CiAgICAgUmV0YWluUHRyPENNQ2xvY2tSZWY+IG1fZGV2aWNlQ2xvY2s7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29y
ZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcAppbmRleCA3
MDBlZWQ5ZWQ4YWYxZjk3MDVhZTQ2N2Q2OGViNmU2MTNmYjAzMjAwLi45ZmNmNjY3MmE3ODZkMTU5
OThhN2UwZWJkZWZmZWQwOGFlOTliOWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0
dXJlRGV2aWNlTWFuYWdlci5jcHAKQEAgLTEyOCwyOCArMTI4LDE0IEBAIHN0YXRpYyBib29sIGlz
VmFsaWRDYXB0dXJlRGV2aWNlKGNvbnN0IENvcmVBdWRpb0NhcHR1cmVEZXZpY2UmIGRldmljZSkK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotc3RhdGljIGlubGluZSBPcHRpb25hbDxDb3JlQXVkaW9D
YXB0dXJlRGV2aWNlPiBnZXREZWZhdWx0Q2FwdHVyZUlucHV0RGV2aWNlKCkKK3ZvaWQgQ29yZUF1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMoKQog
ewotICAgIEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVkaW9IYXJkd2Fy
ZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlLCBrQXVkaW9PYmplY3RQcm9wZXJ0eVNjb3BlR2xv
YmFsLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKLSAgICBVSW50MzIgcHJv
cGVydHlTaXplID0gc2l6ZW9mKEF1ZGlvRGV2aWNlSUQpOwotICAgIEF1ZGlvRGV2aWNlSUQgZGV2
aWNlSUQgPSBrQXVkaW9EZXZpY2VVbmtub3duOwotICAgIGF1dG8gZXJyID0gQXVkaW9PYmplY3RH
ZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAmYWRkcmVzcywgMCwgbnVs
bHB0ciwgJnByb3BlcnR5U2l6ZSwgJmRldmljZUlEKTsKLQotICAgIGlmIChlcnIgIT0gbm9FcnIg
fHwgZGV2aWNlSUQgPT0ga0F1ZGlvRGV2aWNlVW5rbm93bikKLSAgICAgICAgcmV0dXJuIHsgfTsK
LSAgICByZXR1cm4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRlKGRldmljZUlELCBDYXB0
dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lLCB7IH0pOwotfQotCi1zdGF0aWMgaW5s
aW5lIE9wdGlvbmFsPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGdldERlZmF1bHRDYXB0dXJlT3V0
cHV0RGV2aWNlKCkKLXsKLSAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzIHsg
a0F1ZGlvSGFyZHdhcmVQcm9wZXJ0eURlZmF1bHRPdXRwdXREZXZpY2UsIGtBdWRpb09iamVjdFBy
b3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9Owot
ICAgIFVJbnQzMiBwcm9wZXJ0eVNpemUgPSBzaXplb2YoQXVkaW9EZXZpY2VJRCk7Ci0gICAgQXVk
aW9EZXZpY2VJRCBkZXZpY2VJRCA9IGtBdWRpb0RldmljZVVua25vd247Ci0gICAgYXV0byBlcnIg
PSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShrQXVkaW9PYmplY3RTeXN0ZW1PYmplY3QsICZh
ZGRyZXNzLCAwLCBudWxscHRyLCAmcHJvcGVydHlTaXplLCAmZGV2aWNlSUQpOworICAgIGlmICht
X3VwZGF0ZURldmljZVN0YXRlUXVldWUuaGFzUGVuZGluZ1Rhc2tzKCkpCisgICAgICAgIHJldHVy
bjsKIAotICAgIGlmIChlcnIgIT0gbm9FcnIgfHwgZGV2aWNlSUQgPT0ga0F1ZGlvRGV2aWNlVW5r
bm93bikKLSAgICAgICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4gQ29yZUF1ZGlvQ2FwdHVyZURl
dmljZTo6Y3JlYXRlKGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpTcGVha2Vy
LCB7IH0pOworICAgIG1fdXBkYXRlRGV2aWNlU3RhdGVRdWV1ZS5lbnF1ZXVlVGFzayhbdGhpc10g
eworICAgICAgICByZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNIYXZl
Q2hhbmdlZDo6Tm90aWZ5KTsKKyAgICB9KTsKIH0KIAogVmVjdG9yPENvcmVBdWRpb0NhcHR1cmVE
ZXZpY2U+JiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29yZUF1ZGlvQ2FwdHVyZURl
dmljZXMoKQpAQCAtMTY1LDcgKzE1MSw3IEBAIFZlY3RvcjxDb3JlQXVkaW9DYXB0dXJlRGV2aWNl
PiYgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OmNvcmVBdWRpb0NhcHR1cmVECiAgICAg
ICAgICAgICAgICAgbm90aWZ5IHw9IChwcm9wZXJ0aWVzW2ldLm1TZWxlY3RvciA9PSBrQXVkaW9I
YXJkd2FyZVByb3BlcnR5RGV2aWNlcyB8fCBwcm9wZXJ0aWVzW2ldLm1TZWxlY3RvciA9PSBrQXVk
aW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlIHx8IHByb3BlcnRpZXNbaV0ubVNl
bGVjdG9yID09IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlEZWZhdWx0T3V0cHV0RGV2aWNlKTsKIAog
ICAgICAgICAgICAgaWYgKG5vdGlmeSkKLSAgICAgICAgICAgICAgICBDb3JlQXVkaW9DYXB0dXJl
RGV2aWNlTWFuYWdlcjo6c2luZ2xldG9uKCkucmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoTm90
aWZ5SWZEZXZpY2VzSGF2ZUNoYW5nZWQ6Ok5vdGlmeSk7CisgICAgICAgICAgICAgICAgQ29yZUF1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNpbmdsZXRvbigpLnNjaGVkdWxlVXBkYXRlQ2FwdHVy
ZURldmljZXMoKTsKICAgICAgICAgfTsKIAogICAgICAgICBBdWRpb09iamVjdFByb3BlcnR5QWRk
cmVzcyBhZGRyZXNzID0geyBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGV2aWNlcywga0F1ZGlvT2Jq
ZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVy
IH07CkBAIC0yMjMsMTAgKzIwOSw2IEBAIHN0YXRpYyBpbmxpbmUgVmVjdG9yPENvcmVBdWRpb0Nh
cHR1cmVEZXZpY2U+IGNvbXB1dGVBdWRpb0RldmljZUxpc3QoKQogCiAgICAgVmVjdG9yPENvcmVB
dWRpb0NhcHR1cmVEZXZpY2U+IGF1ZGlvRGV2aWNlczsKIAotICAgIGF1dG8gZGVmYXVsdElucHV0
RGV2aWNlID0gZ2V0RGVmYXVsdENhcHR1cmVJbnB1dERldmljZSgpOwotICAgIGlmIChkZWZhdWx0
SW5wdXREZXZpY2UpCi0gICAgICAgIGF1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92ZSgqZGVmYXVs
dElucHV0RGV2aWNlKSk7Ci0KICAgICAvLyBNaWNyb3Bob25lcwogICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpIDwgZGV2aWNlQ291bnQ7IGkrKykgewogICAgICAgICBBdWRpb09iamVjdElEIGRldmlj
ZUlEID0gZGV2aWNlSURzW2ldOwpAQCAtMjM5LDEwICsyMjEsNiBAQCBzdGF0aWMgaW5saW5lIFZl
Y3RvcjxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBjb21wdXRlQXVkaW9EZXZpY2VMaXN0KCkKICAg
ICAgICAgICAgIGF1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92ZShtaWNyb3Bob25lRGV2aWNlLnZh
bHVlKCkpKTsKICAgICB9CiAKLSAgICBhdXRvIGRlZmF1bHRPdXRwdXREZXZpY2UgPSBnZXREZWZh
dWx0Q2FwdHVyZU91dHB1dERldmljZSgpOwotICAgIGlmIChkZWZhdWx0T3V0cHV0RGV2aWNlKQot
ICAgICAgICBhdWRpb0RldmljZXMuYXBwZW5kKFdURk1vdmUoKmRlZmF1bHRPdXRwdXREZXZpY2Up
KTsKLQogICAgIC8vIFNwZWFrZXJzCiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBkZXZpY2VD
b3VudDsgaSsrKSB7CiAgICAgICAgIEF1ZGlvT2JqZWN0SUQgZGV2aWNlSUQgPSBkZXZpY2VJRHNb
aV07CkBAIC0yODMsMzEgKzI2MSwzNSBAQCB2b2lkIENvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNIYQogCiAgICAg
YXV0byBhdWRpb0RldmljZXMgPSBjb21wdXRlQXVkaW9EZXZpY2VMaXN0KCk7CiAgICAgYm9vbCBo
YXZlRGV2aWNlQ2hhbmdlcyA9IGF1ZGlvRGV2aWNlcy5zaXplKCkgIT0gbV9jb3JlQXVkaW9DYXB0
dXJlRGV2aWNlcy5zaXplKCk7CisgICAgYm9vbCBkZWZhdWx0Q2hhbmdlZCA9IGZhbHNlOwogICAg
IGlmICghaGF2ZURldmljZUNoYW5nZXMpIHsKICAgICAgICAgZm9yIChzaXplX3QgY3B0ciA9IDA7
IGNwdHIgPCBhdWRpb0RldmljZXMuc2l6ZSgpOyArK2NwdHIpIHsKLSAgICAgICAgICAgIGlmIChh
dWRpb0RldmljZXNbY3B0cl0udHlwZSgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0
cl0udHlwZSgpIHx8IGF1ZGlvRGV2aWNlc1tjcHRyXS5kZXZpY2VJRCgpICE9IG1fY29yZUF1ZGlv
Q2FwdHVyZURldmljZXNbY3B0cl0uZGV2aWNlSUQoKSB8fCBhdWRpb0RldmljZXNbY3B0cl0uZW5h
YmxlZCgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0uZW5hYmxlZCgpKSB7Cisg
ICAgICAgICAgICBhdXRvJiBvbGRTdGF0ZSA9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0
cl07CisgICAgICAgICAgICBhdXRvJiBuZXdTdGF0ZSA9IGF1ZGlvRGV2aWNlc1tjcHRyXTsKKyAg
ICAgICAgICAgIGlmIChuZXdTdGF0ZS50eXBlKCkgIT0gb2xkU3RhdGUudHlwZSgpIHx8IG5ld1N0
YXRlLmRldmljZUlEKCkgIT0gb2xkU3RhdGUuZGV2aWNlSUQoKSB8fCBuZXdTdGF0ZS5pc0RlZmF1
bHQoKSAhPSBvbGRTdGF0ZS5pc0RlZmF1bHQoKSB8fCBuZXdTdGF0ZS5lbmFibGVkKCkgIT0gb2xk
U3RhdGUuZW5hYmxlZCgpKQogICAgICAgICAgICAgICAgIGhhdmVEZXZpY2VDaGFuZ2VzID0gdHJ1
ZTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlm
IChuZXdTdGF0ZS5pc0RlZmF1bHQoKSAhPSBvbGRTdGF0ZS5pc0RlZmF1bHQoKSkKKyAgICAgICAg
ICAgICAgICBkZWZhdWx0Q2hhbmdlZCA9IHRydWU7CiAgICAgICAgIH0KICAgICB9Ci0gICAgaWYg
KCFoYXZlRGV2aWNlQ2hhbmdlcykKKyAgICBpZiAoIWRlZmF1bHRDaGFuZ2VkICYmICFoYXZlRGV2
aWNlQ2hhbmdlcykKICAgICAgICAgcmV0dXJuOwogCisgICAgc3RkOjpzb3J0KGF1ZGlvRGV2aWNl
cy5iZWdpbigpLCBhdWRpb0RldmljZXMuZW5kKCksIFtdIChhdXRvJiBmaXJzdCwgYXV0byYgc2Vj
b25kKSAtPiBib29sIHsKKyAgICAgICAgcmV0dXJuIGZpcnN0LmlzRGVmYXVsdCgpICYmICFzZWNv
bmQuaXNEZWZhdWx0KCk7CisgICAgfSk7CiAgICAgbV9jb3JlQXVkaW9DYXB0dXJlRGV2aWNlcyA9
IFdURk1vdmUoYXVkaW9EZXZpY2VzKTsKIAogICAgIG1fY2FwdHVyZURldmljZXMuY2xlYXIoKTsK
ICAgICBtX3NwZWFrZXJEZXZpY2VzLmNsZWFyKCk7CiAgICAgZm9yIChhdXRvJiBkZXZpY2UgOiBt
X2NvcmVBdWRpb0NhcHR1cmVEZXZpY2VzKSB7Ci0gICAgICAgIENhcHR1cmVEZXZpY2UgY2FwdHVy
ZURldmljZSB7IGRldmljZS5wZXJzaXN0ZW50SWQoKSwgZGV2aWNlLnR5cGUoKSwgZGV2aWNlLmxh
YmVsKCksIGRldmljZS5ncm91cElkKCkgfTsKLSAgICAgICAgY2FwdHVyZURldmljZS5zZXRFbmFi
bGVkKGRldmljZS5lbmFibGVkKCkpOwogICAgICAgICBpZiAoZGV2aWNlLnR5cGUoKSA9PSBDYXB0
dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lKQotICAgICAgICAgICAgbV9jYXB0dXJl
RGV2aWNlcy5hcHBlbmQoV1RGTW92ZShjYXB0dXJlRGV2aWNlKSk7CisgICAgICAgICAgICBtX2Nh
cHR1cmVEZXZpY2VzLmFwcGVuZChkZXZpY2UpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBt
X3NwZWFrZXJEZXZpY2VzLmFwcGVuZChXVEZNb3ZlKGNhcHR1cmVEZXZpY2UpKTsKKyAgICAgICAg
ICAgIG1fc3BlYWtlckRldmljZXMuYXBwZW5kKGRldmljZSk7CiAgICAgfQogCi0gICAgaWYgKG5v
dGlmeSA9PSBOb3RpZnlJZkRldmljZXNIYXZlQ2hhbmdlZDo6Tm90aWZ5KSB7CisgICAgaWYgKGhh
dmVEZXZpY2VDaGFuZ2VzICYmIG5vdGlmeSA9PSBOb3RpZnlJZkRldmljZXNIYXZlQ2hhbmdlZDo6
Tm90aWZ5KSB7CiAgICAgICAgIGRldmljZUNoYW5nZWQoKTsKICAgICAgICAgQ29yZUF1ZGlvQ2Fw
dHVyZVNvdXJjZUZhY3Rvcnk6OnNpbmdsZXRvbigpLmRldmljZXNDaGFuZ2VkKG1fY2FwdHVyZURl
dmljZXMpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2Vy
LmgKaW5kZXggNWU5NjYyYmY0Mjc1OWI2ZTVjZTI5OWQ1MzQ1ZGNmYjM1NWFhYjM0MS4uZjBiMjFh
NGFiNTFhYTVlNTFhODRjNzA1ODc2YzBhY2Q0OTBjYzI3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUg
IkNhcHR1cmVEZXZpY2UuaCIKICNpbmNsdWRlICJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIgorI2lu
Y2x1ZGUgIkdlbmVyaWNUYXNrUXVldWUuaCIKICNpbmNsdWRlIDxDb3JlQXVkaW8vQ29yZUF1ZGlv
Lmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBA
IC01NywxMCArNTgsMTIgQEAgcHJpdmF0ZToKIAogICAgIGVudW0gY2xhc3MgTm90aWZ5SWZEZXZp
Y2VzSGF2ZUNoYW5nZWQgeyBOb3RpZnksIERvTm90Tm90aWZ5IH07CiAgICAgdm9pZCByZWZyZXNo
QXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNIYXZlQ2hhbmdlZCk7CisgICAgdm9p
ZCBzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCk7CiAKICAgICBWZWN0b3I8Q2FwdHVyZURl
dmljZT4gbV9jYXB0dXJlRGV2aWNlczsKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9zcGVh
a2VyRGV2aWNlczsKICAgICBWZWN0b3I8Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gbV9jb3JlQXVk
aW9DYXB0dXJlRGV2aWNlczsKKyAgICBHZW5lcmljVGFza1F1ZXVlPFRpbWVyPiBtX3VwZGF0ZURl
dmljZVN0YXRlUXVldWU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>
<flag name="commit-queue"
          id="430348"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413713</attachid>
            <date>2020-11-10 10:12:35 -0800</date>
            <delta_ts>2020-11-10 12:41:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211192-20201110101234.patch</filename>
            <type>text/plain</type>
            <size>30847</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTcxYzRkMjY1MWZhYTNi
NzA2MWYyYzM1ODA3YmQ1ZGM5MjM5MWMxNS4uZGUwOWRiMWRmNTNjMmEzNmJmYjFmNjg5Y2U4ZDQ4
NmU5ZmFlNjUzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYzIEBACisyMDIwLTExLTEwICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFVTQiBtaWNyb3Bo
b25lIG5vdCByZWNvZ25pemVkIGlPUyBTYWZhcmkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTE5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjI2
MDczMTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGVzdGluZyByZXF1aXJlcyBoYXJkd2FyZSwgdGVzdGVkIG1hbnVhbGx5LgorCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oOiBBZGQgY29uY2VwdCBvZiBkZWZh
dWx0IGRldmljZS4KKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmlzRGVmYXVsdCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjpzZXRJc0RlZmF1bHQpOgor
ICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmRlY29kZSk6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmg6IERvbid0IHJldGFp
biBwb3J0CisgICAgICAgIGRlc2NyaXB0aW9uLCBpdCBpcyBuZXZlciB1c2VkLgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW06
CisgICAgICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZSk6
IEFkZCBkZWZhdWx0IGlucHV0IHBhcmFtZXRlci4KKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKTogU2V0IGVu
YWJsZWQKKyAgICAgICAgYW5kIGRlZmF1bHQgYXR0cmlidXRlcy4KKworICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZU1hbmFnZXIubW06CisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxl
SW5wdXRzTGlzdGVuZXIgaW5pdFdpdGhDYWxsYmFjazphdWRpb1Nlc3Npb246XSk6IFRha2UKKyAg
ICAgICAgcGFyZW50IG9iamVjdCBhbmQgYXVkaW8gc2Vzc2lvbi4gTGlzdGVuIGZvciBzZXNzaW9u
IHJvdXRlIGNoYW5nZSBub3RpZmljYXRpb24uCisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9u
QXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgaW52YWxpZGF0ZV0pOgorICAgICAgICAoLVtXZWJBVkF1
ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyIHJvdXRlRGlkQ2hhbmdlOl0pOgorICAg
ICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6QVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcik6CisgICAgICAgIEFsbG9jYXRlIGFuZCB1c2Ug
YW4gYXV4aWxpYXJ5IGF1ZGlvIHNlc3Npb24gYmVjYXVzZSBpdCBpc24ndCBwb3NzaWJsZSB0byBl
bnVtZXJhdGUKKyAgICAgICAgYWxsIGF1ZGlvIGlucHV0cyB3aXRob3V0IG9uZS4KKyAgICAgICAg
KFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlvU2Vzc2lv
bkRldmljZVdpdGhVSUQpOiBObyBuZWVkCisgICAgICAgIHRvIGNhbGwgcmVmcmVzaEF1ZGlvQ2Fw
dHVyZURldmljZXMsIGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzIGRvZXMgaXQgaWYgbmVjZXNz
YXJ5LgorICAgICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcyk6IE5ldywKKyAgICAgICAgcmVmcmVzaCBk
ZXZpY2VzIG9uIGEgdGFzayBxdWV1ZSBiZWNhdXNlIHdlIGZyZXF1ZW50bHkgZ2V0IG1vcmUgdGhh
biBvbmUgbm90aWZpY2F0aW9uCisgICAgICAgIHdoZW4gYSByb3V0ZSBjaGFuZ2VzLgorICAgICAg
ICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaEF1
ZGlvQ2FwdHVyZURldmljZXMpOiBTb3J0IGRldmljZXMKKyAgICAgICAgc28gdGhlIGRlZmF1bHQg
aXMgYWx3YXlzIGZpcnN0LiBPbmx5IGNhbGwgZGV2aWNlQ2hhbmdlZCB3aGVuIHNvbWV0aGluZyBh
Y3R1YWxseSBjaGFuZ2VzLgorICAgICAgICAoLVtXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlu
cHV0c0xpc3RlbmVyIGluaXRXaXRoQ2FsbGJhY2s6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dl
YkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgb2JzZXJ2ZVZhbHVlRm9yS2V5
UGF0aDpvZk9iamVjdDpjaGFuZ2U6Y29udGV4dDpdKTogRGVsZXRlZC4KKworICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmdldERldmljZUluZm8pOiBEZWFsIHdpdGggaW5wdXQgYW5kIG91dHB1dCBk
ZXZpY2VzLiBUcmFuc2xhdGUgdGhlIGRhdGEKKyAgICAgICAgc291cmNlIG5hbWUgaWYgcG9zc2li
bGUuCisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Q29yZUF1ZGlvQ2FwdHVy
ZURldmljZSk6IFNldCBuZXcgYGRlZmF1bHRgIGF0dHJpYnV0ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmRlZmF1bHREZXZpY2UpOiBOZXcuCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaDoKKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcyk6IE5ldywgY29hbGVzY2UKKyAgICAgICAg
Y2FsbHMgdG8gcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMuCisgICAgICAgIChXZWJDb3JlOjpD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29yZUF1ZGlvQ2FwdHVyZURldmljZXMpOiAK
KyAgICAgICAgKFdlYkNvcmU6OmNvbXB1dGVBdWRpb0RldmljZUxpc3QpOiBObyBuZWVkIHRvIGNo
ZWNrIGZvciB0aGUgZGVmYXVsdCBkZXZpY2UgZXhwbGljaXRseS4KKyAgICAgICAgKFdlYkNvcmU6
OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNl
cyk6CisgICAgICAgIChXZWJDb3JlOjpnZXREZWZhdWx0Q2FwdHVyZUlucHV0RGV2aWNlKTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmdldERlZmF1bHRDYXB0dXJlT3V0cHV0RGV2aWNlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2Fw
dHVyZURldmljZU1hbmFnZXIuaDoKKwogMjAyMC0xMS0wNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCBidWlsZCBhZnRlciByMjY5NDM1
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwppbmRleCBjOTQ2ZjA0YmFmOTYwN2UwOTE1NWE5MGJhOTZhN2M5YjAy
NmZmY2ZkLi4xYTAxMjRhMzc4MjJiOGQyYzFiZjY3YmQ1ZmVkNGM3M2ZmMmY4NGYwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BB
TC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMS0xMCAgRXJpYyBDYXJsc29uICA8
ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBVU0IgbWljcm9waG9uZSBub3QgcmVj
b2duaXplZCBpT1MgU2FmYXJpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMTExOTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNjA3MzEzPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9j
b2NvYS9BVkZvdW5kYXRpb25TUEkuaDogRGVjbGFyZSArW0FWQXVkaW9TZXNzaW9uIGluaXRBdXhp
bGlhcnlTZXNzaW9uXS4KKwogMjAyMC0xMS0wNCAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIFdlYktpdCBzaG91bGQgcmVtb3ZlIHVudXNlZCBkZWJ1ZyB2YXJp
YW50IHN1cHBvcnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29h
L0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZG
b3VuZGF0aW9uU1BJLmgKaW5kZXggZWM2OGI3OGMyNDQ4ZDhjYzllYTUzMTNlYjQ1MmEyZDYyYjU5
MDE4YS4uNTIzOTAxM2IwZTEwZWRhMzlhYzI3Y2UyYTkxZDVlYzQ0ZDEyN2E5YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAg
LTM1NCwxMyArMzU0LDE4IEBAIE5TX0FTU1VNRV9OT05OVUxMX0VORAogQGVuZAogI2VuZGlmCiAK
LSNpZiAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykgJiYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYg
IVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKSAmJiAhUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CisjaWYgIVVTRShBUFBMRV9JTlRFUk5BTF9TREspICYmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAj
aW1wb3J0IDxBVkZvdW5kYXRpb24vQVZBdWRpb1Nlc3Npb24uaD4KIAogTlNfQVNTVU1FX05PTk5V
TExfQkVHSU4KIAogQGludGVyZmFjZSBBVkF1ZGlvU2Vzc2lvbiAoQVZBdWRpb1Nlc3Npb25Qcml2
YXRlKQorI2lmICFQTEFURk9STShNQUNDQVRBTFlTVCkKKy0gKGluc3RhbmNldHlwZSlpbml0QXV4
aWxpYXJ5U2Vzc2lvbjsKKyNlbmRpZgorI2lmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZP
Uk0oQVBQTEVUVikKIEBwcm9wZXJ0eSAocmVhZG9ubHkpIE5TU3RyaW5nKiByb3V0aW5nQ29udGV4
dFVJRDsKKyNlbmRpZgogQGVuZAogCiBOU19BU1NVTUVfTk9OTlVMTF9FTkQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2UuaAppbmRleCA0
YTQ4YTk0M2E2ZTM1NmJiYTQ4NzVjMjRjNTU5M2ZlOTZjNDM5YjcyLi41NGU4YWFjZDRlNjIzNWQ4
ZTRlOTJmMzQzNGNhODkyNGJlZjQ5YjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oCkBAIC02Myw2ICs2Myw5IEBAIHB1Ymxp
YzoKICAgICBib29sIGVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2VuYWJsZWQ7IH0KICAgICB2
b2lkIHNldEVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZW5hYmxlZCA9IGVuYWJsZWQ7IH0KIAor
ICAgIGJvb2wgaXNEZWZhdWx0KCkgY29uc3QgeyByZXR1cm4gbV9kZWZhdWx0OyB9CisgICAgdm9p
ZCBzZXRJc0RlZmF1bHQoYm9vbCBpc0RlZmF1bHQpIHsgbV9kZWZhdWx0ID0gaXNEZWZhdWx0OyB9
CisKICAgICBleHBsaWNpdCBvcGVyYXRvciBib29sKCkgY29uc3QgeyByZXR1cm4gbV90eXBlICE9
IERldmljZVR5cGU6OlVua25vd247IH0KIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCkBAIC03
Myw2ICs3Niw3IEBAIHB1YmxpYzoKICAgICAgICAgZW5jb2RlciA8PCBtX2xhYmVsOwogICAgICAg
ICBlbmNvZGVyIDw8IG1fZ3JvdXBJZDsKICAgICAgICAgZW5jb2RlciA8PCBtX2VuYWJsZWQ7Cisg
ICAgICAgIGVuY29kZXIgPDwgbV9kZWZhdWx0OwogICAgICAgICBlbmNvZGVyIDw8IG1fdHlwZTsK
ICAgICB9CiAKQEAgLTk5LDYgKzEwMywxMSBAQCBwdWJsaWM6CiAgICAgICAgIGlmICghZW5hYmxl
ZCkKICAgICAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAKKyAgICAgICAgT3B0aW9uYWw8
Ym9vbD4gaXNEZWZhdWx0OworICAgICAgICBkZWNvZGVyID4+IGlzRGVmYXVsdDsKKyAgICAgICAg
aWYgKCFpc0RlZmF1bHQpCisgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCiAgICAg
ICAgIE9wdGlvbmFsPENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU+IHR5cGU7CiAgICAgICAgIGRl
Y29kZXIgPj4gdHlwZTsKICAgICAgICAgaWYgKCF0eXBlKQpAQCAtMTA2LDYgKzExNSw3IEBAIHB1
YmxpYzoKIAogICAgICAgICBPcHRpb25hbDxDYXB0dXJlRGV2aWNlPiBkZXZpY2UgPSB7eyBXVEZN
b3ZlKCpwZXJzaXN0ZW50SWQpLCBXVEZNb3ZlKCp0eXBlKSwgV1RGTW92ZSgqbGFiZWwpLCBXVEZN
b3ZlKCpncm91cElkKSB9fTsKICAgICAgICAgZGV2aWNlLT5zZXRFbmFibGVkKCplbmFibGVkKTsK
KyAgICAgICAgZGV2aWNlLT5zZXRJc0RlZmF1bHQoKmlzRGVmYXVsdCk7CiAgICAgICAgIHJldHVy
biBkZXZpY2U7CiAgICAgfQogI2VuZGlmCkBAIC0xMTYsNiArMTI2LDcgQEAgcHJpdmF0ZToKICAg
ICBTdHJpbmcgbV9sYWJlbDsKICAgICBTdHJpbmcgbV9ncm91cElkOwogICAgIGJvb2wgbV9lbmFi
bGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1fZGVmYXVsdCB7IGZhbHNlIH07CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNl
LmgKaW5kZXggMDliODEzMzBlYzUzZDMxNjQxOGY1MTgyMWMxY2Q2YjliYjY3ZDU2Zi4uMTEwMTVm
NjQ0ZDQ0OGVhMWIyZmM3YWQ1YmNhODQzNzRjNGVkYTljNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmlj
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2UuaApAQCAtMzYsMTMgKzM2LDExIEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogY2xhc3MgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlIDogcHVibGljIENhcHR1
cmVEZXZpY2UgewogcHVibGljOgotICAgIHN0YXRpYyBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2UgY3JlYXRlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uKik7CisgICAgc3RhdGljIEFW
QXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZSBjcmVhdGUoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3Jp
cHRpb24gKmRldmljZUlucHV0LCBBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqZGVmYXVs
dElucHV0KTsKICAgICB2aXJ0dWFsIH5BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UoKSA9IGRl
ZmF1bHQ7CiAKIHByaXZhdGU6Ci0gICAgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKEFWQXVk
aW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uKiwgY29uc3QgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIGNv
bnN0IFN0cmluZyYgbGFiZWwpOwotCi0gICAgUmV0YWluUHRyPEFWQXVkaW9TZXNzaW9uUG9ydERl
c2NyaXB0aW9uPiBtX3BvcnREZXNjcmlwdGlvbjsKKyAgICBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2UoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKmRldmljZUlucHV0LCBBVkF1ZGlv
U2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqZGVmYXVsdElucHV0KTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tCmlu
ZGV4IGZjNDE4MDM3YWMxOTBmNWJkNDA0MWZiZDczY2I3OTZjMjUwMmY2MTkuLjBmYTcxZmFkMTZl
MmRkNTcyNDdkZjIzZjcyYjY2ZDdhMGFiMzlhZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW0K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZS5tbQpAQCAtMzIsMTkgKzMyLDE2IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlIEFWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZTo6Y3JlYXRlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uKiBwb3J0RGVzY3Jp
cHRpb24pCitBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UgQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlOjpjcmVhdGUoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24qIGRldmljZUlucHV0
LCBBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqZGVmYXVsdElucHV0KQogewotICAgIFN0
cmluZyBwZXJzaXN0ZW50SUQgPSBwb3J0RGVzY3JpcHRpb24uVUlEOwotICAgIFN0cmluZyBsYWJl
bCA9IHBvcnREZXNjcmlwdGlvbi5wb3J0TmFtZTsKLSAgICBhdXRvIGRldmljZSA9IEFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZShwb3J0RGVzY3JpcHRpb24sIHBlcnNpc3RlbnRJRCwgbGFiZWwp
OwotICAgIGRldmljZS5zZXRFbmFibGVkKHBvcnREZXNjcmlwdGlvbi5kYXRhU291cmNlcy5jb3Vu
dCk7Ci0gICAgcmV0dXJuIGRldmljZTsKKyAgICByZXR1cm4gQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlKGRldmljZUlucHV0LCBkZWZhdWx0SW5wdXQpOwogfQogCi1BVkF1ZGlvU2Vzc2lvbkNh
cHR1cmVEZXZpY2U6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShBVkF1ZGlvU2Vzc2lvblBv
cnREZXNjcmlwdGlvbiogcG9ydERlc2NyaXB0aW9uLCBjb25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJ
RCwgY29uc3QgU3RyaW5nJiBsYWJlbCkKLSAgICA6IENhcHR1cmVEZXZpY2UocGVyc2lzdGVudElE
LCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lLCBsYWJlbCkKLSAgICAsIG1f
cG9ydERlc2NyaXB0aW9uKHBvcnREZXNjcmlwdGlvbikKK0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURl
dmljZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2Ny
aXB0aW9uICpkZXZpY2VJbnB1dCwgQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKmRlZmF1
bHRJbnB1dCkKKyAgICA6IENhcHR1cmVEZXZpY2UoZGV2aWNlSW5wdXQuVUlELCBDYXB0dXJlRGV2
aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lLCBkZXZpY2VJbnB1dC5wb3J0TmFtZSkKIHsKKyAg
ICBzZXRFbmFibGVkKHRydWUpOworICAgIHNldElzRGVmYXVsdChkZWZhdWx0SW5wdXQgJiYgW2Rl
ZmF1bHRJbnB1dC5VSUQgaXNFcXVhbFRvU3RyaW5nOmRldmljZUlucHV0LlVJRF0pOwogfQogCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZB
dWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaApp
bmRleCAzOTk2MTY4NzljNTFmYTg4NGNhNzhiMzA4ZWFkM2Y3ZjM3NDM0ZjcwLi42YWI0ZTJjNzQy
ZDMxZTRiZmNkOGM1ZWI5ODdkOTExNTYxNWQzY2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTI4LDEwICsyOCwxMiBAQAogI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pICYmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKICNpbmNsdWRl
ICJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIgorI2luY2x1ZGUgIkdlbmVyaWNUYXNrUXVldWUuaCIK
ICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5j
bHVkZSA8d3RmL1JldGFpblB0ci5oPgogCitPQkpDX0NMQVNTIEFWQXVkaW9TZXNzaW9uOwogT0JK
Q19DTEFTUyBXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyOwogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC00OCwxOSArNTAsMjMgQEAgcHVibGljOgogICAgIGNvbnN0IFZl
Y3RvcjxDYXB0dXJlRGV2aWNlPiYgc3BlYWtlckRldmljZXMoKSBjb25zdCB7IHJldHVybiBtX3Nw
ZWFrZXJEZXZpY2VzOyB9CiAgICAgT3B0aW9uYWw8Q2FwdHVyZURldmljZT4gY2FwdHVyZURldmlj
ZVdpdGhQZXJzaXN0ZW50SUQoQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSwgY29uc3QgU3RyaW5n
Jik7CiAKLSAgICBWZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiYgYXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZXMoKTsKICAgICBPcHRpb25hbDxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2U+IGF1ZGlvU2Vzc2lvbkRldmljZVdpdGhVSUQoY29uc3QgU3RyaW5nJik7CisgICAgCisg
ICAgdm9pZCBzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCk7CiAKIHByaXZhdGU6Ci0gICAg
QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gZGVmYXVsdDsKKyAgICBBVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCk7CiAgICAgfkFWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZU1hbmFnZXIoKTsKIAogICAgIHZvaWQgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmlj
ZXMoKTsKKyAgICBWZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiYgYXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZXMoKTsKIAogICAgIE9wdGlvbmFsPFZlY3RvcjxDYXB0dXJlRGV2aWNl
Pj4gbV9kZXZpY2VzOwogICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBtX3NwZWFrZXJEZXZpY2Vz
OwogICAgIE9wdGlvbmFsPFZlY3RvcjxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+PiBtX2F1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzOwogICAgIFJldGFpblB0cjxXZWJBVkF1ZGlvU2Vzc2lv
bkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyPiBtX2xpc3RlbmVyOworICAgIFJldGFpblB0cjxBVkF1
ZGlvU2Vzc2lvbj4gbV9hdWRpb1Nlc3Npb247CisgICAgR2VuZXJpY1Rhc2tRdWV1ZTxUaW1lcj4g
bV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVk
aW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbQpp
bmRleCA0NjA1MGQ5MzgzNGYzYTkzN2ZlZTM3NTU3MzdkZWFhNGUyYzljMGE1Li4zMjgyMGIwNzk5
NWIyMGVjOWMxYWJjYjQ0MmE2Zjc0ZjkwNjU3MjUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFu
YWdlci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZB
dWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbQpAQCAtMzEsNDEgKzMxLDQ1IEBACiAj
aW1wb3J0ICJBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaCIKICNpbXBvcnQgIlJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXIuaCIKICNpbXBvcnQgPEFWRm91bmRhdGlvbi9BVkF1ZGlvU2Vzc2lv
bi5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9BVkZvdW5kYXRpb25TUEkuaD4KKyNpbXBvcnQg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvVmVjdG9yLmg+CiAKICNpbXBvcnQgPHBh
bC9jb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oPgogCi12b2lkKiBBdmFpbGFibGVJbnB1dHND
b250ZXh0ID0gJkF2YWlsYWJsZUlucHV0c0NvbnRleHQ7Ci0KIEBpbnRlcmZhY2UgV2ViQVZBdWRp
b1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciA6IE5TT2JqZWN0IHsKLSAgICBXVEY6OkZ1
bmN0aW9uPHZvaWQoKT4gX2NhbGxiYWNrOworICAgIFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZU1hbmFnZXIqIF9jYWxsYmFjazsKIH0KIEBlbmQKIAogQGltcGxlbWVudGF0aW9u
IFdlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIKLS0gKGlkKWluaXRXaXRo
Q2FsbGJhY2s6KFdURjo6RnVuY3Rpb248dm9pZCgpPiYmKWNhbGxiYWNrCistIChpZClpbml0V2l0
aENhbGxiYWNrOihXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyICop
Y2FsbGJhY2sgYXVkaW9TZXNzaW9uOihBVkF1ZGlvU2Vzc2lvbiAqKXNlc3Npb24KIHsKICAgICBz
ZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsK
IAotICAgIF9jYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spOworICAgIFtbTlNOb3RpZmljYXRp
b25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0
b3Iocm91dGVEaWRDaGFuZ2U6KSBuYW1lOlBBTDo6Z2V0X0FWRm91bmRhdGlvbl9BVkF1ZGlvU2Vz
c2lvblJvdXRlQ2hhbmdlTm90aWZpY2F0aW9uKCkgb2JqZWN0OnNlc3Npb25dOworCisgICAgX2Nh
bGxiYWNrID0gY2FsbGJhY2s7CisKICAgICByZXR1cm4gc2VsZjsKIH0KIAogLSAodm9pZClpbnZh
bGlkYXRlCiB7CiAgICAgX2NhbGxiYWNrID0gbnVsbHB0cjsKKyAgICBbW05TTm90aWZpY2F0aW9u
Q2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGZdOwogfQogCi0tICh2b2lk
KW9ic2VydmVWYWx1ZUZvcktleVBhdGg6KE5TU3RyaW5nICopa2V5UGF0aCBvZk9iamVjdDooaWQp
b2JqZWN0IGNoYW5nZTooTlNEaWN0aW9uYXJ5PE5TS2V5VmFsdWVDaGFuZ2VLZXksIGlkPiAqKWNo
YW5nZSBjb250ZXh0Oih2b2lkICopY29udGV4dAorLSAodm9pZClyb3V0ZURpZENoYW5nZTooTlNO
b3RpZmljYXRpb24gKilub3RpZmljYXRpb24KIHsKLSAgICBVTlVTRURfUEFSQU0oa2V5UGF0aCk7
Ci0gICAgVU5VU0VEX1BBUkFNKG9iamVjdCk7Ci0gICAgVU5VU0VEX1BBUkFNKGNoYW5nZSk7Ci0g
ICAgaWYgKGNvbnRleHQgPT0gQXZhaWxhYmxlSW5wdXRzQ29udGV4dCAmJiBfY2FsbGJhY2spCi0g
ICAgICAgIF9jYWxsYmFjaygpOworICAgIGlmICghX2NhbGxiYWNrKQorICAgICAgICByZXR1cm47
CisKKyAgICBfY2FsbGJhY2stPnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMoKTsKIH0KKwog
QGVuZAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC03Niw2ICs4MCwyNCBAQCBBVkF1ZGlvU2Vz
c2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyJiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5h
Z2VyOjpzaW5nbGV0bwogICAgIHJldHVybiBtYW5hZ2VyOwogfQogCitBVkF1ZGlvU2Vzc2lvbkNh
cHR1cmVEZXZpY2VNYW5hZ2VyOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCkK
K3sKKyNpZiAhUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgbV9hdWRpb1Nlc3Npb24gPSBhZG9w
dE5TKFtbUEFMOjpnZXRBVkF1ZGlvU2Vzc2lvbkNsYXNzKCkgYWxsb2NdIGluaXRBdXhpbGlhcnlT
ZXNzaW9uXSk7CisjZWxzZQorICAgIC8vIEZJWE1FOiBGaWd1cmUgb3V0IGlmIHRoaXMgaXMgY29y
cmVjdCBmb3IgQ2F0YWx5c3QsIHdoZXJlIGF1eGlsaWFyeSBzZXNzaW9uIGlzbid0IGF2YWlsYWJs
ZS4KKyAgICBtX2F1ZGlvU2Vzc2lvbiA9IFtQQUw6OmdldEFWQXVkaW9TZXNzaW9uQ2xhc3MoKSBz
aGFyZWRJbnN0YW5jZV07CisjZW5kaWYKKyAgICAKKyAgICBOU0Vycm9yICplcnJvciA9IG5pbDsK
KyAgICBhdXRvIG9wdGlvbnMgPSBBVkF1ZGlvU2Vzc2lvbkNhdGVnb3J5T3B0aW9uQWxsb3dCbHVl
dG9vdGggfCBBVkF1ZGlvU2Vzc2lvbkNhdGVnb3J5T3B0aW9uTWl4V2l0aE90aGVyczsKKyAgICBb
bV9hdWRpb1Nlc3Npb24gc2V0Q2F0ZWdvcnk6QVZBdWRpb1Nlc3Npb25DYXRlZ29yeVBsYXlBbmRS
ZWNvcmQgbW9kZTpBVkF1ZGlvU2Vzc2lvbk1vZGVWaWRlb0NoYXQgb3B0aW9uczpvcHRpb25zIGVy
cm9yOiZlcnJvcl07CisgICAgaWYgKGVycm9yKSB7CisgICAgICAgIExPR19FUlJPUigiRmFpbGVk
IHRvIHNldCBhdWRpbyBzZXNzaW9uIGNhdGVnb3J5IHdpdGggZXJyb3I6ICVALiIsIGVycm9yLmxv
Y2FsaXplZERlc2NyaXB0aW9uKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwogQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6fkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmlj
ZU1hbmFnZXIoKQogewogICAgIFttX2xpc3RlbmVyIGludmFsaWRhdGVdOwpAQCAtMTA4LDkgKzEz
MCw2IEBAIFZlY3RvcjxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+JiBBVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjphdWRpb1NlCiAKIE9wdGlvbmFsPEFWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZT4gQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6YXVkaW9T
ZXNzaW9uRGV2aWNlV2l0aFVJRChjb25zdCBTdHJpbmcmIGRldmljZUlEKQogewotICAgIGlmICgh
bV9hdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlcykKLSAgICAgICAgcmVmcmVzaEF1ZGlvQ2FwdHVy
ZURldmljZXMoKTsKLQogICAgIGZvciAoYXV0byYgZGV2aWNlIDogYXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZXMoKSkgewogICAgICAgICBpZiAoZGV2aWNlLnBlcnNpc3RlbnRJZCgpID09IGRldmlj
ZUlEKQogICAgICAgICAgICAgcmV0dXJuIGRldmljZTsKQEAgLTExOCwzMCArMTM3LDU5IEBAIE9w
dGlvbmFsPEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZT4gQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlTWFuYWdlcjo6YXVkaW9TCiAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIH0KIAordm9p
ZCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzY2hlZHVsZVVwZGF0ZUNhcHR1
cmVEZXZpY2VzKCkKK3sKKyAgICBpZiAobV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlLmhhc1BlbmRp
bmdUYXNrcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBtX3VwZGF0ZURldmljZVN0YXRlUXVl
dWUuZW5xdWV1ZVRhc2soW3RoaXNdIHsKKyAgICAgICAgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmlj
ZXMoKTsKKyAgICB9KTsKK30KKwogdm9pZCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5h
Z2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCiB7Ci0gICAgaWYgKCFtX2xpc3RlbmVy
KSB7Ci0gICAgICAgIG1fbGlzdGVuZXIgPSBhZG9wdE5TKFtbV2ViQVZBdWRpb1Nlc3Npb25BdmFp
bGFibGVJbnB1dHNMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDYWxsYmFjazpbdGhpc10gewotICAg
ICAgICAgICAgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoKTsKLSAgICAgICAgfV0pOwotICAg
ICAgICBbW1BBTDo6Z2V0QVZBdWRpb1Nlc3Npb25DbGFzcygpIHNoYXJlZEluc3RhbmNlXSBhZGRP
YnNlcnZlcjptX2xpc3RlbmVyLmdldCgpIGZvcktleVBhdGg6QCJhdmFpbGFibGVJbnB1dHMiIG9w
dGlvbnM6MCBjb250ZXh0OkF2YWlsYWJsZUlucHV0c0NvbnRleHRdOwotICAgIH0KKyAgICBpZiAo
IW1fbGlzdGVuZXIpCisgICAgICAgIG1fbGlzdGVuZXIgPSBhZG9wdE5TKFtbV2ViQVZBdWRpb1Nl
c3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDYWxsYmFjazp0aGlz
IGF1ZGlvU2Vzc2lvbjptX2F1ZGlvU2Vzc2lvbi5nZXQoKV0pOworCisgICAgTlNFcnJvciAqZXJy
b3IgPSBuaWw7CisgICAgW21fYXVkaW9TZXNzaW9uIHNldEFjdGl2ZTpZRVMgd2l0aE9wdGlvbnM6
MCBlcnJvcjomZXJyb3JdOworICAgIGlmIChlcnJvcikKKyAgICAgICAgTE9HX0VSUk9SKCJGYWls
ZWQgdG8gYWN0aXZhdGUgYXVkaW8gc2Vzc2lvbiB3aXRoIGVycm9yOiAlQC4iLCBlcnJvci5sb2Nh
bGl6ZWREZXNjcmlwdGlvbik7CiAKICAgICBWZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlPiBuZXdBdWRpb0RldmljZXM7CiAgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IG5ld0Rldmlj
ZXM7Ci0KLSAgICBmb3IgKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpwb3J0RGVzY3Jp
cHRpb24gaW4gW1BBTDo6Z2V0QVZBdWRpb1Nlc3Npb25DbGFzcygpIHNoYXJlZEluc3RhbmNlXS5h
dmFpbGFibGVJbnB1dHMpIHsKLSAgICAgICAgYXV0byBhdWRpb0RldmljZSA9IEFWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZTo6Y3JlYXRlKHBvcnREZXNjcmlwdGlvbik7CisgICAgYXV0byAqZGVm
YXVsdElucHV0ID0gW21fYXVkaW9TZXNzaW9uIGN1cnJlbnRSb3V0ZV0uaW5wdXRzLmZpcnN0T2Jq
ZWN0OworICAgIGZvciAoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKnBvcnREZXNjcmlw
dGlvbiBpbiBbbV9hdWRpb1Nlc3Npb24gYXZhaWxhYmxlSW5wdXRzXSkgeworICAgICAgICBhdXRv
IGF1ZGlvRGV2aWNlID0gQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlOjpjcmVhdGUocG9ydERl
c2NyaXB0aW9uLCBkZWZhdWx0SW5wdXQpOwogICAgICAgICBuZXdEZXZpY2VzLmFwcGVuZChhdWRp
b0RldmljZSk7CiAgICAgICAgIG5ld0F1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92ZShhdWRpb0Rl
dmljZSkpOwogICAgIH0KIAorICAgIGJvb2wgZmlyc3RUaW1lID0gIW1fZGV2aWNlczsKKyAgICBi
b29sIGhhdmVEZXZpY2VDaGFuZ2VzID0gIW1fZGV2aWNlcyB8fCBuZXdBdWRpb0RldmljZXMuc2l6
ZSgpICE9IG1fZGV2aWNlcy0+c2l6ZSgpOworICAgIGlmICghaGF2ZURldmljZUNoYW5nZXMpIHsK
KyAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBuZXdBdWRpb0RldmljZXMuc2l6ZSgpOyAr
K2kpIHsKKyAgICAgICAgICAgIGF1dG8mIG9sZFN0YXRlID0gKCptX2RldmljZXMpW2ldOworICAg
ICAgICAgICAgYXV0byYgbmV3U3RhdGUgPSBuZXdBdWRpb0RldmljZXNbaV07CisgICAgICAgICAg
ICBpZiAobmV3U3RhdGUudHlwZSgpICE9IG9sZFN0YXRlLnR5cGUoKSB8fCBuZXdTdGF0ZS5wZXJz
aXN0ZW50SWQoKSAhPSBvbGRTdGF0ZS5wZXJzaXN0ZW50SWQoKSB8fCBuZXdTdGF0ZS5lbmFibGVk
KCkgIT0gb2xkU3RhdGUuZW5hYmxlZCgpIHx8IG5ld1N0YXRlLmlzRGVmYXVsdCgpICE9IG9sZFN0
YXRlLmlzRGVmYXVsdCgpKQorICAgICAgICAgICAgICAgIGhhdmVEZXZpY2VDaGFuZ2VzID0gdHJ1
ZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICghaGF2ZURldmljZUNoYW5nZXMgJiYgIWZp
cnN0VGltZSkKKyAgICAgICAgcmV0dXJuOworCiAgICAgbV9hdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlcyA9IFdURk1vdmUobmV3QXVkaW9EZXZpY2VzKTsKKyAgICBzdGQ6OnNvcnQobmV3RGV2aWNl
cy5iZWdpbigpLCBuZXdEZXZpY2VzLmVuZCgpLCBbXSAoYXV0byYgZmlyc3QsIGF1dG8mIHNlY29u
ZCkgLT4gYm9vbCB7CisgICAgICAgIHJldHVybiBmaXJzdC5pc0RlZmF1bHQoKSAmJiAhc2Vjb25k
LmlzRGVmYXVsdCgpOworICAgIH0pOwogICAgIG1fZGV2aWNlcyA9IFdURk1vdmUobmV3RGV2aWNl
cyk7CiAKLSAgICBkZXZpY2VDaGFuZ2VkKCk7CisgICAgaWYgKCFmaXJzdFRpbWUpCisgICAgICAg
IGRldmljZUNoYW5nZWQoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgUExBVEZPUk0oTUFDKQorI2VuZGlmIC8vIEVOQUJM
RShNRURJQV9TVFJFQU0pICYmIFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmlj
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlv
Q2FwdHVyZURldmljZS5jcHAKaW5kZXggZjVlYjY4MGU0ZDkwM2MyZjc3N2MwZGY0YzZmYTdlNjli
YmU5M2MzZi4uZjEzMDVkZWNjNWZiM2YwN2UwMTg4MjU1MTEyNWMzMmY0YzNjNmQxMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0Nh
cHR1cmVEZXZpY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNwcApAQCAtMzgsNyArMzgsNyBAQAogbmFtZXNw
YWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNwYWNlIFBBTDsKIAotc3RhdGljIGJvb2wgZ2V0RGV2
aWNlSW5mbyh1aW50MzJfdCBkZXZpY2VJRCwgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIFN0cmluZyYg
bGFiZWwpCitzdGF0aWMgYm9vbCBnZXREZXZpY2VJbmZvKHVpbnQzMl90IGRldmljZUlELCBDYXB0
dXJlRGV2aWNlOjpEZXZpY2VUeXBlIHR5cGUsIFN0cmluZyYgcGVyc2lzdGVudElELCBTdHJpbmcm
IGxhYmVsKQogewogICAgIENGU3RyaW5nUmVmIHVuaXF1ZUlEOwogICAgIEF1ZGlvT2JqZWN0UHJv
cGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURldmljZVVJRCwga0F1
ZGlvRGV2aWNlUHJvcGVydHlTY29wZUlucHV0LCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRN
YXN0ZXIgfTsKQEAgLTUxLDE0ICs1MSwzMCBAQCBzdGF0aWMgYm9vbCBnZXREZXZpY2VJbmZvKHVp
bnQzMl90IGRldmljZUlELCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgU3RyaW5nJiBsYWJlbAogICAg
IHBlcnNpc3RlbnRJRCA9IHVuaXF1ZUlEOwogICAgIENGUmVsZWFzZSh1bmlxdWVJRCk7CiAKLSAg
ICBDRlN0cmluZ1JlZiBsb2NhbGl6ZWROYW1lOwotICAgIGFkZHJlc3MgPSB7IGtBdWRpb09iamVj
dFByb3BlcnR5TmFtZSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2Jq
ZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07Ci0gICAgZGF0YVNpemUgPSBzaXplb2YobG9jYWxp
emVkTmFtZSk7Ci0gICAgZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nh
c3Q8VUludDMyPihkZXZpY2VJRCksICZhZGRyZXNzLCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZs
b2NhbGl6ZWROYW1lKTsKKyAgICBDRlN0cmluZ1JlZiBsb2NhbGl6ZWROYW1lID0gbnVsbHB0cjsK
KyAgICBBdWRpb09iamVjdFByb3BlcnR5U2NvcGUgc2NvcGUgPSB0eXBlID09IENhcHR1cmVEZXZp
Y2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUgPyBrQXVkaW9EZXZpY2VQcm9wZXJ0eVNjb3BlSW5w
dXQgOiBrQXVkaW9EZXZpY2VQcm9wZXJ0eVNjb3BlT3V0cHV0OworICAgIGFkZHJlc3MgPSB7IGtB
dWRpb0RldmljZVByb3BlcnR5RGF0YVNvdXJjZSwgc2NvcGUsIGtBdWRpb09iamVjdFByb3BlcnR5
RWxlbWVudE1hc3RlciB9OworICAgIHVpbnQzMl90IHNvdXJjZUlEOworICAgIGRhdGFTaXplID0g
c2l6ZW9mKHNvdXJjZUlEKTsKKyAgICBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShz
dGF0aWNfY2FzdDxVSW50MzI+KGRldmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRh
U2l6ZSwgJnNvdXJjZUlEKTsKKyAgICBpZiAoIWVycikgeworICAgICAgICBBdWRpb1ZhbHVlVHJh
bnNsYXRpb24gdHJhbnNsYXRpb24gPSB7ICZkZXZpY2VJRCwgc2l6ZW9mKGRldmljZUlEKSwgJmxv
Y2FsaXplZE5hbWUsIHNpemVvZihsb2NhbGl6ZWROYW1lKSB9OworICAgICAgICBhZGRyZXNzID0g
eyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURhdGFTb3VyY2VOYW1lRm9ySURDRlN0cmluZywgc2NvcGUs
IGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OworICAgICAgICBkYXRhU2l6ZSA9
IHNpemVvZih0cmFuc2xhdGlvbik7CisgICAgICAgIGVyciA9IEF1ZGlvT2JqZWN0R2V0UHJvcGVy
dHlEYXRhKHN0YXRpY19jYXN0PFVJbnQzMj4oZGV2aWNlSUQpLCAmYWRkcmVzcywgMCwgbnVsbHB0
ciwgJmRhdGFTaXplLCAmdHJhbnNsYXRpb24pOworICAgIH0KKworICAgIGlmIChlcnIgfHwgIWxv
Y2FsaXplZE5hbWUgfHwgIUNGU3RyaW5nR2V0TGVuZ3RoKGxvY2FsaXplZE5hbWUpKSB7CisgICAg
ICAgIGFkZHJlc3MgPSB7IGtBdWRpb09iamVjdFByb3BlcnR5TmFtZSwga0F1ZGlvT2JqZWN0UHJv
cGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07Cisg
ICAgICAgIGRhdGFTaXplID0gc2l6ZW9mKGxvY2FsaXplZE5hbWUpOworICAgICAgICBlcnIgPSBB
dWRpb09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0aWNfY2FzdDxVSW50MzI+KGRldmljZUlEKSwg
JmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJmxvY2FsaXplZE5hbWUpOworICAgIH0K
KwogICAgIGlmIChlcnIpIHsKICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoV2ViUlRDLCAiQ29y
ZUF1ZGlvQ2FwdHVyZURldmljZTo6Z2V0RGV2aWNlSW5mbyBmYWlsZWQgdG8gZ2V0IGRldmljZSBu
YW1lIHdpdGggZXJyb3IgJWQgKCUuNHMpIiwgKGludCllcnIsIChjaGFyKikmZXJyKTsKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKwogICAgIGxhYmVsID0gbG9jYWxpemVkTmFtZTsKICAg
ICBDRlJlbGVhc2UobG9jYWxpemVkTmFtZSk7CiAKQEAgLTcwLDcgKzg2LDcgQEAgT3B0aW9uYWw8
Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRlKHVp
bnQzMl90IGRldmljZUkKICAgICBBU1NFUlQodHlwZSA9PSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VU
eXBlOjpNaWNyb3Bob25lIHx8IHR5cGUgPT0gQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6U3Bl
YWtlcik7CiAgICAgU3RyaW5nIHBlcnNpc3RlbnRJRDsKICAgICBTdHJpbmcgbGFiZWw7Ci0gICAg
aWYgKCFnZXREZXZpY2VJbmZvKGRldmljZUlELCBwZXJzaXN0ZW50SUQsIGxhYmVsKSkKKyAgICBp
ZiAoIWdldERldmljZUluZm8oZGV2aWNlSUQsIHR5cGUsIHBlcnNpc3RlbnRJRCwgbGFiZWwpKQog
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCiAgICAgcmV0dXJuIENvcmVBdWRpb0NhcHR1
cmVEZXZpY2UoZGV2aWNlSUQsIHBlcnNpc3RlbnRJRCwgdHlwZSwgbGFiZWwsIGdyb3VwSUQuaXNO
dWxsKCkgPyBwZXJzaXN0ZW50SUQgOiBncm91cElEKTsKQEAgLTgwLDcgKzk2LDE4IEBAIENvcmVB
dWRpb0NhcHR1cmVEZXZpY2U6OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2UodWludDMyX3QgZGV2aWNl
SUQsIGNvbnN0IFN0cmluZyYKICAgICA6IENhcHR1cmVEZXZpY2UocGVyc2lzdGVudElELCBkZXZp
Y2VUeXBlLCBsYWJlbCwgZ3JvdXBJRCkKICAgICAsIG1fZGV2aWNlSUQoZGV2aWNlSUQpCiB7Ci0g
ICAgc2V0RW5hYmxlZChpc0FsaXZlKCkpOworICAgIEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNz
IGFkZHJlc3MgeyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURldmljZUlzQWxpdmUsIGtBdWRpb09iamVj
dFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9
OworICAgIFVJbnQzMiBzdGF0ZSA9IDA7CisgICAgVUludDMyIGRhdGFTaXplID0gc2l6ZW9mKHN0
YXRlKTsKKyAgICBhdXRvIGVyciA9IEF1ZGlvT2JqZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19j
YXN0PFVJbnQzMj4obV9kZXZpY2VJRCksICZhZGRyZXNzLCAwLCBudWxscHRyLCAmZGF0YVNpemUs
ICZzdGF0ZSk7CisgICAgc2V0RW5hYmxlZCghZXJyICYmIHN0YXRlKTsKKworICAgIFVJbnQzMiBw
cm9wZXJ0eSA9IGRldmljZVR5cGUgPT0gQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6TWljcm9w
aG9uZSA/IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlEZWZhdWx0SW5wdXREZXZpY2UgOiBrQXVkaW9I
YXJkd2FyZVByb3BlcnR5RGVmYXVsdE91dHB1dERldmljZTsKKyAgICBhZGRyZXNzID0geyBwcm9w
ZXJ0eSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVy
dHlFbGVtZW50TWFzdGVyIH07CisgICAgQXVkaW9EZXZpY2VJRCBkZWZhdWx0SUQgPSBrQXVkaW9E
ZXZpY2VVbmtub3duOworICAgIGRhdGFTaXplID0gc2l6ZW9mKGRlZmF1bHRJRCk7CisgICAgZXJy
ID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAm
YWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmZGVmYXVsdElEKTsKKyAgICBzZXRJc0Rl
ZmF1bHQoIWVyciAmJiBkZWZhdWx0SUQgPT0gbV9kZXZpY2VJRCk7CiB9CiAKIFZlY3RvcjxBdWRp
b0RldmljZUlEPiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpyZWxhdGVkQXVkaW9EZXZpY2VJRHMo
QXVkaW9EZXZpY2VJRCBkZXZpY2VJRCkKQEAgLTExNSwxNiArMTQyLDYgQEAgUmV0YWluUHRyPENN
Q2xvY2tSZWY+IENvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmRldmljZUNsb2NrKCkKICAgICByZXR1
cm4gbV9kZXZpY2VDbG9jazsKIH0KIAotYm9vbCBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjppc0Fs
aXZlKCkKLXsKLSAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzID0geyBrQXVk
aW9EZXZpY2VQcm9wZXJ0eURldmljZUlzQWxpdmUsIGtBdWRpb09iamVjdFByb3BlcnR5U2NvcGVH
bG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OwotICAgIFVJbnQzMiBz
dGF0ZSA9IDA7Ci0gICAgVUludDMyIGRhdGFTaXplID0gc2l6ZW9mKHN0YXRlKTsKLSAgICBpZiAo
QXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nhc3Q8VUludDMyPihtX2RldmljZUlE
KSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJnN0YXRlKSkKLSAgICAgICAgcmV0
dXJuIGZhbHNlOwotICAgIHJldHVybiBzdGF0ZTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgUExBVEZPUk0oTUFDKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRp
b0NhcHR1cmVEZXZpY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21h
Yy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmgKaW5kZXggMjY4N2JmYzYzZjY2M2NjNjIxYjJlZGU0
M2Y0YWFlOTI2OGNlN2E1Yy4uY2RlOTFjMTg0NjEwMTQ1OGIxZTFkZWZlYjRiNzMxMmU0YTE1MzI5
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0Nv
cmVBdWRpb0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5oCkBAIC00OCw3ICs0OCw2IEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlKHVpbnQzMl90LCBj
b25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgRGV2aWNlVHlwZSwgY29uc3QgU3RyaW5nJiBsYWJl
bCwgY29uc3QgU3RyaW5nJiBncm91cElEKTsKLSAgICBib29sIGlzQWxpdmUoKTsKIAogICAgIHVp
bnQzMl90IG1fZGV2aWNlSUQgeyAwIH07CiAgICAgUmV0YWluUHRyPENNQ2xvY2tSZWY+IG1fZGV2
aWNlQ2xvY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNw
cAppbmRleCA3MDBlZWQ5ZWQ4YWYxZjk3MDVhZTQ2N2Q2OGViNmU2MTNmYjAzMjAwLi40OTNkN2Yw
OGFkOWY4NGM1ZGE2NDk3OTczNjNhMzhjMmJmMjFhYjFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3Jl
QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKQEAgLTEyOCwyOCArMTI4LDE0IEBAIHN0YXRp
YyBib29sIGlzVmFsaWRDYXB0dXJlRGV2aWNlKGNvbnN0IENvcmVBdWRpb0NhcHR1cmVEZXZpY2Um
IGRldmljZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotc3RhdGljIGlubGluZSBPcHRpb25hbDxD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBnZXREZWZhdWx0Q2FwdHVyZUlucHV0RGV2aWNlKCkKK3Zv
aWQgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURl
dmljZXMoKQogewotICAgIEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVk
aW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlLCBrQXVkaW9PYmplY3RQcm9wZXJ0
eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKLSAgICBV
SW50MzIgcHJvcGVydHlTaXplID0gc2l6ZW9mKEF1ZGlvRGV2aWNlSUQpOwotICAgIEF1ZGlvRGV2
aWNlSUQgZGV2aWNlSUQgPSBrQXVkaW9EZXZpY2VVbmtub3duOwotICAgIGF1dG8gZXJyID0gQXVk
aW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAmYWRkcmVz
cywgMCwgbnVsbHB0ciwgJnByb3BlcnR5U2l6ZSwgJmRldmljZUlEKTsKLQotICAgIGlmIChlcnIg
IT0gbm9FcnIgfHwgZGV2aWNlSUQgPT0ga0F1ZGlvRGV2aWNlVW5rbm93bikKLSAgICAgICAgcmV0
dXJuIHsgfTsKLSAgICByZXR1cm4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRlKGRldmlj
ZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lLCB7IH0pOwotfQotCi1z
dGF0aWMgaW5saW5lIE9wdGlvbmFsPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGdldERlZmF1bHRD
YXB0dXJlT3V0cHV0RGV2aWNlKCkKLXsKLSAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBh
ZGRyZXNzIHsga0F1ZGlvSGFyZHdhcmVQcm9wZXJ0eURlZmF1bHRPdXRwdXREZXZpY2UsIGtBdWRp
b09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1h
c3RlciB9OwotICAgIFVJbnQzMiBwcm9wZXJ0eVNpemUgPSBzaXplb2YoQXVkaW9EZXZpY2VJRCk7
Ci0gICAgQXVkaW9EZXZpY2VJRCBkZXZpY2VJRCA9IGtBdWRpb0RldmljZVVua25vd247Ci0gICAg
YXV0byBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShrQXVkaW9PYmplY3RTeXN0ZW1P
YmplY3QsICZhZGRyZXNzLCAwLCBudWxscHRyLCAmcHJvcGVydHlTaXplLCAmZGV2aWNlSUQpOwor
ICAgIGlmIChtX3VwZGF0ZURldmljZVN0YXRlUXVldWUuaGFzUGVuZGluZ1Rhc2tzKCkpCisgICAg
ICAgIHJldHVybjsKIAotICAgIGlmIChlcnIgIT0gbm9FcnIgfHwgZGV2aWNlSUQgPT0ga0F1ZGlv
RGV2aWNlVW5rbm93bikKLSAgICAgICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4gQ29yZUF1ZGlv
Q2FwdHVyZURldmljZTo6Y3JlYXRlKGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBl
OjpTcGVha2VyLCB7IH0pOworICAgIG1fdXBkYXRlRGV2aWNlU3RhdGVRdWV1ZS5lbnF1ZXVlVGFz
ayhbdGhpc10geworICAgICAgICByZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRl
dmljZXNIYXZlQ2hhbmdlZDo6Tm90aWZ5KTsKKyAgICB9KTsKIH0KIAogVmVjdG9yPENvcmVBdWRp
b0NhcHR1cmVEZXZpY2U+JiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29yZUF1ZGlv
Q2FwdHVyZURldmljZXMoKQpAQCAtMTY1LDcgKzE1MSw3IEBAIFZlY3RvcjxDb3JlQXVkaW9DYXB0
dXJlRGV2aWNlPiYgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OmNvcmVBdWRpb0NhcHR1
cmVECiAgICAgICAgICAgICAgICAgbm90aWZ5IHw9IChwcm9wZXJ0aWVzW2ldLm1TZWxlY3RvciA9
PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGV2aWNlcyB8fCBwcm9wZXJ0aWVzW2ldLm1TZWxlY3Rv
ciA9PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlIHx8IHByb3BlcnRp
ZXNbaV0ubVNlbGVjdG9yID09IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlEZWZhdWx0T3V0cHV0RGV2
aWNlKTsKIAogICAgICAgICAgICAgaWYgKG5vdGlmeSkKLSAgICAgICAgICAgICAgICBDb3JlQXVk
aW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6c2luZ2xldG9uKCkucmVmcmVzaEF1ZGlvQ2FwdHVyZURl
dmljZXMoTm90aWZ5SWZEZXZpY2VzSGF2ZUNoYW5nZWQ6Ok5vdGlmeSk7CisgICAgICAgICAgICAg
ICAgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNpbmdsZXRvbigpLnNjaGVkdWxlVXBk
YXRlQ2FwdHVyZURldmljZXMoKTsKICAgICAgICAgfTsKIAogICAgICAgICBBdWRpb09iamVjdFBy
b3BlcnR5QWRkcmVzcyBhZGRyZXNzID0geyBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGV2aWNlcywg
a0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVt
ZW50TWFzdGVyIH07CkBAIC0yMjMsMTAgKzIwOSw2IEBAIHN0YXRpYyBpbmxpbmUgVmVjdG9yPENv
cmVBdWRpb0NhcHR1cmVEZXZpY2U+IGNvbXB1dGVBdWRpb0RldmljZUxpc3QoKQogCiAgICAgVmVj
dG9yPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGF1ZGlvRGV2aWNlczsKIAotICAgIGF1dG8gZGVm
YXVsdElucHV0RGV2aWNlID0gZ2V0RGVmYXVsdENhcHR1cmVJbnB1dERldmljZSgpOwotICAgIGlm
IChkZWZhdWx0SW5wdXREZXZpY2UpCi0gICAgICAgIGF1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92
ZSgqZGVmYXVsdElucHV0RGV2aWNlKSk7Ci0KICAgICAvLyBNaWNyb3Bob25lcwogICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgZGV2aWNlQ291bnQ7IGkrKykgewogICAgICAgICBBdWRpb09iamVj
dElEIGRldmljZUlEID0gZGV2aWNlSURzW2ldOwpAQCAtMjM5LDEwICsyMjEsNiBAQCBzdGF0aWMg
aW5saW5lIFZlY3RvcjxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBjb21wdXRlQXVkaW9EZXZpY2VM
aXN0KCkKICAgICAgICAgICAgIGF1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92ZShtaWNyb3Bob25l
RGV2aWNlLnZhbHVlKCkpKTsKICAgICB9CiAKLSAgICBhdXRvIGRlZmF1bHRPdXRwdXREZXZpY2Ug
PSBnZXREZWZhdWx0Q2FwdHVyZU91dHB1dERldmljZSgpOwotICAgIGlmIChkZWZhdWx0T3V0cHV0
RGV2aWNlKQotICAgICAgICBhdWRpb0RldmljZXMuYXBwZW5kKFdURk1vdmUoKmRlZmF1bHRPdXRw
dXREZXZpY2UpKTsKLQogICAgIC8vIFNwZWFrZXJzCiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkg
PCBkZXZpY2VDb3VudDsgaSsrKSB7CiAgICAgICAgIEF1ZGlvT2JqZWN0SUQgZGV2aWNlSUQgPSBk
ZXZpY2VJRHNbaV07CkBAIC0yODUsMjYgKzI2MywyNyBAQCB2b2lkIENvcmVBdWRpb0NhcHR1cmVE
ZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNI
YQogICAgIGJvb2wgaGF2ZURldmljZUNoYW5nZXMgPSBhdWRpb0RldmljZXMuc2l6ZSgpICE9IG1f
Y29yZUF1ZGlvQ2FwdHVyZURldmljZXMuc2l6ZSgpOwogICAgIGlmICghaGF2ZURldmljZUNoYW5n
ZXMpIHsKICAgICAgICAgZm9yIChzaXplX3QgY3B0ciA9IDA7IGNwdHIgPCBhdWRpb0RldmljZXMu
c2l6ZSgpOyArK2NwdHIpIHsKLSAgICAgICAgICAgIGlmIChhdWRpb0RldmljZXNbY3B0cl0udHlw
ZSgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0udHlwZSgpIHx8IGF1ZGlvRGV2
aWNlc1tjcHRyXS5kZXZpY2VJRCgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0u
ZGV2aWNlSUQoKSB8fCBhdWRpb0RldmljZXNbY3B0cl0uZW5hYmxlZCgpICE9IG1fY29yZUF1ZGlv
Q2FwdHVyZURldmljZXNbY3B0cl0uZW5hYmxlZCgpKSB7CisgICAgICAgICAgICBhdXRvJiBvbGRT
dGF0ZSA9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl07CisgICAgICAgICAgICBhdXRv
JiBuZXdTdGF0ZSA9IGF1ZGlvRGV2aWNlc1tjcHRyXTsKKyAgICAgICAgICAgIGlmIChuZXdTdGF0
ZS50eXBlKCkgIT0gb2xkU3RhdGUudHlwZSgpIHx8IG5ld1N0YXRlLmRldmljZUlEKCkgIT0gb2xk
U3RhdGUuZGV2aWNlSUQoKSB8fCBuZXdTdGF0ZS5pc0RlZmF1bHQoKSAhPSBvbGRTdGF0ZS5pc0Rl
ZmF1bHQoKSB8fCBuZXdTdGF0ZS5lbmFibGVkKCkgIT0gb2xkU3RhdGUuZW5hYmxlZCgpIHx8IG5l
d1N0YXRlLmlzRGVmYXVsdCgpICE9IG9sZFN0YXRlLmlzRGVmYXVsdCgpKQogICAgICAgICAgICAg
ICAgIGhhdmVEZXZpY2VDaGFuZ2VzID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KICAgICBpZiAoIWhhdmVEZXZpY2VDaGFuZ2Vz
KQogICAgICAgICByZXR1cm47CiAKKyAgICBzdGQ6OnNvcnQoYXVkaW9EZXZpY2VzLmJlZ2luKCks
IGF1ZGlvRGV2aWNlcy5lbmQoKSwgW10gKGF1dG8mIGZpcnN0LCBhdXRvJiBzZWNvbmQpIC0+IGJv
b2wgeworICAgICAgICByZXR1cm4gZmlyc3QuaXNEZWZhdWx0KCkgJiYgIXNlY29uZC5pc0RlZmF1
bHQoKTsKKyAgICB9KTsKICAgICBtX2NvcmVBdWRpb0NhcHR1cmVEZXZpY2VzID0gV1RGTW92ZShh
dWRpb0RldmljZXMpOwogCiAgICAgbV9jYXB0dXJlRGV2aWNlcy5jbGVhcigpOwogICAgIG1fc3Bl
YWtlckRldmljZXMuY2xlYXIoKTsKICAgICBmb3IgKGF1dG8mIGRldmljZSA6IG1fY29yZUF1ZGlv
Q2FwdHVyZURldmljZXMpIHsKLSAgICAgICAgQ2FwdHVyZURldmljZSBjYXB0dXJlRGV2aWNlIHsg
ZGV2aWNlLnBlcnNpc3RlbnRJZCgpLCBkZXZpY2UudHlwZSgpLCBkZXZpY2UubGFiZWwoKSwgZGV2
aWNlLmdyb3VwSWQoKSB9OwotICAgICAgICBjYXB0dXJlRGV2aWNlLnNldEVuYWJsZWQoZGV2aWNl
LmVuYWJsZWQoKSk7CiAgICAgICAgIGlmIChkZXZpY2UudHlwZSgpID09IENhcHR1cmVEZXZpY2U6
OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUpCi0gICAgICAgICAgICBtX2NhcHR1cmVEZXZpY2VzLmFw
cGVuZChXVEZNb3ZlKGNhcHR1cmVEZXZpY2UpKTsKKyAgICAgICAgICAgIG1fY2FwdHVyZURldmlj
ZXMuYXBwZW5kKGRldmljZSk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fc3BlYWtlckRl
dmljZXMuYXBwZW5kKFdURk1vdmUoY2FwdHVyZURldmljZSkpOworICAgICAgICAgICAgbV9zcGVh
a2VyRGV2aWNlcy5hcHBlbmQoZGV2aWNlKTsKICAgICB9CiAKICAgICBpZiAobm90aWZ5ID09IE5v
dGlmeUlmRGV2aWNlc0hhdmVDaGFuZ2VkOjpOb3RpZnkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFu
YWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRp
b0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggNWU5NjYyYmY0Mjc1OWI2ZTVjZTI5OWQ1MzQ1
ZGNmYjM1NWFhYjM0MS4uZjBiMjFhNGFiNTFhYTVlNTFhODRjNzA1ODc2YzBhY2Q0OTBjYzI3MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTI5LDYg
KzI5LDcgQEAKIAogI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2UuaCIKICNpbmNsdWRlICJDYXB0dXJl
RGV2aWNlTWFuYWdlci5oIgorI2luY2x1ZGUgIkdlbmVyaWNUYXNrUXVldWUuaCIKICNpbmNsdWRl
IDxDb3JlQXVkaW8vQ29yZUF1ZGlvLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+CkBAIC01NywxMCArNTgsMTIgQEAgcHJpdmF0ZToKIAogICAgIGVu
dW0gY2xhc3MgTm90aWZ5SWZEZXZpY2VzSGF2ZUNoYW5nZWQgeyBOb3RpZnksIERvTm90Tm90aWZ5
IH07CiAgICAgdm9pZCByZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNI
YXZlQ2hhbmdlZCk7CisgICAgdm9pZCBzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCk7CiAK
ICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9jYXB0dXJlRGV2aWNlczsKICAgICBWZWN0b3I8
Q2FwdHVyZURldmljZT4gbV9zcGVha2VyRGV2aWNlczsKICAgICBWZWN0b3I8Q29yZUF1ZGlvQ2Fw
dHVyZURldmljZT4gbV9jb3JlQXVkaW9DYXB0dXJlRGV2aWNlczsKKyAgICBHZW5lcmljVGFza1F1
ZXVlPFRpbWVyPiBtX3VwZGF0ZURldmljZVN0YXRlUXVldWU7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413725</attachid>
            <date>2020-11-10 12:41:44 -0800</date>
            <delta_ts>2020-11-10 15:57:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211192-20201110124143.patch</filename>
            <type>text/plain</type>
            <size>32093</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDljOWYzZTY3YzRjYjMxYjU5MTcwN2U1
ODM0MGZlM2NmOWE5Y2NjMzIuLmRmNTk4MjVkMGZmNDU5MjliZTdkNWIwYzkwYWIzZmIwNzBmNGEy
NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMTEtMTAgIEVyaWMgQ2FybHNvbiAgPGVyaWMu
Y2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgVVNCIG1pY3JvcGhvbmUgbm90IHJlY29nbml6
ZWQgaU9TIFNhZmFyaQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjExMTkyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82MjYwNzMxMz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVu
YWJsZUNvY29hLmg6IERvbid0IGRlZmluZSBFTkFCTEVfV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VU
IGZvciAKKyAgICAgICAgdHZPUyBvciB3YXRjaE9TLCB0aGUgU1BJIHJlcXVpcmVkIGlzbid0IGF2
YWlsYWJsZS4KKwogMjAyMC0xMS0wNSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+
CiAKICAgICAgICAgQ29uc2lkZXIgYmxvY2tpbmcgcG9ydHMgNTA2MCBhbmQgNTA2MQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CmluZGV4IDk3MWM0ZDI2NTFmYWEzYjcwNjFmMmMzNTgwN2JkNWRjOTIzOTFjMTUuLmRlMDlkYjFk
ZjUzYzJhMzZiZmIxZjY4OWNlOGQ0ODZlOWZhZTY1M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2
MyBAQAorMjAyMC0xMS0xMCAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4K
KworICAgICAgICBVU0IgbWljcm9waG9uZSBub3QgcmVjb2duaXplZCBpT1MgU2FmYXJpCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTExOTIKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzYyNjA3MzEzPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3RpbmcgcmVxdWlyZXMgaGFyZHdhcmUsIHRlc3RlZCBt
YW51YWxseS4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2Uu
aDogQWRkIGNvbmNlcHQgb2YgZGVmYXVsdCBkZXZpY2UuCisgICAgICAgIChXZWJDb3JlOjpDYXB0
dXJlRGV2aWNlOjppc0RlZmF1bHQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURl
dmljZTo6c2V0SXNEZWZhdWx0KToKKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmVu
Y29kZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjpkZWNvZGUpOgor
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZS5oOiBEb24ndCByZXRhaW4gcG9ydAorICAgICAgICBkZXNjcmlwdGlvbiwgaXQgaXMg
bmV2ZXIgdXNlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nl
c3Npb25DYXB0dXJlRGV2aWNlLm1tOgorICAgICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlOjpjcmVhdGUpOiBBZGQgZGVmYXVsdCBpbnB1dCBwYXJhbWV0ZXIuCisgICAg
ICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OkFWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZSk6IFNldCBlbmFibGVkCisgICAgICAgIGFuZCBkZWZhdWx0IGF0dHJpYnV0
ZXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlTWFuYWdlci5oOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2lv
cy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tOgorICAgICAgICAoLVtXZWJB
VkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyIGluaXRXaXRoQ2FsbGJhY2s6YXVk
aW9TZXNzaW9uOl0pOiBUYWtlCisgICAgICAgIHBhcmVudCBvYmplY3QgYW5kIGF1ZGlvIHNlc3Np
b24uIExpc3RlbiBmb3Igc2Vzc2lvbiByb3V0ZSBjaGFuZ2Ugbm90aWZpY2F0aW9uLgorICAgICAg
ICAoLVtXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyIGludmFsaWRhdGVd
KToKKyAgICAgICAgKC1bV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciBy
b3V0ZURpZENoYW5nZTpdKToKKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZU1hbmFnZXI6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIpOgorICAg
ICAgICBBbGxvY2F0ZSBhbmQgdXNlIGFuIGF1eGlsaWFyeSBhdWRpbyBzZXNzaW9uIGJlY2F1c2Ug
aXQgaXNuJ3QgcG9zc2libGUgdG8gZW51bWVyYXRlCisgICAgICAgIGFsbCBhdWRpbyBpbnB1dHMg
d2l0aG91dCBvbmUuCisgICAgICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyOjphdWRpb1Nlc3Npb25EZXZpY2VXaXRoVUlEKTogTm8gbmVlZAorICAgICAgICB0
byBjYWxsIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzLCBhdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlcyBkb2VzIGl0IGlmIG5lY2Vzc2FyeS4KKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMpOiBO
ZXcsCisgICAgICAgIHJlZnJlc2ggZGV2aWNlcyBvbiBhIHRhc2sgcXVldWUgYmVjYXVzZSB3ZSBm
cmVxdWVudGx5IGdldCBtb3JlIHRoYW4gb25lIG5vdGlmaWNhdGlvbgorICAgICAgICB3aGVuIGEg
cm91dGUgY2hhbmdlcy4KKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURl
dmljZU1hbmFnZXI6OnJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKTogU29ydCBkZXZpY2VzCisg
ICAgICAgIHNvIHRoZSBkZWZhdWx0IGlzIGFsd2F5cyBmaXJzdC4gT25seSBjYWxsIGRldmljZUNo
YW5nZWQgd2hlbiBzb21ldGhpbmcgYWN0dWFsbHkgY2hhbmdlcy4KKyAgICAgICAgKC1bV2ViQVZB
dWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciBpbml0V2l0aENhbGxiYWNrOl0pOiBE
ZWxldGVkLgorICAgICAgICAoLVtXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3Rl
bmVyIG9ic2VydmVWYWx1ZUZvcktleVBhdGg6b2ZPYmplY3Q6Y2hhbmdlOmNvbnRleHQ6XSk6IERl
bGV0ZWQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2Fw
dHVyZURldmljZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXREZXZpY2VJbmZvKTogRGVhbCB3
aXRoIGlucHV0IGFuZCBvdXRwdXQgZGV2aWNlcy4gVHJhbnNsYXRlIHRoZSBkYXRhCisgICAgICAg
IHNvdXJjZSBuYW1lIGlmIHBvc3NpYmxlLgorICAgICAgICAoV2ViQ29yZTo6Q29yZUF1ZGlvQ2Fw
dHVyZURldmljZTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkNvcmVBdWRpb0NhcHR1cmVE
ZXZpY2U6OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2UpOiBTZXQgbmV3IGBkZWZhdWx0YCBhdHRyaWJ1
dGUuCisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpkZWZhdWx0RGV2
aWNlKTogTmV3LgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9D
YXB0dXJlRGV2aWNlLmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29y
ZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29yZUF1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMpOiBO
ZXcsIGNvYWxlc2NlCisgICAgICAgIGNhbGxzIHRvIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2Vz
LgorICAgICAgICAoV2ViQ29yZTo6Q29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OmNvcmVB
dWRpb0NhcHR1cmVEZXZpY2VzKTogCisgICAgICAgIChXZWJDb3JlOjpjb21wdXRlQXVkaW9EZXZp
Y2VMaXN0KTogTm8gbmVlZCB0byBjaGVjayBmb3IgdGhlIGRlZmF1bHQgZGV2aWNlIGV4cGxpY2l0
bHkuCisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVm
cmVzaEF1ZGlvQ2FwdHVyZURldmljZXMpOgorICAgICAgICAoV2ViQ29yZTo6Z2V0RGVmYXVsdENh
cHR1cmVJbnB1dERldmljZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpnZXREZWZhdWx0
Q2FwdHVyZU91dHB1dERldmljZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFz
dHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmg6CisKIDIwMjAtMTEtMDUg
IEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBG
aXggYnVpbGQgYWZ0ZXIgcjI2OTQzNQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggYzk0NmYwNGJhZjk2
MDdlMDkxNTVhOTBiYTk2YTdjOWIwMjZmZmNmZC4uMWEwMTI0YTM3ODIyYjhkMmMxYmY2N2JkNWZl
ZDRjNzNmZjJmODRmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjAt
MTEtMTAgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAg
VVNCIG1pY3JvcGhvbmUgbm90IHJlY29nbml6ZWQgaU9TIFNhZmFyaQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExMTkyCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82MjYwNzMxMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHBhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmg6IERlY2xhcmUgK1tB
VkF1ZGlvU2Vzc2lvbiBpbml0QXV4aWxpYXJ5U2Vzc2lvbl0uCisKIDIwMjAtMTEtMDQgIERhdmlk
IEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWJLaXQgc2hvdWxkIHJl
bW92ZSB1bnVzZWQgZGVidWcgdmFyaWFudCBzdXBwb3J0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RG
L3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJs
ZUNvY29hLmgKaW5kZXggOTA5YTYzNDBlMzE3ZDQzYTViY2JjYmMyYTQzMWZiODhjYTExZjkzNy4u
MGI4YjM3NWFhOGVkZDBkZDA2ZDhhYWEyNDQxYTA5YTg3NGJhZjc0NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1Bs
YXRmb3JtRW5hYmxlQ29jb2EuaApAQCAtNjEwLDcgKzYxMCw3IEBACiAjZGVmaW5lIEVOQUJMRV9X
RUJfUExBWUJBQ0tfQ09OVFJPTFNfTUFOQUdFUiAxCiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVO
QUJMRV9XSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCisjaWYgIWRlZmluZWQoRU5BQkxFX1dJUkVM
RVNTX1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JNKEFQUExFVFYpICYmICFQTEFURk9STShX
QVRDSE9TKQogI2RlZmluZSBFTkFCTEVfV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUIDEKICNlbmRp
ZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVkZvdW5k
YXRpb25TUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlv
blNQSS5oCmluZGV4IGVjNjhiNzhjMjQ0OGQ4Y2M5ZWE1MzEzZWI0NTJhMmQ2MmI1OTAxOGEuLjUy
MzkwMTNiMGUxMGVkYTM5YWMyN2NlMmE5MWQ1ZWM0NGQxMjdhOWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oCkBAIC0zNTQsMTMg
KzM1NCwxOCBAQCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIEBlbmQKICNlbmRpZgogCi0jaWYgIVVT
RShBUFBMRV9JTlRFUk5BTF9TREspICYmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmICFQTEFURk9S
TShJT1NfRkFNSUxZX1NJTVVMQVRPUikgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorI2lmICFV
U0UoQVBQTEVfSU5URVJOQUxfU0RLKSAmJiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCA8
QVZGb3VuZGF0aW9uL0FWQXVkaW9TZXNzaW9uLmg+CiAKIE5TX0FTU1VNRV9OT05OVUxMX0JFR0lO
CiAKIEBpbnRlcmZhY2UgQVZBdWRpb1Nlc3Npb24gKEFWQXVkaW9TZXNzaW9uUHJpdmF0ZSkKKyNp
ZiAhUExBVEZPUk0oTUFDQ0FUQUxZU1QpCistIChpbnN0YW5jZXR5cGUpaW5pdEF1eGlsaWFyeVNl
c3Npb247CisjZW5kaWYKKyNpZiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExF
VFYpCiBAcHJvcGVydHkgKHJlYWRvbmx5KSBOU1N0cmluZyogcm91dGluZ0NvbnRleHRVSUQ7Cisj
ZW5kaWYKIEBlbmQKIAogTlNfQVNTVU1FX05PTk5VTExfRU5ECmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmgKaW5kZXggNGE0OGE5NDNh
NmUzNTZiYmE0ODc1YzI0YzU1OTNmZTk2YzQzOWI3Mi4uNTRlOGFhY2Q0ZTYyMzVkOGU0ZTkyZjM0
MzRjYTg5MjRiZWY0OWI5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vQ2FwdHVyZURldmljZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2UuaApAQCAtNjMsNiArNjMsOSBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBlbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9lbmFibGVkOyB9CiAgICAgdm9pZCBzZXRF
bmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX2VuYWJsZWQgPSBlbmFibGVkOyB9CiAKKyAgICBib29s
IGlzRGVmYXVsdCgpIGNvbnN0IHsgcmV0dXJuIG1fZGVmYXVsdDsgfQorICAgIHZvaWQgc2V0SXNE
ZWZhdWx0KGJvb2wgaXNEZWZhdWx0KSB7IG1fZGVmYXVsdCA9IGlzRGVmYXVsdDsgfQorCiAgICAg
ZXhwbGljaXQgb3BlcmF0b3IgYm9vbCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSAhPSBEZXZpY2VU
eXBlOjpVbmtub3duOyB9CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQpAQCAtNzMsNiArNzYs
NyBAQCBwdWJsaWM6CiAgICAgICAgIGVuY29kZXIgPDwgbV9sYWJlbDsKICAgICAgICAgZW5jb2Rl
ciA8PCBtX2dyb3VwSWQ7CiAgICAgICAgIGVuY29kZXIgPDwgbV9lbmFibGVkOworICAgICAgICBl
bmNvZGVyIDw8IG1fZGVmYXVsdDsKICAgICAgICAgZW5jb2RlciA8PCBtX3R5cGU7CiAgICAgfQog
CkBAIC05OSw2ICsxMDMsMTEgQEAgcHVibGljOgogICAgICAgICBpZiAoIWVuYWJsZWQpCiAgICAg
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGlz
RGVmYXVsdDsKKyAgICAgICAgZGVjb2RlciA+PiBpc0RlZmF1bHQ7CisgICAgICAgIGlmICghaXNE
ZWZhdWx0KQorICAgICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKwogICAgICAgICBPcHRp
b25hbDxDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlPiB0eXBlOwogICAgICAgICBkZWNvZGVyID4+
IHR5cGU7CiAgICAgICAgIGlmICghdHlwZSkKQEAgLTEwNiw2ICsxMTUsNyBAQCBwdWJsaWM6CiAK
ICAgICAgICAgT3B0aW9uYWw8Q2FwdHVyZURldmljZT4gZGV2aWNlID0ge3sgV1RGTW92ZSgqcGVy
c2lzdGVudElkKSwgV1RGTW92ZSgqdHlwZSksIFdURk1vdmUoKmxhYmVsKSwgV1RGTW92ZSgqZ3Jv
dXBJZCkgfX07CiAgICAgICAgIGRldmljZS0+c2V0RW5hYmxlZCgqZW5hYmxlZCk7CisgICAgICAg
IGRldmljZS0+c2V0SXNEZWZhdWx0KCppc0RlZmF1bHQpOwogICAgICAgICByZXR1cm4gZGV2aWNl
OwogICAgIH0KICNlbmRpZgpAQCAtMTE2LDYgKzEyNiw3IEBAIHByaXZhdGU6CiAgICAgU3RyaW5n
IG1fbGFiZWw7CiAgICAgU3RyaW5nIG1fZ3JvdXBJZDsKICAgICBib29sIG1fZW5hYmxlZCB7IGZh
bHNlIH07CisgICAgYm9vbCBtX2RlZmF1bHQgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5oCmluZGV4
IDA5YjgxMzMwZWM1M2QzMTY0MThmNTE4MjFjMWNkNmI5YmI2N2Q1NmYuLjExMDE1ZjY0NGQ0NDhl
YTFiMmZjN2FkNWJjYTg0Mzc0YzRlZGE5YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlLmgKQEAgLTM2LDEzICszNiwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZSA6IHB1YmxpYyBDYXB0dXJlRGV2aWNl
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlIGNyZWF0
ZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiopOworICAgIHN0YXRpYyBBVkF1ZGlvU2Vz
c2lvbkNhcHR1cmVEZXZpY2UgY3JlYXRlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpk
ZXZpY2VJbnB1dCwgQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKmRlZmF1bHRJbnB1dCk7
CiAgICAgdmlydHVhbCB+QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKCkgPSBkZWZhdWx0Owog
CiBwcml2YXRlOgotICAgIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShBVkF1ZGlvU2Vzc2lv
blBvcnREZXNjcmlwdGlvbiosIGNvbnN0IFN0cmluZyYgcGVyc2lzdGVudElELCBjb25zdCBTdHJp
bmcmIGxhYmVsKTsKLQotICAgIFJldGFpblB0cjxBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlv
bj4gbV9wb3J0RGVzY3JpcHRpb247CisgICAgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKEFW
QXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpkZXZpY2VJbnB1dCwgQVZBdWRpb1Nlc3Npb25Q
b3J0RGVzY3JpcHRpb24gKmRlZmF1bHRJbnB1dCk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3Mv
QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5tbQppbmRleCBmYzQx
ODAzN2FjMTkwZjViZDQwNDFmYmQ3M2NiNzk2YzI1MDJmNjE5Li4wZmE3MWZhZDE2ZTJkZDU3MjQ3
ZGYyM2Y3MmI2NmQ3YTBhYjM5YWVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2UubW0KQEAgLTMyLDE5ICszMiwxNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LUFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZSBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6
OmNyZWF0ZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiogcG9ydERlc2NyaXB0aW9uKQor
QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6
Y3JlYXRlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uKiBkZXZpY2VJbnB1dCwgQVZBdWRp
b1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKmRlZmF1bHRJbnB1dCkKIHsKLSAgICBTdHJpbmcgcGVy
c2lzdGVudElEID0gcG9ydERlc2NyaXB0aW9uLlVJRDsKLSAgICBTdHJpbmcgbGFiZWwgPSBwb3J0
RGVzY3JpcHRpb24ucG9ydE5hbWU7Ci0gICAgYXV0byBkZXZpY2UgPSBBVkF1ZGlvU2Vzc2lvbkNh
cHR1cmVEZXZpY2UocG9ydERlc2NyaXB0aW9uLCBwZXJzaXN0ZW50SUQsIGxhYmVsKTsKLSAgICBk
ZXZpY2Uuc2V0RW5hYmxlZChwb3J0RGVzY3JpcHRpb24uZGF0YVNvdXJjZXMuY291bnQpOwotICAg
IHJldHVybiBkZXZpY2U7CisgICAgcmV0dXJuIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShk
ZXZpY2VJbnB1dCwgZGVmYXVsdElucHV0KTsKIH0KIAotQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3Jp
cHRpb24qIHBvcnREZXNjcmlwdGlvbiwgY29uc3QgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIGNvbnN0
IFN0cmluZyYgbGFiZWwpCi0gICAgOiBDYXB0dXJlRGV2aWNlKHBlcnNpc3RlbnRJRCwgQ2FwdHVy
ZURldmljZTo6RGV2aWNlVHlwZTo6TWljcm9waG9uZSwgbGFiZWwpCi0gICAgLCBtX3BvcnREZXNj
cmlwdGlvbihwb3J0RGVzY3JpcHRpb24pCitBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OkFW
QXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAq
ZGV2aWNlSW5wdXQsIEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpkZWZhdWx0SW5wdXQp
CisgICAgOiBDYXB0dXJlRGV2aWNlKGRldmljZUlucHV0LlVJRCwgQ2FwdHVyZURldmljZTo6RGV2
aWNlVHlwZTo6TWljcm9waG9uZSwgZGV2aWNlSW5wdXQucG9ydE5hbWUpCiB7CisgICAgc2V0RW5h
YmxlZCh0cnVlKTsKKyAgICBzZXRJc0RlZmF1bHQoZGVmYXVsdElucHV0ICYmIFtkZWZhdWx0SW5w
dXQuVUlEIGlzRXF1YWxUb1N0cmluZzpkZXZpY2VJbnB1dC5VSURdKTsKIH0KIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggMzk5
NjE2ODc5YzUxZmE4ODRjYTc4YjMwOGVhZDNmN2YzNzQzNGY3MC4uNmFiNGUyYzc0MmQzMWU0YmZj
ZDhjNWViOTg3ZDkxMTU2MTVkM2NjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlTWFuYWdlci5oCkBAIC0yOCwxMCArMjgsMTIgQEAKICNpZiBFTkFCTEUo
TUVESUFfU1RSRUFNKSAmJiBQTEFURk9STShJT1NfRkFNSUxZKQogCiAjaW5jbHVkZSAiQ2FwdHVy
ZURldmljZU1hbmFnZXIuaCIKKyNpbmNsdWRlICJHZW5lcmljVGFza1F1ZXVlLmgiCiAjaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0
Zi9SZXRhaW5QdHIuaD4KIAorT0JKQ19DTEFTUyBBVkF1ZGlvU2Vzc2lvbjsKIE9CSkNfQ0xBU1Mg
V2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lcjsKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpAQCAtNDgsMTkgKzUwLDIzIEBAIHB1YmxpYzoKICAgICBjb25zdCBWZWN0b3I8Q2Fw
dHVyZURldmljZT4mIHNwZWFrZXJEZXZpY2VzKCkgY29uc3QgeyByZXR1cm4gbV9zcGVha2VyRGV2
aWNlczsgfQogICAgIE9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IGNhcHR1cmVEZXZpY2VXaXRoUGVy
c2lzdGVudElEKENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGUsIGNvbnN0IFN0cmluZyYpOwogCi0g
ICAgVmVjdG9yPEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZT4mIGF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2VzKCk7CiAgICAgT3B0aW9uYWw8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiBh
dWRpb1Nlc3Npb25EZXZpY2VXaXRoVUlEKGNvbnN0IFN0cmluZyYpOworICAgIAorICAgIHZvaWQg
c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcygpOwogCiBwcml2YXRlOgotICAgIEFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIoKSA9IGRlZmF1bHQ7CisgICAgQVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlTWFuYWdlcigpOwogICAgIH5BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyKCk7CiAKICAgICB2b2lkIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7Cisg
ICAgVmVjdG9yPEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZT4mIGF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2VzKCk7CiAKICAgICBPcHRpb25hbDxWZWN0b3I8Q2FwdHVyZURldmljZT4+IG1fZGV2
aWNlczsKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9zcGVha2VyRGV2aWNlczsKICAgICBP
cHRpb25hbDxWZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPj4gbV9hdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlczsKICAgICBSZXRhaW5QdHI8V2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFi
bGVJbnB1dHNMaXN0ZW5lcj4gbV9saXN0ZW5lcjsKKyAgICBSZXRhaW5QdHI8QVZBdWRpb1Nlc3Np
b24+IG1fYXVkaW9TZXNzaW9uOworICAgIEdlbmVyaWNUYXNrUXVldWU8VGltZXI+IG1fdXBkYXRl
RGV2aWNlU3RhdGVRdWV1ZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0KaW5kZXggNDYw
NTBkOTM4MzRmM2E5MzdmZWUzNzU1NzM3ZGVhYTRlMmM5YzBhNS4uMzI4MjBiMDc5OTViMjBlYzlj
MWFiY2I0NDJhNmY3NGY5MDY1NzI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0KQEAgLTMxLDQxICszMSw0NSBAQAogI2ltcG9ydCAi
QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmgiCiAjaW1wb3J0ICJSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmgiCiAjaW1wb3J0IDxBVkZvdW5kYXRpb24vQVZBdWRpb1Nlc3Npb24uaD4KKyNp
bXBvcnQgPHBhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmg+CisjaW1wb3J0IDx3dGYvQXNz
ZXJ0aW9ucy5oPgogI2ltcG9ydCA8d3RmL1ZlY3Rvci5oPgogCiAjaW1wb3J0IDxwYWwvY29jb2Ev
QVZGb3VuZGF0aW9uU29mdExpbmsuaD4KIAotdm9pZCogQXZhaWxhYmxlSW5wdXRzQ29udGV4dCA9
ICZBdmFpbGFibGVJbnB1dHNDb250ZXh0OwotCiBAaW50ZXJmYWNlIFdlYkFWQXVkaW9TZXNzaW9u
QXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgOiBOU09iamVjdCB7Ci0gICAgV1RGOjpGdW5jdGlvbjx2
b2lkKCk+IF9jYWxsYmFjazsKKyAgICBXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyKiBfY2FsbGJhY2s7CiB9CiBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJBVkF1
ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyCi0tIChpZClpbml0V2l0aENhbGxiYWNr
OihXVEY6OkZ1bmN0aW9uPHZvaWQoKT4mJiljYWxsYmFjaworLSAoaWQpaW5pdFdpdGhDYWxsYmFj
azooV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlciAqKWNhbGxiYWNr
IGF1ZGlvU2Vzc2lvbjooQVZBdWRpb1Nlc3Npb24gKilzZXNzaW9uCiB7CiAgICAgc2VsZiA9IFtz
dXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7CiAKLSAgICBf
Y2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKTsKKyAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVy
IGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHJvdXRl
RGlkQ2hhbmdlOikgbmFtZTpQQUw6OmdldF9BVkZvdW5kYXRpb25fQVZBdWRpb1Nlc3Npb25Sb3V0
ZUNoYW5nZU5vdGlmaWNhdGlvbigpIG9iamVjdDpzZXNzaW9uXTsKKworICAgIF9jYWxsYmFjayA9
IGNhbGxiYWNrOworCiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKIC0gKHZvaWQpaW52YWxpZGF0ZQog
ewogICAgIF9jYWxsYmFjayA9IG51bGxwdHI7CisgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBk
ZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmXTsKIH0KIAotLSAodm9pZClvYnNlcnZl
VmFsdWVGb3JLZXlQYXRoOihOU1N0cmluZyAqKWtleVBhdGggb2ZPYmplY3Q6KGlkKW9iamVjdCBj
aGFuZ2U6KE5TRGljdGlvbmFyeTxOU0tleVZhbHVlQ2hhbmdlS2V5LCBpZD4gKiljaGFuZ2UgY29u
dGV4dDoodm9pZCAqKWNvbnRleHQKKy0gKHZvaWQpcm91dGVEaWRDaGFuZ2U6KE5TTm90aWZpY2F0
aW9uICopbm90aWZpY2F0aW9uCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGtleVBhdGgpOwotICAgIFVO
VVNFRF9QQVJBTShvYmplY3QpOwotICAgIFVOVVNFRF9QQVJBTShjaGFuZ2UpOwotICAgIGlmIChj
b250ZXh0ID09IEF2YWlsYWJsZUlucHV0c0NvbnRleHQgJiYgX2NhbGxiYWNrKQotICAgICAgICBf
Y2FsbGJhY2soKTsKKyAgICBpZiAoIV9jYWxsYmFjaykKKyAgICAgICAgcmV0dXJuOworCisgICAg
X2NhbGxiYWNrLT5zY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCk7CiB9CisKIEBlbmQKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNzYsNiArODAsMjQgQEAgQVZBdWRpb1Nlc3Npb25DYXB0
dXJlRGV2aWNlTWFuYWdlciYgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6c2lu
Z2xldG8KICAgICByZXR1cm4gbWFuYWdlcjsKIH0KIAorQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlTWFuYWdlcjo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcigpCit7CisjaWYg
IVBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorICAgIG1fYXVkaW9TZXNzaW9uID0gYWRvcHROUyhbW1BB
TDo6Z2V0QVZBdWRpb1Nlc3Npb25DbGFzcygpIGFsbG9jXSBpbml0QXV4aWxpYXJ5U2Vzc2lvbl0p
OworI2Vsc2UKKyAgICAvLyBGSVhNRTogRmlndXJlIG91dCBpZiB0aGlzIGlzIGNvcnJlY3QgZm9y
IENhdGFseXN0LCB3aGVyZSBhdXhpbGlhcnkgc2Vzc2lvbiBpc24ndCBhdmFpbGFibGUuCisgICAg
bV9hdWRpb1Nlc3Npb24gPSBbUEFMOjpnZXRBVkF1ZGlvU2Vzc2lvbkNsYXNzKCkgc2hhcmVkSW5z
dGFuY2VdOworI2VuZGlmCisgICAgCisgICAgTlNFcnJvciAqZXJyb3IgPSBuaWw7CisgICAgYXV0
byBvcHRpb25zID0gQVZBdWRpb1Nlc3Npb25DYXRlZ29yeU9wdGlvbkFsbG93Qmx1ZXRvb3RoIHwg
QVZBdWRpb1Nlc3Npb25DYXRlZ29yeU9wdGlvbk1peFdpdGhPdGhlcnM7CisgICAgW21fYXVkaW9T
ZXNzaW9uIHNldENhdGVnb3J5OkFWQXVkaW9TZXNzaW9uQ2F0ZWdvcnlQbGF5QW5kUmVjb3JkIG1v
ZGU6QVZBdWRpb1Nlc3Npb25Nb2RlVmlkZW9DaGF0IG9wdGlvbnM6b3B0aW9ucyBlcnJvcjomZXJy
b3JdOworICAgIGlmIChlcnJvcikgeworICAgICAgICBMT0dfRVJST1IoIkZhaWxlZCB0byBzZXQg
YXVkaW8gc2Vzc2lvbiBjYXRlZ29yeSB3aXRoIGVycm9yOiAlQC4iLCBlcnJvci5sb2NhbGl6ZWRE
ZXNjcmlwdGlvbik7CisgICAgICAgIHJldHVybjsKKyAgICB9Cit9CisKIEFWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZU1hbmFnZXI6On5BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2Vy
KCkKIHsKICAgICBbbV9saXN0ZW5lciBpbnZhbGlkYXRlXTsKQEAgLTEwOCw5ICsxMzAsNiBAQCBW
ZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiYgQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlTWFuYWdlcjo6YXVkaW9TZQogCiBPcHRpb25hbDxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2U+IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlvU2Vzc2lvbkRl
dmljZVdpdGhVSUQoY29uc3QgU3RyaW5nJiBkZXZpY2VJRCkKIHsKLSAgICBpZiAoIW1fYXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZXMpCi0gICAgICAgIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2Vz
KCk7Ci0KICAgICBmb3IgKGF1dG8mIGRldmljZSA6IGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2Vz
KCkpIHsKICAgICAgICAgaWYgKGRldmljZS5wZXJzaXN0ZW50SWQoKSA9PSBkZXZpY2VJRCkKICAg
ICAgICAgICAgIHJldHVybiBkZXZpY2U7CkBAIC0xMTgsMzAgKzEzNyw1OSBAQCBPcHRpb25hbDxB
VkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1h
bmFnZXI6OmF1ZGlvUwogICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiB9CiAKK3ZvaWQgQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNl
cygpCit7CisgICAgaWYgKG1fdXBkYXRlRGV2aWNlU3RhdGVRdWV1ZS5oYXNQZW5kaW5nVGFza3Mo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlLmVucXVl
dWVUYXNrKFt0aGlzXSB7CisgICAgICAgIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7Cisg
ICAgfSk7Cit9CisKIHZvaWQgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVm
cmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoKQogewotICAgIGlmICghbV9saXN0ZW5lcikgewotICAg
ICAgICBtX2xpc3RlbmVyID0gYWRvcHROUyhbW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5w
dXRzTGlzdGVuZXIgYWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6W3RoaXNdIHsKLSAgICAgICAgICAg
IHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7Ci0gICAgICAgIH1dKTsKLSAgICAgICAgW1tQ
QUw6OmdldEFWQXVkaW9TZXNzaW9uQ2xhc3MoKSBzaGFyZWRJbnN0YW5jZV0gYWRkT2JzZXJ2ZXI6
bV9saXN0ZW5lci5nZXQoKSBmb3JLZXlQYXRoOkAiYXZhaWxhYmxlSW5wdXRzIiBvcHRpb25zOjAg
Y29udGV4dDpBdmFpbGFibGVJbnB1dHNDb250ZXh0XTsKLSAgICB9CisgICAgaWYgKCFtX2xpc3Rl
bmVyKQorICAgICAgICBtX2xpc3RlbmVyID0gYWRvcHROUyhbW1dlYkFWQXVkaW9TZXNzaW9uQXZh
aWxhYmxlSW5wdXRzTGlzdGVuZXIgYWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6dGhpcyBhdWRpb1Nl
c3Npb246bV9hdWRpb1Nlc3Npb24uZ2V0KCldKTsKKworICAgIE5TRXJyb3IgKmVycm9yID0gbmls
OworICAgIFttX2F1ZGlvU2Vzc2lvbiBzZXRBY3RpdmU6WUVTIHdpdGhPcHRpb25zOjAgZXJyb3I6
JmVycm9yXTsKKyAgICBpZiAoZXJyb3IpCisgICAgICAgIExPR19FUlJPUigiRmFpbGVkIHRvIGFj
dGl2YXRlIGF1ZGlvIHNlc3Npb24gd2l0aCBlcnJvcjogJUAuIiwgZXJyb3IubG9jYWxpemVkRGVz
Y3JpcHRpb24pOwogCiAgICAgVmVjdG9yPEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZT4gbmV3
QXVkaW9EZXZpY2VzOwogICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBuZXdEZXZpY2VzOwotCi0g
ICAgZm9yIChBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqcG9ydERlc2NyaXB0aW9uIGlu
IFtQQUw6OmdldEFWQXVkaW9TZXNzaW9uQ2xhc3MoKSBzaGFyZWRJbnN0YW5jZV0uYXZhaWxhYmxl
SW5wdXRzKSB7Ci0gICAgICAgIGF1dG8gYXVkaW9EZXZpY2UgPSBBVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2U6OmNyZWF0ZShwb3J0RGVzY3JpcHRpb24pOworICAgIGF1dG8gKmRlZmF1bHRJbnB1
dCA9IFttX2F1ZGlvU2Vzc2lvbiBjdXJyZW50Um91dGVdLmlucHV0cy5maXJzdE9iamVjdDsKKyAg
ICBmb3IgKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpwb3J0RGVzY3JpcHRpb24gaW4g
W21fYXVkaW9TZXNzaW9uIGF2YWlsYWJsZUlucHV0c10pIHsKKyAgICAgICAgYXV0byBhdWRpb0Rl
dmljZSA9IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6Y3JlYXRlKHBvcnREZXNjcmlwdGlv
biwgZGVmYXVsdElucHV0KTsKICAgICAgICAgbmV3RGV2aWNlcy5hcHBlbmQoYXVkaW9EZXZpY2Up
OwogICAgICAgICBuZXdBdWRpb0RldmljZXMuYXBwZW5kKFdURk1vdmUoYXVkaW9EZXZpY2UpKTsK
ICAgICB9CiAKKyAgICBib29sIGZpcnN0VGltZSA9ICFtX2RldmljZXM7CisgICAgYm9vbCBoYXZl
RGV2aWNlQ2hhbmdlcyA9ICFtX2RldmljZXMgfHwgbmV3QXVkaW9EZXZpY2VzLnNpemUoKSAhPSBt
X2RldmljZXMtPnNpemUoKTsKKyAgICBpZiAoIWhhdmVEZXZpY2VDaGFuZ2VzKSB7CisgICAgICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbmV3QXVkaW9EZXZpY2VzLnNpemUoKTsgKytpKSB7Cisg
ICAgICAgICAgICBhdXRvJiBvbGRTdGF0ZSA9ICgqbV9kZXZpY2VzKVtpXTsKKyAgICAgICAgICAg
IGF1dG8mIG5ld1N0YXRlID0gbmV3QXVkaW9EZXZpY2VzW2ldOworICAgICAgICAgICAgaWYgKG5l
d1N0YXRlLnR5cGUoKSAhPSBvbGRTdGF0ZS50eXBlKCkgfHwgbmV3U3RhdGUucGVyc2lzdGVudElk
KCkgIT0gb2xkU3RhdGUucGVyc2lzdGVudElkKCkgfHwgbmV3U3RhdGUuZW5hYmxlZCgpICE9IG9s
ZFN0YXRlLmVuYWJsZWQoKSB8fCBuZXdTdGF0ZS5pc0RlZmF1bHQoKSAhPSBvbGRTdGF0ZS5pc0Rl
ZmF1bHQoKSkKKyAgICAgICAgICAgICAgICBoYXZlRGV2aWNlQ2hhbmdlcyA9IHRydWU7CisgICAg
ICAgIH0KKyAgICB9CisKKyAgICBpZiAoIWhhdmVEZXZpY2VDaGFuZ2VzICYmICFmaXJzdFRpbWUp
CisgICAgICAgIHJldHVybjsKKwogICAgIG1fYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXMgPSBX
VEZNb3ZlKG5ld0F1ZGlvRGV2aWNlcyk7CisgICAgc3RkOjpzb3J0KG5ld0RldmljZXMuYmVnaW4o
KSwgbmV3RGV2aWNlcy5lbmQoKSwgW10gKGF1dG8mIGZpcnN0LCBhdXRvJiBzZWNvbmQpIC0+IGJv
b2wgeworICAgICAgICByZXR1cm4gZmlyc3QuaXNEZWZhdWx0KCkgJiYgIXNlY29uZC5pc0RlZmF1
bHQoKTsKKyAgICB9KTsKICAgICBtX2RldmljZXMgPSBXVEZNb3ZlKG5ld0RldmljZXMpOwogCi0g
ICAgZGV2aWNlQ2hhbmdlZCgpOworICAgIGlmICghZmlyc3RUaW1lKQorICAgICAgICBkZXZpY2VD
aGFuZ2VkKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJM
RShNRURJQV9TVFJFQU0pICYmIFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBFTkFCTEUoTUVESUFf
U1RSRUFNKSAmJiBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVE
ZXZpY2UuY3BwCmluZGV4IGY1ZWI2ODBlNGQ5MDNjMmY3NzdjMGRmNGM2ZmE3ZTY5YmJlOTNjM2Yu
LmYxMzA1ZGVjYzVmYjNmMDdlMDE4ODI1NTExMjVjMzJmNGMzYzZkMTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2
aWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29y
ZUF1ZGlvQ2FwdHVyZURldmljZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIHVzaW5nIG5hbWVzcGFjZSBQQUw7CiAKLXN0YXRpYyBib29sIGdldERldmljZUluZm8o
dWludDMyX3QgZGV2aWNlSUQsIFN0cmluZyYgcGVyc2lzdGVudElELCBTdHJpbmcmIGxhYmVsKQor
c3RhdGljIGJvb2wgZ2V0RGV2aWNlSW5mbyh1aW50MzJfdCBkZXZpY2VJRCwgQ2FwdHVyZURldmlj
ZTo6RGV2aWNlVHlwZSB0eXBlLCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgU3RyaW5nJiBsYWJlbCkK
IHsKICAgICBDRlN0cmluZ1JlZiB1bmlxdWVJRDsKICAgICBBdWRpb09iamVjdFByb3BlcnR5QWRk
cmVzcyBhZGRyZXNzIHsga0F1ZGlvRGV2aWNlUHJvcGVydHlEZXZpY2VVSUQsIGtBdWRpb0Rldmlj
ZVByb3BlcnR5U2NvcGVJbnB1dCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07
CkBAIC01MSwxNCArNTEsMzAgQEAgc3RhdGljIGJvb2wgZ2V0RGV2aWNlSW5mbyh1aW50MzJfdCBk
ZXZpY2VJRCwgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIFN0cmluZyYgbGFiZWwKICAgICBwZXJzaXN0
ZW50SUQgPSB1bmlxdWVJRDsKICAgICBDRlJlbGVhc2UodW5pcXVlSUQpOwogCi0gICAgQ0ZTdHJp
bmdSZWYgbG9jYWxpemVkTmFtZTsKLSAgICBhZGRyZXNzID0geyBrQXVkaW9PYmplY3RQcm9wZXJ0
eU5hbWUsIGtBdWRpb09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3Bl
cnR5RWxlbWVudE1hc3RlciB9OwotICAgIGRhdGFTaXplID0gc2l6ZW9mKGxvY2FsaXplZE5hbWUp
OwotICAgIGVyciA9IEF1ZGlvT2JqZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQz
Mj4oZGV2aWNlSUQpLCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmbG9jYWxpemVk
TmFtZSk7CisgICAgQ0ZTdHJpbmdSZWYgbG9jYWxpemVkTmFtZSA9IG51bGxwdHI7CisgICAgQXVk
aW9PYmplY3RQcm9wZXJ0eVNjb3BlIHNjb3BlID0gdHlwZSA9PSBDYXB0dXJlRGV2aWNlOjpEZXZp
Y2VUeXBlOjpNaWNyb3Bob25lID8ga0F1ZGlvRGV2aWNlUHJvcGVydHlTY29wZUlucHV0IDoga0F1
ZGlvRGV2aWNlUHJvcGVydHlTY29wZU91dHB1dDsKKyAgICBhZGRyZXNzID0geyBrQXVkaW9EZXZp
Y2VQcm9wZXJ0eURhdGFTb3VyY2UsIHNjb3BlLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRN
YXN0ZXIgfTsKKyAgICB1aW50MzJfdCBzb3VyY2VJRDsKKyAgICBkYXRhU2l6ZSA9IHNpemVvZihz
b3VyY2VJRCk7CisgICAgZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nh
c3Q8VUludDMyPihkZXZpY2VJRCksICZhZGRyZXNzLCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZz
b3VyY2VJRCk7CisgICAgaWYgKCFlcnIpIHsKKyAgICAgICAgQXVkaW9WYWx1ZVRyYW5zbGF0aW9u
IHRyYW5zbGF0aW9uID0geyAmZGV2aWNlSUQsIHNpemVvZihkZXZpY2VJRCksICZsb2NhbGl6ZWRO
YW1lLCBzaXplb2YobG9jYWxpemVkTmFtZSkgfTsKKyAgICAgICAgYWRkcmVzcyA9IHsga0F1ZGlv
RGV2aWNlUHJvcGVydHlEYXRhU291cmNlTmFtZUZvcklEQ0ZTdHJpbmcsIHNjb3BlLCBrQXVkaW9P
YmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKKyAgICAgICAgZGF0YVNpemUgPSBzaXplb2Yo
dHJhbnNsYXRpb24pOworICAgICAgICBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShz
dGF0aWNfY2FzdDxVSW50MzI+KGRldmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRh
U2l6ZSwgJnRyYW5zbGF0aW9uKTsKKyAgICB9CisKKyAgICBpZiAoZXJyIHx8ICFsb2NhbGl6ZWRO
YW1lIHx8ICFDRlN0cmluZ0dldExlbmd0aChsb2NhbGl6ZWROYW1lKSkgeworICAgICAgICBhZGRy
ZXNzID0geyBrQXVkaW9PYmplY3RQcm9wZXJ0eU5hbWUsIGtBdWRpb09iamVjdFByb3BlcnR5U2Nv
cGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OworICAgICAgICBk
YXRhU2l6ZSA9IHNpemVvZihsb2NhbGl6ZWROYW1lKTsKKyAgICAgICAgZXJyID0gQXVkaW9PYmpl
Y3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nhc3Q8VUludDMyPihkZXZpY2VJRCksICZhZGRyZXNz
LCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZsb2NhbGl6ZWROYW1lKTsKKyAgICB9CisKICAgICBp
ZiAoZXJyKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKFdlYlJUQywgIkNvcmVBdWRpb0Nh
cHR1cmVEZXZpY2U6OmdldERldmljZUluZm8gZmFpbGVkIHRvIGdldCBkZXZpY2UgbmFtZSB3aXRo
IGVycm9yICVkICglLjRzKSIsIChpbnQpZXJyLCAoY2hhciopJmVycik7CiAgICAgICAgIHJldHVy
biBmYWxzZTsKICAgICB9CisKICAgICBsYWJlbCA9IGxvY2FsaXplZE5hbWU7CiAgICAgQ0ZSZWxl
YXNlKGxvY2FsaXplZE5hbWUpOwogCkBAIC03MCw3ICs4Niw3IEBAIE9wdGlvbmFsPENvcmVBdWRp
b0NhcHR1cmVEZXZpY2U+IENvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmNyZWF0ZSh1aW50MzJfdCBk
ZXZpY2VJCiAgICAgQVNTRVJUKHR5cGUgPT0gQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6TWlj
cm9waG9uZSB8fCB0eXBlID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6OlNwZWFrZXIpOwog
ICAgIFN0cmluZyBwZXJzaXN0ZW50SUQ7CiAgICAgU3RyaW5nIGxhYmVsOwotICAgIGlmICghZ2V0
RGV2aWNlSW5mbyhkZXZpY2VJRCwgcGVyc2lzdGVudElELCBsYWJlbCkpCisgICAgaWYgKCFnZXRE
ZXZpY2VJbmZvKGRldmljZUlELCB0eXBlLCBwZXJzaXN0ZW50SUQsIGxhYmVsKSkKICAgICAgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKIAogICAgIHJldHVybiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNl
KGRldmljZUlELCBwZXJzaXN0ZW50SUQsIHR5cGUsIGxhYmVsLCBncm91cElELmlzTnVsbCgpID8g
cGVyc2lzdGVudElEIDogZ3JvdXBJRCk7CkBAIC04MCw3ICs5NiwxOCBAQCBDb3JlQXVkaW9DYXB0
dXJlRGV2aWNlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlKHVpbnQzMl90IGRldmljZUlELCBjb25z
dCBTdHJpbmcmCiAgICAgOiBDYXB0dXJlRGV2aWNlKHBlcnNpc3RlbnRJRCwgZGV2aWNlVHlwZSwg
bGFiZWwsIGdyb3VwSUQpCiAgICAgLCBtX2RldmljZUlEKGRldmljZUlEKQogewotICAgIHNldEVu
YWJsZWQoaXNBbGl2ZSgpKTsKKyAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNz
IHsga0F1ZGlvRGV2aWNlUHJvcGVydHlEZXZpY2VJc0FsaXZlLCBrQXVkaW9PYmplY3RQcm9wZXJ0
eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKKyAgICBV
SW50MzIgc3RhdGUgPSAwOworICAgIFVJbnQzMiBkYXRhU2l6ZSA9IHNpemVvZihzdGF0ZSk7Cisg
ICAgYXV0byBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0aWNfY2FzdDxVSW50
MzI+KG1fZGV2aWNlSUQpLCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmc3RhdGUp
OworICAgIHNldEVuYWJsZWQoIWVyciAmJiBzdGF0ZSk7CisKKyAgICBVSW50MzIgcHJvcGVydHkg
PSBkZXZpY2VUeXBlID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUgPyBr
QXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlIDoga0F1ZGlvSGFyZHdhcmVQ
cm9wZXJ0eURlZmF1bHRPdXRwdXREZXZpY2U7CisgICAgYWRkcmVzcyA9IHsgcHJvcGVydHksIGtB
dWRpb09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVu
dE1hc3RlciB9OworICAgIEF1ZGlvRGV2aWNlSUQgZGVmYXVsdElEID0ga0F1ZGlvRGV2aWNlVW5r
bm93bjsKKyAgICBkYXRhU2l6ZSA9IHNpemVvZihkZWZhdWx0SUQpOworICAgIGVyciA9IEF1ZGlv
T2JqZWN0R2V0UHJvcGVydHlEYXRhKGtBdWRpb09iamVjdFN5c3RlbU9iamVjdCwgJmFkZHJlc3Ms
IDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJmRlZmF1bHRJRCk7CisgICAgc2V0SXNEZWZhdWx0KCFl
cnIgJiYgZGVmYXVsdElEID09IG1fZGV2aWNlSUQpOwogfQogCiBWZWN0b3I8QXVkaW9EZXZpY2VJ
RD4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6cmVsYXRlZEF1ZGlvRGV2aWNlSURzKEF1ZGlvRGV2
aWNlSUQgZGV2aWNlSUQpCkBAIC0xMTUsMTYgKzE0Miw2IEBAIFJldGFpblB0cjxDTUNsb2NrUmVm
PiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpkZXZpY2VDbG9jaygpCiAgICAgcmV0dXJuIG1fZGV2
aWNlQ2xvY2s7CiB9CiAKLWJvb2wgQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6aXNBbGl2ZSgpCi17
Ci0gICAgQXVkaW9PYmplY3RQcm9wZXJ0eUFkZHJlc3MgYWRkcmVzcyA9IHsga0F1ZGlvRGV2aWNl
UHJvcGVydHlEZXZpY2VJc0FsaXZlLCBrQXVkaW9PYmplY3RQcm9wZXJ0eVNjb3BlR2xvYmFsLCBr
QXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKLSAgICBVSW50MzIgc3RhdGUgPSAw
OwotICAgIFVJbnQzMiBkYXRhU2l6ZSA9IHNpemVvZihzdGF0ZSk7Ci0gICAgaWYgKEF1ZGlvT2Jq
ZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQzMj4obV9kZXZpY2VJRCksICZhZGRy
ZXNzLCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZzdGF0ZSkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICByZXR1cm4gc3RhdGU7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2Vu
ZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pICYmIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJl
RGV2aWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1
ZGlvQ2FwdHVyZURldmljZS5oCmluZGV4IDI2ODdiZmM2M2Y2NjNjYzYyMWIyZWRlNDNmNGFhZTky
NjhjZTdhNWMuLmNkZTkxYzE4NDYxMDE0NThiMWUxZGVmZWI0YjczMTJlNGExNTMyOTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9D
YXB0dXJlRGV2aWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaApAQCAtNDgsNyArNDgsNiBAQCBwdWJsaWM6CiAK
IHByaXZhdGU6CiAgICAgQ29yZUF1ZGlvQ2FwdHVyZURldmljZSh1aW50MzJfdCwgY29uc3QgU3Ry
aW5nJiBwZXJzaXN0ZW50SUQsIERldmljZVR5cGUsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0
IFN0cmluZyYgZ3JvdXBJRCk7Ci0gICAgYm9vbCBpc0FsaXZlKCk7CiAKICAgICB1aW50MzJfdCBt
X2RldmljZUlEIHsgMCB9OwogICAgIFJldGFpblB0cjxDTUNsb2NrUmVmPiBtX2RldmljZUNsb2Nr
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0Nv
cmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKaW5kZXgg
NzAwZWVkOWVkOGFmMWY5NzA1YWU0NjdkNjhlYjZlNjEzZmIwMzIwMC4uNDkzZDdmMDhhZDlmODRj
NWRhNjQ5Nzk3MzYzYTM4YzJiZjIxYWIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2Fw
dHVyZURldmljZU1hbmFnZXIuY3BwCkBAIC0xMjgsMjggKzEyOCwxNCBAQCBzdGF0aWMgYm9vbCBp
c1ZhbGlkQ2FwdHVyZURldmljZShjb25zdCBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlJiBkZXZpY2Up
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXN0YXRpYyBpbmxpbmUgT3B0aW9uYWw8Q29yZUF1ZGlv
Q2FwdHVyZURldmljZT4gZ2V0RGVmYXVsdENhcHR1cmVJbnB1dERldmljZSgpCit2b2lkIENvcmVB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCkK
IHsKLSAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzIHsga0F1ZGlvSGFyZHdh
cmVQcm9wZXJ0eURlZmF1bHRJbnB1dERldmljZSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUds
b2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07Ci0gICAgVUludDMyIHBy
b3BlcnR5U2l6ZSA9IHNpemVvZihBdWRpb0RldmljZUlEKTsKLSAgICBBdWRpb0RldmljZUlEIGRl
dmljZUlEID0ga0F1ZGlvRGV2aWNlVW5rbm93bjsKLSAgICBhdXRvIGVyciA9IEF1ZGlvT2JqZWN0
R2V0UHJvcGVydHlEYXRhKGtBdWRpb09iamVjdFN5c3RlbU9iamVjdCwgJmFkZHJlc3MsIDAsIG51
bGxwdHIsICZwcm9wZXJ0eVNpemUsICZkZXZpY2VJRCk7Ci0KLSAgICBpZiAoZXJyICE9IG5vRXJy
IHx8IGRldmljZUlEID09IGtBdWRpb0RldmljZVVua25vd24pCi0gICAgICAgIHJldHVybiB7IH07
Ci0gICAgcmV0dXJuIENvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmNyZWF0ZShkZXZpY2VJRCwgQ2Fw
dHVyZURldmljZTo6RGV2aWNlVHlwZTo6TWljcm9waG9uZSwgeyB9KTsKLX0KLQotc3RhdGljIGlu
bGluZSBPcHRpb25hbDxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBnZXREZWZhdWx0Q2FwdHVyZU91
dHB1dERldmljZSgpCi17Ci0gICAgQXVkaW9PYmplY3RQcm9wZXJ0eUFkZHJlc3MgYWRkcmVzcyB7
IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlEZWZhdWx0T3V0cHV0RGV2aWNlLCBrQXVkaW9PYmplY3RQ
cm9wZXJ0eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsK
LSAgICBVSW50MzIgcHJvcGVydHlTaXplID0gc2l6ZW9mKEF1ZGlvRGV2aWNlSUQpOwotICAgIEF1
ZGlvRGV2aWNlSUQgZGV2aWNlSUQgPSBrQXVkaW9EZXZpY2VVbmtub3duOwotICAgIGF1dG8gZXJy
ID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAm
YWRkcmVzcywgMCwgbnVsbHB0ciwgJnByb3BlcnR5U2l6ZSwgJmRldmljZUlEKTsKKyAgICBpZiAo
bV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlLmhhc1BlbmRpbmdUYXNrcygpKQorICAgICAgICByZXR1
cm47CiAKLSAgICBpZiAoZXJyICE9IG5vRXJyIHx8IGRldmljZUlEID09IGtBdWRpb0RldmljZVVu
a25vd24pCi0gICAgICAgIHJldHVybiB7IH07Ci0gICAgcmV0dXJuIENvcmVBdWRpb0NhcHR1cmVE
ZXZpY2U6OmNyZWF0ZShkZXZpY2VJRCwgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6U3BlYWtl
ciwgeyB9KTsKKyAgICBtX3VwZGF0ZURldmljZVN0YXRlUXVldWUuZW5xdWV1ZVRhc2soW3RoaXNd
IHsKKyAgICAgICAgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoTm90aWZ5SWZEZXZpY2VzSGF2
ZUNoYW5nZWQ6Ok5vdGlmeSk7CisgICAgfSk7CiB9CiAKIFZlY3RvcjxDb3JlQXVkaW9DYXB0dXJl
RGV2aWNlPiYgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OmNvcmVBdWRpb0NhcHR1cmVE
ZXZpY2VzKCkKQEAgLTE2NSw3ICsxNTEsNyBAQCBWZWN0b3I8Q29yZUF1ZGlvQ2FwdHVyZURldmlj
ZT4mIENvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpjb3JlQXVkaW9DYXB0dXJlRAogICAg
ICAgICAgICAgICAgIG5vdGlmeSB8PSAocHJvcGVydGllc1tpXS5tU2VsZWN0b3IgPT0ga0F1ZGlv
SGFyZHdhcmVQcm9wZXJ0eURldmljZXMgfHwgcHJvcGVydGllc1tpXS5tU2VsZWN0b3IgPT0ga0F1
ZGlvSGFyZHdhcmVQcm9wZXJ0eURlZmF1bHRJbnB1dERldmljZSB8fCBwcm9wZXJ0aWVzW2ldLm1T
ZWxlY3RvciA9PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdE91dHB1dERldmljZSk7CiAK
ICAgICAgICAgICAgIGlmIChub3RpZnkpCi0gICAgICAgICAgICAgICAgQ29yZUF1ZGlvQ2FwdHVy
ZURldmljZU1hbmFnZXI6OnNpbmdsZXRvbigpLnJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKE5v
dGlmeUlmRGV2aWNlc0hhdmVDaGFuZ2VkOjpOb3RpZnkpOworICAgICAgICAgICAgICAgIENvcmVB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0b24oKS5zY2hlZHVsZVVwZGF0ZUNhcHR1
cmVEZXZpY2VzKCk7CiAgICAgICAgIH07CiAKICAgICAgICAgQXVkaW9PYmplY3RQcm9wZXJ0eUFk
ZHJlc3MgYWRkcmVzcyA9IHsga0F1ZGlvSGFyZHdhcmVQcm9wZXJ0eURldmljZXMsIGtBdWRpb09i
amVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3Rl
ciB9OwpAQCAtMjIzLDEwICsyMDksNiBAQCBzdGF0aWMgaW5saW5lIFZlY3RvcjxDb3JlQXVkaW9D
YXB0dXJlRGV2aWNlPiBjb21wdXRlQXVkaW9EZXZpY2VMaXN0KCkKIAogICAgIFZlY3RvcjxDb3Jl
QXVkaW9DYXB0dXJlRGV2aWNlPiBhdWRpb0RldmljZXM7CiAKLSAgICBhdXRvIGRlZmF1bHRJbnB1
dERldmljZSA9IGdldERlZmF1bHRDYXB0dXJlSW5wdXREZXZpY2UoKTsKLSAgICBpZiAoZGVmYXVs
dElucHV0RGV2aWNlKQotICAgICAgICBhdWRpb0RldmljZXMuYXBwZW5kKFdURk1vdmUoKmRlZmF1
bHRJbnB1dERldmljZSkpOwotCiAgICAgLy8gTWljcm9waG9uZXMKICAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IGRldmljZUNvdW50OyBpKyspIHsKICAgICAgICAgQXVkaW9PYmplY3RJRCBkZXZp
Y2VJRCA9IGRldmljZUlEc1tpXTsKQEAgLTIzOSwxMCArMjIxLDYgQEAgc3RhdGljIGlubGluZSBW
ZWN0b3I8Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gY29tcHV0ZUF1ZGlvRGV2aWNlTGlzdCgpCiAg
ICAgICAgICAgICBhdWRpb0RldmljZXMuYXBwZW5kKFdURk1vdmUobWljcm9waG9uZURldmljZS52
YWx1ZSgpKSk7CiAgICAgfQogCi0gICAgYXV0byBkZWZhdWx0T3V0cHV0RGV2aWNlID0gZ2V0RGVm
YXVsdENhcHR1cmVPdXRwdXREZXZpY2UoKTsKLSAgICBpZiAoZGVmYXVsdE91dHB1dERldmljZSkK
LSAgICAgICAgYXVkaW9EZXZpY2VzLmFwcGVuZChXVEZNb3ZlKCpkZWZhdWx0T3V0cHV0RGV2aWNl
KSk7Ci0KICAgICAvLyBTcGVha2VycwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZGV2aWNl
Q291bnQ7IGkrKykgewogICAgICAgICBBdWRpb09iamVjdElEIGRldmljZUlEID0gZGV2aWNlSURz
W2ldOwpAQCAtMjg1LDI2ICsyNjMsMjcgQEAgdm9pZCBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFu
YWdlcjo6cmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoTm90aWZ5SWZEZXZpY2VzSGEKICAgICBi
b29sIGhhdmVEZXZpY2VDaGFuZ2VzID0gYXVkaW9EZXZpY2VzLnNpemUoKSAhPSBtX2NvcmVBdWRp
b0NhcHR1cmVEZXZpY2VzLnNpemUoKTsKICAgICBpZiAoIWhhdmVEZXZpY2VDaGFuZ2VzKSB7CiAg
ICAgICAgIGZvciAoc2l6ZV90IGNwdHIgPSAwOyBjcHRyIDwgYXVkaW9EZXZpY2VzLnNpemUoKTsg
KytjcHRyKSB7Ci0gICAgICAgICAgICBpZiAoYXVkaW9EZXZpY2VzW2NwdHJdLnR5cGUoKSAhPSBt
X2NvcmVBdWRpb0NhcHR1cmVEZXZpY2VzW2NwdHJdLnR5cGUoKSB8fCBhdWRpb0RldmljZXNbY3B0
cl0uZGV2aWNlSUQoKSAhPSBtX2NvcmVBdWRpb0NhcHR1cmVEZXZpY2VzW2NwdHJdLmRldmljZUlE
KCkgfHwgYXVkaW9EZXZpY2VzW2NwdHJdLmVuYWJsZWQoKSAhPSBtX2NvcmVBdWRpb0NhcHR1cmVE
ZXZpY2VzW2NwdHJdLmVuYWJsZWQoKSkgeworICAgICAgICAgICAgYXV0byYgb2xkU3RhdGUgPSBt
X2NvcmVBdWRpb0NhcHR1cmVEZXZpY2VzW2NwdHJdOworICAgICAgICAgICAgYXV0byYgbmV3U3Rh
dGUgPSBhdWRpb0RldmljZXNbY3B0cl07CisgICAgICAgICAgICBpZiAobmV3U3RhdGUudHlwZSgp
ICE9IG9sZFN0YXRlLnR5cGUoKSB8fCBuZXdTdGF0ZS5kZXZpY2VJRCgpICE9IG9sZFN0YXRlLmRl
dmljZUlEKCkgfHwgbmV3U3RhdGUuaXNEZWZhdWx0KCkgIT0gb2xkU3RhdGUuaXNEZWZhdWx0KCkg
fHwgbmV3U3RhdGUuZW5hYmxlZCgpICE9IG9sZFN0YXRlLmVuYWJsZWQoKSB8fCBuZXdTdGF0ZS5p
c0RlZmF1bHQoKSAhPSBvbGRTdGF0ZS5pc0RlZmF1bHQoKSkKICAgICAgICAgICAgICAgICBoYXZl
RGV2aWNlQ2hhbmdlcyA9IHRydWU7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAg
ICB9CiAgICAgICAgIH0KICAgICB9CiAgICAgaWYgKCFoYXZlRGV2aWNlQ2hhbmdlcykKICAgICAg
ICAgcmV0dXJuOwogCisgICAgc3RkOjpzb3J0KGF1ZGlvRGV2aWNlcy5iZWdpbigpLCBhdWRpb0Rl
dmljZXMuZW5kKCksIFtdIChhdXRvJiBmaXJzdCwgYXV0byYgc2Vjb25kKSAtPiBib29sIHsKKyAg
ICAgICAgcmV0dXJuIGZpcnN0LmlzRGVmYXVsdCgpICYmICFzZWNvbmQuaXNEZWZhdWx0KCk7Cisg
ICAgfSk7CiAgICAgbV9jb3JlQXVkaW9DYXB0dXJlRGV2aWNlcyA9IFdURk1vdmUoYXVkaW9EZXZp
Y2VzKTsKIAogICAgIG1fY2FwdHVyZURldmljZXMuY2xlYXIoKTsKICAgICBtX3NwZWFrZXJEZXZp
Y2VzLmNsZWFyKCk7CiAgICAgZm9yIChhdXRvJiBkZXZpY2UgOiBtX2NvcmVBdWRpb0NhcHR1cmVE
ZXZpY2VzKSB7Ci0gICAgICAgIENhcHR1cmVEZXZpY2UgY2FwdHVyZURldmljZSB7IGRldmljZS5w
ZXJzaXN0ZW50SWQoKSwgZGV2aWNlLnR5cGUoKSwgZGV2aWNlLmxhYmVsKCksIGRldmljZS5ncm91
cElkKCkgfTsKLSAgICAgICAgY2FwdHVyZURldmljZS5zZXRFbmFibGVkKGRldmljZS5lbmFibGVk
KCkpOwogICAgICAgICBpZiAoZGV2aWNlLnR5cGUoKSA9PSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VU
eXBlOjpNaWNyb3Bob25lKQotICAgICAgICAgICAgbV9jYXB0dXJlRGV2aWNlcy5hcHBlbmQoV1RG
TW92ZShjYXB0dXJlRGV2aWNlKSk7CisgICAgICAgICAgICBtX2NhcHR1cmVEZXZpY2VzLmFwcGVu
ZChkZXZpY2UpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBtX3NwZWFrZXJEZXZpY2VzLmFw
cGVuZChXVEZNb3ZlKGNhcHR1cmVEZXZpY2UpKTsKKyAgICAgICAgICAgIG1fc3BlYWtlckRldmlj
ZXMuYXBwZW5kKGRldmljZSk7CiAgICAgfQogCiAgICAgaWYgKG5vdGlmeSA9PSBOb3RpZnlJZkRl
dmljZXNIYXZlQ2hhbmdlZDo6Tm90aWZ5KSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJl
RGV2aWNlTWFuYWdlci5oCmluZGV4IDVlOTY2MmJmNDI3NTliNmU1Y2UyOTlkNTM0NWRjZmIzNTVh
YWIzNDEuLmYwYjIxYTRhYjUxYWE1ZTUxYTg0YzcwNTg3NmMwYWNkNDkwY2MyNzMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0
dXJlRGV2aWNlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oCkBAIC0yOSw2ICsyOSw3IEBA
CiAKICNpbmNsdWRlICJDYXB0dXJlRGV2aWNlLmgiCiAjaW5jbHVkZSAiQ2FwdHVyZURldmljZU1h
bmFnZXIuaCIKKyNpbmNsdWRlICJHZW5lcmljVGFza1F1ZXVlLmgiCiAjaW5jbHVkZSA8Q29yZUF1
ZGlvL0NvcmVBdWRpby5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZlB0ci5oPgpAQCAtNTcsMTAgKzU4LDEyIEBAIHByaXZhdGU6CiAKICAgICBlbnVtIGNsYXNz
IE5vdGlmeUlmRGV2aWNlc0hhdmVDaGFuZ2VkIHsgTm90aWZ5LCBEb05vdE5vdGlmeSB9OwogICAg
IHZvaWQgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoTm90aWZ5SWZEZXZpY2VzSGF2ZUNoYW5n
ZWQpOworICAgIHZvaWQgc2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcygpOwogCiAgICAgVmVj
dG9yPENhcHR1cmVEZXZpY2U+IG1fY2FwdHVyZURldmljZXM7CiAgICAgVmVjdG9yPENhcHR1cmVE
ZXZpY2U+IG1fc3BlYWtlckRldmljZXM7CiAgICAgVmVjdG9yPENvcmVBdWRpb0NhcHR1cmVEZXZp
Y2U+IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXM7CisgICAgR2VuZXJpY1Rhc2tRdWV1ZTxUaW1l
cj4gbV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413753</attachid>
            <date>2020-11-10 15:57:14 -0800</date>
            <delta_ts>2020-11-11 08:47:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211192-20201110155713.patch</filename>
            <type>text/plain</type>
            <size>30760</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTcxYzRkMjY1MWZhYTNi
NzA2MWYyYzM1ODA3YmQ1ZGM5MjM5MWMxNS4uZGUwOWRiMWRmNTNjMmEzNmJmYjFmNjg5Y2U4ZDQ4
NmU5ZmFlNjUzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYzIEBACisyMDIwLTExLTEwICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFVTQiBtaWNyb3Bo
b25lIG5vdCByZWNvZ25pemVkIGlPUyBTYWZhcmkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTE5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjI2
MDczMTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGVzdGluZyByZXF1aXJlcyBoYXJkd2FyZSwgdGVzdGVkIG1hbnVhbGx5LgorCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oOiBBZGQgY29uY2VwdCBvZiBkZWZh
dWx0IGRldmljZS4KKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmlzRGVmYXVsdCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjpzZXRJc0RlZmF1bHQpOgor
ICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmRlY29kZSk6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmg6IERvbid0IHJldGFp
biBwb3J0CisgICAgICAgIGRlc2NyaXB0aW9uLCBpdCBpcyBuZXZlciB1c2VkLgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW06
CisgICAgICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZSk6
IEFkZCBkZWZhdWx0IGlucHV0IHBhcmFtZXRlci4KKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKTogU2V0IGVu
YWJsZWQKKyAgICAgICAgYW5kIGRlZmF1bHQgYXR0cmlidXRlcy4KKworICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZU1hbmFnZXIubW06CisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxl
SW5wdXRzTGlzdGVuZXIgaW5pdFdpdGhDYWxsYmFjazphdWRpb1Nlc3Npb246XSk6IFRha2UKKyAg
ICAgICAgcGFyZW50IG9iamVjdCBhbmQgYXVkaW8gc2Vzc2lvbi4gTGlzdGVuIGZvciBzZXNzaW9u
IHJvdXRlIGNoYW5nZSBub3RpZmljYXRpb24uCisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9u
QXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgaW52YWxpZGF0ZV0pOgorICAgICAgICAoLVtXZWJBVkF1
ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyIHJvdXRlRGlkQ2hhbmdlOl0pOgorICAg
ICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6QVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcik6CisgICAgICAgIEFsbG9jYXRlIGFuZCB1c2Ug
YW4gYXV4aWxpYXJ5IGF1ZGlvIHNlc3Npb24gYmVjYXVzZSBpdCBpc24ndCBwb3NzaWJsZSB0byBl
bnVtZXJhdGUKKyAgICAgICAgYWxsIGF1ZGlvIGlucHV0cyB3aXRob3V0IG9uZS4KKyAgICAgICAg
KFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlvU2Vzc2lv
bkRldmljZVdpdGhVSUQpOiBObyBuZWVkCisgICAgICAgIHRvIGNhbGwgcmVmcmVzaEF1ZGlvQ2Fw
dHVyZURldmljZXMsIGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzIGRvZXMgaXQgaWYgbmVjZXNz
YXJ5LgorICAgICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcyk6IE5ldywKKyAgICAgICAgcmVmcmVzaCBk
ZXZpY2VzIG9uIGEgdGFzayBxdWV1ZSBiZWNhdXNlIHdlIGZyZXF1ZW50bHkgZ2V0IG1vcmUgdGhh
biBvbmUgbm90aWZpY2F0aW9uCisgICAgICAgIHdoZW4gYSByb3V0ZSBjaGFuZ2VzLgorICAgICAg
ICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaEF1
ZGlvQ2FwdHVyZURldmljZXMpOiBTb3J0IGRldmljZXMKKyAgICAgICAgc28gdGhlIGRlZmF1bHQg
aXMgYWx3YXlzIGZpcnN0LiBPbmx5IGNhbGwgZGV2aWNlQ2hhbmdlZCB3aGVuIHNvbWV0aGluZyBh
Y3R1YWxseSBjaGFuZ2VzLgorICAgICAgICAoLVtXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlu
cHV0c0xpc3RlbmVyIGluaXRXaXRoQ2FsbGJhY2s6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dl
YkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgb2JzZXJ2ZVZhbHVlRm9yS2V5
UGF0aDpvZk9iamVjdDpjaGFuZ2U6Y29udGV4dDpdKTogRGVsZXRlZC4KKworICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmdldERldmljZUluZm8pOiBEZWFsIHdpdGggaW5wdXQgYW5kIG91dHB1dCBk
ZXZpY2VzLiBUcmFuc2xhdGUgdGhlIGRhdGEKKyAgICAgICAgc291cmNlIG5hbWUgaWYgcG9zc2li
bGUuCisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Q29yZUF1ZGlvQ2FwdHVy
ZURldmljZSk6IFNldCBuZXcgYGRlZmF1bHRgIGF0dHJpYnV0ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmRlZmF1bHREZXZpY2UpOiBOZXcuCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaDoKKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdl
cjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcyk6IE5ldywgY29hbGVzY2UKKyAgICAgICAg
Y2FsbHMgdG8gcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMuCisgICAgICAgIChXZWJDb3JlOjpD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29yZUF1ZGlvQ2FwdHVyZURldmljZXMpOiAK
KyAgICAgICAgKFdlYkNvcmU6OmNvbXB1dGVBdWRpb0RldmljZUxpc3QpOiBObyBuZWVkIHRvIGNo
ZWNrIGZvciB0aGUgZGVmYXVsdCBkZXZpY2UgZXhwbGljaXRseS4KKyAgICAgICAgKFdlYkNvcmU6
OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNl
cyk6CisgICAgICAgIChXZWJDb3JlOjpnZXREZWZhdWx0Q2FwdHVyZUlucHV0RGV2aWNlKTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmdldERlZmF1bHRDYXB0dXJlT3V0cHV0RGV2aWNlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2Fw
dHVyZURldmljZU1hbmFnZXIuaDoKKwogMjAyMC0xMS0wNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCBidWlsZCBhZnRlciByMjY5NDM1
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwppbmRleCBjOTQ2ZjA0YmFmOTYwN2UwOTE1NWE5MGJhOTZhN2M5YjAy
NmZmY2ZkLi4xYTAxMjRhMzc4MjJiOGQyYzFiZjY3YmQ1ZmVkNGM3M2ZmMmY4NGYwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BB
TC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMS0xMCAgRXJpYyBDYXJsc29uICA8
ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBVU0IgbWljcm9waG9uZSBub3QgcmVj
b2duaXplZCBpT1MgU2FmYXJpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMTExOTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNjA3MzEzPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9j
b2NvYS9BVkZvdW5kYXRpb25TUEkuaDogRGVjbGFyZSArW0FWQXVkaW9TZXNzaW9uIGluaXRBdXhp
bGlhcnlTZXNzaW9uXS4KKwogMjAyMC0xMS0wNCAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIFdlYktpdCBzaG91bGQgcmVtb3ZlIHVudXNlZCBkZWJ1ZyB2YXJp
YW50IHN1cHBvcnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29h
L0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZG
b3VuZGF0aW9uU1BJLmgKaW5kZXggZWM2OGI3OGMyNDQ4ZDhjYzllYTUzMTNlYjQ1MmEyZDYyYjU5
MDE4YS4uM2VkZWQ3MGNhYjc2MDM5ZWVhM2I1ZmViMmJkNzkzNTg0ZTIwYjJiNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAg
LTM1NCwxMiArMzU0LDEzIEBAIE5TX0FTU1VNRV9OT05OVUxMX0VORAogQGVuZAogI2VuZGlmCiAK
LSNpZiAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykgJiYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYg
IVBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKSAmJiAhUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CisjaWYgIVVTRShBUFBMRV9JTlRFUk5BTF9TREspICYmIFBMQVRGT1JNKElPU19GQU1JTFkpICYm
ICFQTEFURk9STShNQUNDQVRBTFlTVCkKICNpbXBvcnQgPEFWRm91bmRhdGlvbi9BVkF1ZGlvU2Vz
c2lvbi5oPgogCiBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogCiBAaW50ZXJmYWNlIEFWQXVkaW9T
ZXNzaW9uIChBVkF1ZGlvU2Vzc2lvblByaXZhdGUpCistIChpbnN0YW5jZXR5cGUpaW5pdEF1eGls
aWFyeVNlc3Npb247CiBAcHJvcGVydHkgKHJlYWRvbmx5KSBOU1N0cmluZyogcm91dGluZ0NvbnRl
eHRVSUQ7CiBAZW5kCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL0NhcHR1cmVEZXZpY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL0NhcHR1cmVEZXZpY2UuaAppbmRleCA0YTQ4YTk0M2E2ZTM1NmJiYTQ4NzVjMjRjNTU5M2Zl
OTZjNDM5YjcyLi41NGU4YWFjZDRlNjIzNWQ4ZTRlOTJmMzQzNGNhODkyNGJlZjQ5YjkxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmlj
ZS5oCkBAIC02Myw2ICs2Myw5IEBAIHB1YmxpYzoKICAgICBib29sIGVuYWJsZWQoKSBjb25zdCB7
IHJldHVybiBtX2VuYWJsZWQ7IH0KICAgICB2b2lkIHNldEVuYWJsZWQoYm9vbCBlbmFibGVkKSB7
IG1fZW5hYmxlZCA9IGVuYWJsZWQ7IH0KIAorICAgIGJvb2wgaXNEZWZhdWx0KCkgY29uc3QgeyBy
ZXR1cm4gbV9kZWZhdWx0OyB9CisgICAgdm9pZCBzZXRJc0RlZmF1bHQoYm9vbCBpc0RlZmF1bHQp
IHsgbV9kZWZhdWx0ID0gaXNEZWZhdWx0OyB9CisKICAgICBleHBsaWNpdCBvcGVyYXRvciBib29s
KCkgY29uc3QgeyByZXR1cm4gbV90eXBlICE9IERldmljZVR5cGU6OlVua25vd247IH0KIAogI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pCkBAIC03Myw2ICs3Niw3IEBAIHB1YmxpYzoKICAgICAgICAg
ZW5jb2RlciA8PCBtX2xhYmVsOwogICAgICAgICBlbmNvZGVyIDw8IG1fZ3JvdXBJZDsKICAgICAg
ICAgZW5jb2RlciA8PCBtX2VuYWJsZWQ7CisgICAgICAgIGVuY29kZXIgPDwgbV9kZWZhdWx0Owog
ICAgICAgICBlbmNvZGVyIDw8IG1fdHlwZTsKICAgICB9CiAKQEAgLTk5LDYgKzEwMywxMSBAQCBw
dWJsaWM6CiAgICAgICAgIGlmICghZW5hYmxlZCkKICAgICAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gaXNEZWZhdWx0OworICAgICAgICBkZWNv
ZGVyID4+IGlzRGVmYXVsdDsKKyAgICAgICAgaWYgKCFpc0RlZmF1bHQpCisgICAgICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OworCiAgICAgICAgIE9wdGlvbmFsPENhcHR1cmVEZXZpY2U6OkRl
dmljZVR5cGU+IHR5cGU7CiAgICAgICAgIGRlY29kZXIgPj4gdHlwZTsKICAgICAgICAgaWYgKCF0
eXBlKQpAQCAtMTA2LDYgKzExNSw3IEBAIHB1YmxpYzoKIAogICAgICAgICBPcHRpb25hbDxDYXB0
dXJlRGV2aWNlPiBkZXZpY2UgPSB7eyBXVEZNb3ZlKCpwZXJzaXN0ZW50SWQpLCBXVEZNb3ZlKCp0
eXBlKSwgV1RGTW92ZSgqbGFiZWwpLCBXVEZNb3ZlKCpncm91cElkKSB9fTsKICAgICAgICAgZGV2
aWNlLT5zZXRFbmFibGVkKCplbmFibGVkKTsKKyAgICAgICAgZGV2aWNlLT5zZXRJc0RlZmF1bHQo
KmlzRGVmYXVsdCk7CiAgICAgICAgIHJldHVybiBkZXZpY2U7CiAgICAgfQogI2VuZGlmCkBAIC0x
MTYsNiArMTI2LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9sYWJlbDsKICAgICBTdHJpbmcg
bV9ncm91cElkOwogICAgIGJvb2wgbV9lbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1fZGVm
YXVsdCB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3Mv
QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmgKaW5kZXggMDliODEzMzBlYzUzZDMxNjQxOGY1
MTgyMWMxY2Q2YjliYjY3ZDU2Zi4uMTEwMTVmNjQ0ZDQ0OGVhMWIyZmM3YWQ1YmNhODQzNzRjNGVk
YTljNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9z
L0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaApAQCAtMzYs
MTMgKzM2LDExIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlIDogcHVibGljIENhcHR1cmVEZXZpY2UgewogcHVibGljOgotICAgIHN0YXRp
YyBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UgY3JlYXRlKEFWQXVkaW9TZXNzaW9uUG9ydERl
c2NyaXB0aW9uKik7CisgICAgc3RhdGljIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZSBjcmVh
dGUoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKmRldmljZUlucHV0LCBBVkF1ZGlvU2Vz
c2lvblBvcnREZXNjcmlwdGlvbiAqZGVmYXVsdElucHV0KTsKICAgICB2aXJ0dWFsIH5BVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2UoKSA9IGRlZmF1bHQ7CiAKIHByaXZhdGU6Ci0gICAgQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uKiwgY29u
c3QgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIGNvbnN0IFN0cmluZyYgbGFiZWwpOwotCi0gICAgUmV0
YWluUHRyPEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uPiBtX3BvcnREZXNjcmlwdGlvbjsK
KyAgICBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3Jp
cHRpb24gKmRldmljZUlucHV0LCBBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqZGVmYXVs
dElucHV0KTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tCmluZGV4IGZjNDE4MDM3YWMxOTBmNWJkNDA0MWZiZDcz
Y2I3OTZjMjUwMmY2MTkuLjBmYTcxZmFkMTZlMmRkNTcyNDdkZjIzZjcyYjY2ZDdhMGFiMzlhZWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5tbQpAQCAtMzIsMTkg
KzMyLDE2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6Y3JlYXRlKEFWQXVkaW9TZXNzaW9u
UG9ydERlc2NyaXB0aW9uKiBwb3J0RGVzY3JpcHRpb24pCitBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2UgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlOjpjcmVhdGUoQVZBdWRpb1Nlc3Npb25Q
b3J0RGVzY3JpcHRpb24qIGRldmljZUlucHV0LCBBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlv
biAqZGVmYXVsdElucHV0KQogewotICAgIFN0cmluZyBwZXJzaXN0ZW50SUQgPSBwb3J0RGVzY3Jp
cHRpb24uVUlEOwotICAgIFN0cmluZyBsYWJlbCA9IHBvcnREZXNjcmlwdGlvbi5wb3J0TmFtZTsK
LSAgICBhdXRvIGRldmljZSA9IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShwb3J0RGVzY3Jp
cHRpb24sIHBlcnNpc3RlbnRJRCwgbGFiZWwpOwotICAgIGRldmljZS5zZXRFbmFibGVkKHBvcnRE
ZXNjcmlwdGlvbi5kYXRhU291cmNlcy5jb3VudCk7Ci0gICAgcmV0dXJuIGRldmljZTsKKyAgICBy
ZXR1cm4gQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKGRldmljZUlucHV0LCBkZWZhdWx0SW5w
dXQpOwogfQogCi1BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OkFWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiogcG9ydERlc2NyaXB0aW9u
LCBjb25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgY29uc3QgU3RyaW5nJiBsYWJlbCkKLSAgICA6
IENhcHR1cmVEZXZpY2UocGVyc2lzdGVudElELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpN
aWNyb3Bob25lLCBsYWJlbCkKLSAgICAsIG1fcG9ydERlc2NyaXB0aW9uKHBvcnREZXNjcmlwdGlv
bikKK0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpkZXZpY2VJbnB1dCwgQVZBdWRpb1Nl
c3Npb25Qb3J0RGVzY3JpcHRpb24gKmRlZmF1bHRJbnB1dCkKKyAgICA6IENhcHR1cmVEZXZpY2Uo
ZGV2aWNlSW5wdXQuVUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lLCBk
ZXZpY2VJbnB1dC5wb3J0TmFtZSkKIHsKKyAgICBzZXRFbmFibGVkKHRydWUpOworICAgIHNldElz
RGVmYXVsdChkZWZhdWx0SW5wdXQgJiYgW2RlZmF1bHRJbnB1dC5VSUQgaXNFcXVhbFRvU3RyaW5n
OmRldmljZUlucHV0LlVJRF0pOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaAppbmRleCAzOTk2MTY4NzljNTFmYTg4NGNhNzhiMzA4
ZWFkM2Y3ZjM3NDM0ZjcwLi42YWI0ZTJjNzQyZDMxZTRiZmNkOGM1ZWI5ODdkOTExNTYxNWQzY2Nm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZB
dWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2Vy
LmgKQEAgLTI4LDEwICsyOCwxMiBAQAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pICYmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAKICNpbmNsdWRlICJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIgorI2lu
Y2x1ZGUgIkdlbmVyaWNUYXNrUXVldWUuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2lu
Y2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogCitPQkpD
X0NMQVNTIEFWQXVkaW9TZXNzaW9uOwogT0JKQ19DTEFTUyBXZWJBVkF1ZGlvU2Vzc2lvbkF2YWls
YWJsZUlucHV0c0xpc3RlbmVyOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00OCwxOSArNTAs
MjMgQEAgcHVibGljOgogICAgIGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYgc3BlYWtlckRl
dmljZXMoKSBjb25zdCB7IHJldHVybiBtX3NwZWFrZXJEZXZpY2VzOyB9CiAgICAgT3B0aW9uYWw8
Q2FwdHVyZURldmljZT4gY2FwdHVyZURldmljZVdpdGhQZXJzaXN0ZW50SUQoQ2FwdHVyZURldmlj
ZTo6RGV2aWNlVHlwZSwgY29uc3QgU3RyaW5nJik7CiAKLSAgICBWZWN0b3I8QVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlPiYgYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXMoKTsKICAgICBPcHRp
b25hbDxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+IGF1ZGlvU2Vzc2lvbkRldmljZVdpdGhV
SUQoY29uc3QgU3RyaW5nJik7CisgICAgCisgICAgdm9pZCBzY2hlZHVsZVVwZGF0ZUNhcHR1cmVE
ZXZpY2VzKCk7CiAKIHByaXZhdGU6Ci0gICAgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFu
YWdlcigpID0gZGVmYXVsdDsKKyAgICBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2Vy
KCk7CiAgICAgfkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIoKTsKIAogICAgIHZv
aWQgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoKTsKKyAgICBWZWN0b3I8QVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlPiYgYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXMoKTsKIAogICAgIE9w
dGlvbmFsPFZlY3RvcjxDYXB0dXJlRGV2aWNlPj4gbV9kZXZpY2VzOwogICAgIFZlY3RvcjxDYXB0
dXJlRGV2aWNlPiBtX3NwZWFrZXJEZXZpY2VzOwogICAgIE9wdGlvbmFsPFZlY3RvcjxBVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2U+PiBtX2F1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzOwogICAg
IFJldGFpblB0cjxXZWJBVkF1ZGlvU2Vzc2lvbkF2YWlsYWJsZUlucHV0c0xpc3RlbmVyPiBtX2xp
c3RlbmVyOworICAgIFJldGFpblB0cjxBVkF1ZGlvU2Vzc2lvbj4gbV9hdWRpb1Nlc3Npb247Cisg
ICAgR2VuZXJpY1Rhc2tRdWV1ZTxUaW1lcj4gbV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Np
b25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbQppbmRleCA0NjA1MGQ5MzgzNGYzYTkzN2ZlZTM3NTU3
MzdkZWFhNGUyYzljMGE1Li4zMjgyMGIwNzk5NWIyMGVjOWMxYWJjYjQ0MmE2Zjc0ZjkwNjU3MjUy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZB
dWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
ci5tbQpAQCAtMzEsNDEgKzMxLDQ1IEBACiAjaW1wb3J0ICJBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2UuaCIKICNpbXBvcnQgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCIKICNpbXBvcnQg
PEFWRm91bmRhdGlvbi9BVkF1ZGlvU2Vzc2lvbi5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9B
VkZvdW5kYXRpb25TUEkuaD4KKyNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3
dGYvVmVjdG9yLmg+CiAKICNpbXBvcnQgPHBhbC9jb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5o
PgogCi12b2lkKiBBdmFpbGFibGVJbnB1dHNDb250ZXh0ID0gJkF2YWlsYWJsZUlucHV0c0NvbnRl
eHQ7Ci0KIEBpbnRlcmZhY2UgV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5l
ciA6IE5TT2JqZWN0IHsKLSAgICBXVEY6OkZ1bmN0aW9uPHZvaWQoKT4gX2NhbGxiYWNrOworICAg
IFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIqIF9jYWxsYmFjazsK
IH0KIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5w
dXRzTGlzdGVuZXIKLS0gKGlkKWluaXRXaXRoQ2FsbGJhY2s6KFdURjo6RnVuY3Rpb248dm9pZCgp
PiYmKWNhbGxiYWNrCistIChpZClpbml0V2l0aENhbGxiYWNrOihXZWJDb3JlOjpBVkF1ZGlvU2Vz
c2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyICopY2FsbGJhY2sgYXVkaW9TZXNzaW9uOihBVkF1ZGlv
U2Vzc2lvbiAqKXNlc3Npb24KIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICgh
c2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKIAotICAgIF9jYWxsYmFjayA9IFdURk1vdmUoY2Fs
bGJhY2spOworICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2Jz
ZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iocm91dGVEaWRDaGFuZ2U6KSBuYW1lOlBBTDo6
Z2V0X0FWRm91bmRhdGlvbl9BVkF1ZGlvU2Vzc2lvblJvdXRlQ2hhbmdlTm90aWZpY2F0aW9uKCkg
b2JqZWN0OnNlc3Npb25dOworCisgICAgX2NhbGxiYWNrID0gY2FsbGJhY2s7CisKICAgICByZXR1
cm4gc2VsZjsKIH0KIAogLSAodm9pZClpbnZhbGlkYXRlCiB7CiAgICAgX2NhbGxiYWNrID0gbnVs
bHB0cjsKKyAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9i
c2VydmVyOnNlbGZdOwogfQogCi0tICh2b2lkKW9ic2VydmVWYWx1ZUZvcktleVBhdGg6KE5TU3Ry
aW5nICopa2V5UGF0aCBvZk9iamVjdDooaWQpb2JqZWN0IGNoYW5nZTooTlNEaWN0aW9uYXJ5PE5T
S2V5VmFsdWVDaGFuZ2VLZXksIGlkPiAqKWNoYW5nZSBjb250ZXh0Oih2b2lkICopY29udGV4dAor
LSAodm9pZClyb3V0ZURpZENoYW5nZTooTlNOb3RpZmljYXRpb24gKilub3RpZmljYXRpb24KIHsK
LSAgICBVTlVTRURfUEFSQU0oa2V5UGF0aCk7Ci0gICAgVU5VU0VEX1BBUkFNKG9iamVjdCk7Ci0g
ICAgVU5VU0VEX1BBUkFNKGNoYW5nZSk7Ci0gICAgaWYgKGNvbnRleHQgPT0gQXZhaWxhYmxlSW5w
dXRzQ29udGV4dCAmJiBfY2FsbGJhY2spCi0gICAgICAgIF9jYWxsYmFjaygpOworICAgIGlmICgh
X2NhbGxiYWNrKQorICAgICAgICByZXR1cm47CisKKyAgICBfY2FsbGJhY2stPnNjaGVkdWxlVXBk
YXRlQ2FwdHVyZURldmljZXMoKTsKIH0KKwogQGVuZAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBA
IC03Niw2ICs4MCwyNCBAQCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyJiBBVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0bwogICAgIHJldHVybiBtYW5h
Z2VyOwogfQogCitBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpBVkF1ZGlvU2Vz
c2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKK3sKKyNpZiAhUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CisgICAgbV9hdWRpb1Nlc3Npb24gPSBhZG9wdE5TKFtbUEFMOjpnZXRBVkF1ZGlvU2Vzc2lvbkNs
YXNzKCkgYWxsb2NdIGluaXRBdXhpbGlhcnlTZXNzaW9uXSk7CisjZWxzZQorICAgIC8vIEZJWE1F
OiBGaWd1cmUgb3V0IGlmIHRoaXMgaXMgY29ycmVjdCBmb3IgQ2F0YWx5c3QsIHdoZXJlIGF1eGls
aWFyeSBzZXNzaW9uIGlzbid0IGF2YWlsYWJsZS4KKyAgICBtX2F1ZGlvU2Vzc2lvbiA9IFtQQUw6
OmdldEFWQXVkaW9TZXNzaW9uQ2xhc3MoKSBzaGFyZWRJbnN0YW5jZV07CisjZW5kaWYKKyAgICAK
KyAgICBOU0Vycm9yICplcnJvciA9IG5pbDsKKyAgICBhdXRvIG9wdGlvbnMgPSBBVkF1ZGlvU2Vz
c2lvbkNhdGVnb3J5T3B0aW9uQWxsb3dCbHVldG9vdGggfCBBVkF1ZGlvU2Vzc2lvbkNhdGVnb3J5
T3B0aW9uTWl4V2l0aE90aGVyczsKKyAgICBbbV9hdWRpb1Nlc3Npb24gc2V0Q2F0ZWdvcnk6QVZB
dWRpb1Nlc3Npb25DYXRlZ29yeVBsYXlBbmRSZWNvcmQgbW9kZTpBVkF1ZGlvU2Vzc2lvbk1vZGVW
aWRlb0NoYXQgb3B0aW9uczpvcHRpb25zIGVycm9yOiZlcnJvcl07CisgICAgaWYgKGVycm9yKSB7
CisgICAgICAgIExPR19FUlJPUigiRmFpbGVkIHRvIHNldCBhdWRpbyBzZXNzaW9uIGNhdGVnb3J5
IHdpdGggZXJyb3I6ICVALiIsIGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9uKTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KK30KKwogQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6
fkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIoKQogewogICAgIFttX2xpc3RlbmVy
IGludmFsaWRhdGVdOwpAQCAtMTA4LDkgKzEzMCw2IEBAIFZlY3RvcjxBVkF1ZGlvU2Vzc2lvbkNh
cHR1cmVEZXZpY2U+JiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjphdWRpb1Nl
CiAKIE9wdGlvbmFsPEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZT4gQVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlTWFuYWdlcjo6YXVkaW9TZXNzaW9uRGV2aWNlV2l0aFVJRChjb25zdCBTdHJp
bmcmIGRldmljZUlEKQogewotICAgIGlmICghbV9hdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlcykK
LSAgICAgICAgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoKTsKLQogICAgIGZvciAoYXV0byYg
ZGV2aWNlIDogYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXMoKSkgewogICAgICAgICBpZiAoZGV2
aWNlLnBlcnNpc3RlbnRJZCgpID09IGRldmljZUlEKQogICAgICAgICAgICAgcmV0dXJuIGRldmlj
ZTsKQEAgLTExOCwzMCArMTM3LDU5IEBAIE9wdGlvbmFsPEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURl
dmljZT4gQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6YXVkaW9TCiAgICAgcmV0
dXJuIFdURjo6bnVsbG9wdDsKIH0KIAordm9pZCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VN
YW5hZ2VyOjpzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCkKK3sKKyAgICBpZiAobV91cGRh
dGVEZXZpY2VTdGF0ZVF1ZXVlLmhhc1BlbmRpbmdUYXNrcygpKQorICAgICAgICByZXR1cm47CisK
KyAgICBtX3VwZGF0ZURldmljZVN0YXRlUXVldWUuZW5xdWV1ZVRhc2soW3RoaXNdIHsKKyAgICAg
ICAgcmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoKTsKKyAgICB9KTsKK30KKwogdm9pZCBBVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNl
cygpCiB7Ci0gICAgaWYgKCFtX2xpc3RlbmVyKSB7Ci0gICAgICAgIG1fbGlzdGVuZXIgPSBhZG9w
dE5TKFtbV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciBhbGxvY10gaW5p
dFdpdGhDYWxsYmFjazpbdGhpc10gewotICAgICAgICAgICAgcmVmcmVzaEF1ZGlvQ2FwdHVyZURl
dmljZXMoKTsKLSAgICAgICAgfV0pOwotICAgICAgICBbW1BBTDo6Z2V0QVZBdWRpb1Nlc3Npb25D
bGFzcygpIHNoYXJlZEluc3RhbmNlXSBhZGRPYnNlcnZlcjptX2xpc3RlbmVyLmdldCgpIGZvcktl
eVBhdGg6QCJhdmFpbGFibGVJbnB1dHMiIG9wdGlvbnM6MCBjb250ZXh0OkF2YWlsYWJsZUlucHV0
c0NvbnRleHRdOwotICAgIH0KKyAgICBpZiAoIW1fbGlzdGVuZXIpCisgICAgICAgIG1fbGlzdGVu
ZXIgPSBhZG9wdE5TKFtbV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciBh
bGxvY10gaW5pdFdpdGhDYWxsYmFjazp0aGlzIGF1ZGlvU2Vzc2lvbjptX2F1ZGlvU2Vzc2lvbi5n
ZXQoKV0pOworCisgICAgTlNFcnJvciAqZXJyb3IgPSBuaWw7CisgICAgW21fYXVkaW9TZXNzaW9u
IHNldEFjdGl2ZTpZRVMgd2l0aE9wdGlvbnM6MCBlcnJvcjomZXJyb3JdOworICAgIGlmIChlcnJv
cikKKyAgICAgICAgTE9HX0VSUk9SKCJGYWlsZWQgdG8gYWN0aXZhdGUgYXVkaW8gc2Vzc2lvbiB3
aXRoIGVycm9yOiAlQC4iLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbik7CiAKICAgICBWZWN0
b3I8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiBuZXdBdWRpb0RldmljZXM7CiAgICAgVmVj
dG9yPENhcHR1cmVEZXZpY2U+IG5ld0RldmljZXM7Ci0KLSAgICBmb3IgKEFWQXVkaW9TZXNzaW9u
UG9ydERlc2NyaXB0aW9uICpwb3J0RGVzY3JpcHRpb24gaW4gW1BBTDo6Z2V0QVZBdWRpb1Nlc3Np
b25DbGFzcygpIHNoYXJlZEluc3RhbmNlXS5hdmFpbGFibGVJbnB1dHMpIHsKLSAgICAgICAgYXV0
byBhdWRpb0RldmljZSA9IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6Y3JlYXRlKHBvcnRE
ZXNjcmlwdGlvbik7CisgICAgYXV0byAqZGVmYXVsdElucHV0ID0gW21fYXVkaW9TZXNzaW9uIGN1
cnJlbnRSb3V0ZV0uaW5wdXRzLmZpcnN0T2JqZWN0OworICAgIGZvciAoQVZBdWRpb1Nlc3Npb25Q
b3J0RGVzY3JpcHRpb24gKnBvcnREZXNjcmlwdGlvbiBpbiBbbV9hdWRpb1Nlc3Npb24gYXZhaWxh
YmxlSW5wdXRzXSkgeworICAgICAgICBhdXRvIGF1ZGlvRGV2aWNlID0gQVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlOjpjcmVhdGUocG9ydERlc2NyaXB0aW9uLCBkZWZhdWx0SW5wdXQpOwogICAg
ICAgICBuZXdEZXZpY2VzLmFwcGVuZChhdWRpb0RldmljZSk7CiAgICAgICAgIG5ld0F1ZGlvRGV2
aWNlcy5hcHBlbmQoV1RGTW92ZShhdWRpb0RldmljZSkpOwogICAgIH0KIAorICAgIGJvb2wgZmly
c3RUaW1lID0gIW1fZGV2aWNlczsKKyAgICBib29sIGhhdmVEZXZpY2VDaGFuZ2VzID0gIW1fZGV2
aWNlcyB8fCBuZXdBdWRpb0RldmljZXMuc2l6ZSgpICE9IG1fZGV2aWNlcy0+c2l6ZSgpOworICAg
IGlmICghaGF2ZURldmljZUNoYW5nZXMpIHsKKyAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkg
PCBuZXdBdWRpb0RldmljZXMuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgICAgIGF1dG8mIG9sZFN0
YXRlID0gKCptX2RldmljZXMpW2ldOworICAgICAgICAgICAgYXV0byYgbmV3U3RhdGUgPSBuZXdB
dWRpb0RldmljZXNbaV07CisgICAgICAgICAgICBpZiAobmV3U3RhdGUudHlwZSgpICE9IG9sZFN0
YXRlLnR5cGUoKSB8fCBuZXdTdGF0ZS5wZXJzaXN0ZW50SWQoKSAhPSBvbGRTdGF0ZS5wZXJzaXN0
ZW50SWQoKSB8fCBuZXdTdGF0ZS5lbmFibGVkKCkgIT0gb2xkU3RhdGUuZW5hYmxlZCgpIHx8IG5l
d1N0YXRlLmlzRGVmYXVsdCgpICE9IG9sZFN0YXRlLmlzRGVmYXVsdCgpKQorICAgICAgICAgICAg
ICAgIGhhdmVEZXZpY2VDaGFuZ2VzID0gdHJ1ZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlm
ICghaGF2ZURldmljZUNoYW5nZXMgJiYgIWZpcnN0VGltZSkKKyAgICAgICAgcmV0dXJuOworCiAg
ICAgbV9hdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlcyA9IFdURk1vdmUobmV3QXVkaW9EZXZpY2Vz
KTsKKyAgICBzdGQ6OnNvcnQobmV3RGV2aWNlcy5iZWdpbigpLCBuZXdEZXZpY2VzLmVuZCgpLCBb
XSAoYXV0byYgZmlyc3QsIGF1dG8mIHNlY29uZCkgLT4gYm9vbCB7CisgICAgICAgIHJldHVybiBm
aXJzdC5pc0RlZmF1bHQoKSAmJiAhc2Vjb25kLmlzRGVmYXVsdCgpOworICAgIH0pOwogICAgIG1f
ZGV2aWNlcyA9IFdURk1vdmUobmV3RGV2aWNlcyk7CiAKLSAgICBkZXZpY2VDaGFuZ2VkKCk7Cisg
ICAgaWYgKCFmaXJzdFRpbWUpCisgICAgICAgIGRldmljZUNoYW5nZWQoKTsKIH0KIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgUExB
VEZPUk0oTUFDKQorI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pICYmIFBMQVRGT1JNKElP
U19GQU1JTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5jcHAKaW5kZXggZjVlYjY4
MGU0ZDkwM2MyZjc3N2MwZGY0YzZmYTdlNjliYmU5M2MzZi4uZjEzMDVkZWNjNWZiM2YwN2UwMTg4
MjU1MTEyNWMzMmY0YzNjNmQxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNw
cApAQCAtMzgsNyArMzgsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNwYWNl
IFBBTDsKIAotc3RhdGljIGJvb2wgZ2V0RGV2aWNlSW5mbyh1aW50MzJfdCBkZXZpY2VJRCwgU3Ry
aW5nJiBwZXJzaXN0ZW50SUQsIFN0cmluZyYgbGFiZWwpCitzdGF0aWMgYm9vbCBnZXREZXZpY2VJ
bmZvKHVpbnQzMl90IGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlIHR5cGUsIFN0
cmluZyYgcGVyc2lzdGVudElELCBTdHJpbmcmIGxhYmVsKQogewogICAgIENGU3RyaW5nUmVmIHVu
aXF1ZUlEOwogICAgIEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVkaW9E
ZXZpY2VQcm9wZXJ0eURldmljZVVJRCwga0F1ZGlvRGV2aWNlUHJvcGVydHlTY29wZUlucHV0LCBr
QXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKQEAgLTUxLDE0ICs1MSwzMCBAQCBz
dGF0aWMgYm9vbCBnZXREZXZpY2VJbmZvKHVpbnQzMl90IGRldmljZUlELCBTdHJpbmcmIHBlcnNp
c3RlbnRJRCwgU3RyaW5nJiBsYWJlbAogICAgIHBlcnNpc3RlbnRJRCA9IHVuaXF1ZUlEOwogICAg
IENGUmVsZWFzZSh1bmlxdWVJRCk7CiAKLSAgICBDRlN0cmluZ1JlZiBsb2NhbGl6ZWROYW1lOwot
ICAgIGFkZHJlc3MgPSB7IGtBdWRpb09iamVjdFByb3BlcnR5TmFtZSwga0F1ZGlvT2JqZWN0UHJv
cGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07Ci0g
ICAgZGF0YVNpemUgPSBzaXplb2YobG9jYWxpemVkTmFtZSk7Ci0gICAgZXJyID0gQXVkaW9PYmpl
Y3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nhc3Q8VUludDMyPihkZXZpY2VJRCksICZhZGRyZXNz
LCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZsb2NhbGl6ZWROYW1lKTsKKyAgICBDRlN0cmluZ1Jl
ZiBsb2NhbGl6ZWROYW1lID0gbnVsbHB0cjsKKyAgICBBdWRpb09iamVjdFByb3BlcnR5U2NvcGUg
c2NvcGUgPSB0eXBlID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUgPyBr
QXVkaW9EZXZpY2VQcm9wZXJ0eVNjb3BlSW5wdXQgOiBrQXVkaW9EZXZpY2VQcm9wZXJ0eVNjb3Bl
T3V0cHV0OworICAgIGFkZHJlc3MgPSB7IGtBdWRpb0RldmljZVByb3BlcnR5RGF0YVNvdXJjZSwg
c2NvcGUsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OworICAgIHVpbnQzMl90
IHNvdXJjZUlEOworICAgIGRhdGFTaXplID0gc2l6ZW9mKHNvdXJjZUlEKTsKKyAgICBlcnIgPSBB
dWRpb09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0aWNfY2FzdDxVSW50MzI+KGRldmljZUlEKSwg
JmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJnNvdXJjZUlEKTsKKyAgICBpZiAoIWVy
cikgeworICAgICAgICBBdWRpb1ZhbHVlVHJhbnNsYXRpb24gdHJhbnNsYXRpb24gPSB7ICZkZXZp
Y2VJRCwgc2l6ZW9mKGRldmljZUlEKSwgJmxvY2FsaXplZE5hbWUsIHNpemVvZihsb2NhbGl6ZWRO
YW1lKSB9OworICAgICAgICBhZGRyZXNzID0geyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURhdGFTb3Vy
Y2VOYW1lRm9ySURDRlN0cmluZywgc2NvcGUsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1h
c3RlciB9OworICAgICAgICBkYXRhU2l6ZSA9IHNpemVvZih0cmFuc2xhdGlvbik7CisgICAgICAg
IGVyciA9IEF1ZGlvT2JqZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQzMj4oZGV2
aWNlSUQpLCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmdHJhbnNsYXRpb24pOwor
ICAgIH0KKworICAgIGlmIChlcnIgfHwgIWxvY2FsaXplZE5hbWUgfHwgIUNGU3RyaW5nR2V0TGVu
Z3RoKGxvY2FsaXplZE5hbWUpKSB7CisgICAgICAgIGFkZHJlc3MgPSB7IGtBdWRpb09iamVjdFBy
b3BlcnR5TmFtZSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0
UHJvcGVydHlFbGVtZW50TWFzdGVyIH07CisgICAgICAgIGRhdGFTaXplID0gc2l6ZW9mKGxvY2Fs
aXplZE5hbWUpOworICAgICAgICBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0
aWNfY2FzdDxVSW50MzI+KGRldmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6
ZSwgJmxvY2FsaXplZE5hbWUpOworICAgIH0KKwogICAgIGlmIChlcnIpIHsKICAgICAgICAgUkVM
RUFTRV9MT0dfRVJST1IoV2ViUlRDLCAiQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Z2V0RGV2aWNl
SW5mbyBmYWlsZWQgdG8gZ2V0IGRldmljZSBuYW1lIHdpdGggZXJyb3IgJWQgKCUuNHMpIiwgKGlu
dCllcnIsIChjaGFyKikmZXJyKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KKwogICAg
IGxhYmVsID0gbG9jYWxpemVkTmFtZTsKICAgICBDRlJlbGVhc2UobG9jYWxpemVkTmFtZSk7CiAK
QEAgLTcwLDcgKzg2LDcgQEAgT3B0aW9uYWw8Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gQ29yZUF1
ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRlKHVpbnQzMl90IGRldmljZUkKICAgICBBU1NFUlQodHlw
ZSA9PSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lIHx8IHR5cGUgPT0gQ2Fw
dHVyZURldmljZTo6RGV2aWNlVHlwZTo6U3BlYWtlcik7CiAgICAgU3RyaW5nIHBlcnNpc3RlbnRJ
RDsKICAgICBTdHJpbmcgbGFiZWw7Ci0gICAgaWYgKCFnZXREZXZpY2VJbmZvKGRldmljZUlELCBw
ZXJzaXN0ZW50SUQsIGxhYmVsKSkKKyAgICBpZiAoIWdldERldmljZUluZm8oZGV2aWNlSUQsIHR5
cGUsIHBlcnNpc3RlbnRJRCwgbGFiZWwpKQogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0Owog
CiAgICAgcmV0dXJuIENvcmVBdWRpb0NhcHR1cmVEZXZpY2UoZGV2aWNlSUQsIHBlcnNpc3RlbnRJ
RCwgdHlwZSwgbGFiZWwsIGdyb3VwSUQuaXNOdWxsKCkgPyBwZXJzaXN0ZW50SUQgOiBncm91cElE
KTsKQEAgLTgwLDcgKzk2LDE4IEBAIENvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OkNvcmVBdWRpb0Nh
cHR1cmVEZXZpY2UodWludDMyX3QgZGV2aWNlSUQsIGNvbnN0IFN0cmluZyYKICAgICA6IENhcHR1
cmVEZXZpY2UocGVyc2lzdGVudElELCBkZXZpY2VUeXBlLCBsYWJlbCwgZ3JvdXBJRCkKICAgICAs
IG1fZGV2aWNlSUQoZGV2aWNlSUQpCiB7Ci0gICAgc2V0RW5hYmxlZChpc0FsaXZlKCkpOworICAg
IEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVkaW9EZXZpY2VQcm9wZXJ0
eURldmljZUlzQWxpdmUsIGtBdWRpb09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09i
amVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OworICAgIFVJbnQzMiBzdGF0ZSA9IDA7CisgICAg
VUludDMyIGRhdGFTaXplID0gc2l6ZW9mKHN0YXRlKTsKKyAgICBhdXRvIGVyciA9IEF1ZGlvT2Jq
ZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQzMj4obV9kZXZpY2VJRCksICZhZGRy
ZXNzLCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZzdGF0ZSk7CisgICAgc2V0RW5hYmxlZCghZXJy
ICYmIHN0YXRlKTsKKworICAgIFVJbnQzMiBwcm9wZXJ0eSA9IGRldmljZVR5cGUgPT0gQ2FwdHVy
ZURldmljZTo6RGV2aWNlVHlwZTo6TWljcm9waG9uZSA/IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlE
ZWZhdWx0SW5wdXREZXZpY2UgOiBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdE91dHB1dERl
dmljZTsKKyAgICBhZGRyZXNzID0geyBwcm9wZXJ0eSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29w
ZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07CisgICAgQXVkaW9E
ZXZpY2VJRCBkZWZhdWx0SUQgPSBrQXVkaW9EZXZpY2VVbmtub3duOworICAgIGRhdGFTaXplID0g
c2l6ZW9mKGRlZmF1bHRJRCk7CisgICAgZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEo
a0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXpl
LCAmZGVmYXVsdElEKTsKKyAgICBzZXRJc0RlZmF1bHQoIWVyciAmJiBkZWZhdWx0SUQgPT0gbV9k
ZXZpY2VJRCk7CiB9CiAKIFZlY3RvcjxBdWRpb0RldmljZUlEPiBDb3JlQXVkaW9DYXB0dXJlRGV2
aWNlOjpyZWxhdGVkQXVkaW9EZXZpY2VJRHMoQXVkaW9EZXZpY2VJRCBkZXZpY2VJRCkKQEAgLTEx
NSwxNiArMTQyLDYgQEAgUmV0YWluUHRyPENNQ2xvY2tSZWY+IENvcmVBdWRpb0NhcHR1cmVEZXZp
Y2U6OmRldmljZUNsb2NrKCkKICAgICByZXR1cm4gbV9kZXZpY2VDbG9jazsKIH0KIAotYm9vbCBD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlOjppc0FsaXZlKCkKLXsKLSAgICBBdWRpb09iamVjdFByb3Bl
cnR5QWRkcmVzcyBhZGRyZXNzID0geyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURldmljZUlzQWxpdmUs
IGtBdWRpb09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxl
bWVudE1hc3RlciB9OwotICAgIFVJbnQzMiBzdGF0ZSA9IDA7Ci0gICAgVUludDMyIGRhdGFTaXpl
ID0gc2l6ZW9mKHN0YXRlKTsKLSAgICBpZiAoQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3Rh
dGljX2Nhc3Q8VUludDMyPihtX2RldmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRh
U2l6ZSwgJnN0YXRlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiBzdGF0ZTsK
LX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NU
UkVBTSkgJiYgUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmgKaW5k
ZXggMjY4N2JmYzYzZjY2M2NjNjIxYjJlZGU0M2Y0YWFlOTI2OGNlN2E1Yy4uY2RlOTFjMTg0NjEw
MTQ1OGIxZTFkZWZlYjRiNzMxMmU0YTE1MzI5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURl
dmljZS5oCkBAIC00OCw3ICs0OCw2IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBDb3JlQXVk
aW9DYXB0dXJlRGV2aWNlKHVpbnQzMl90LCBjb25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgRGV2
aWNlVHlwZSwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3QgU3RyaW5nJiBncm91cElEKTsKLSAg
ICBib29sIGlzQWxpdmUoKTsKIAogICAgIHVpbnQzMl90IG1fZGV2aWNlSUQgeyAwIH07CiAgICAg
UmV0YWluUHRyPENNQ2xvY2tSZWY+IG1fZGV2aWNlQ2xvY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1h
bmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcAppbmRleCA3MDBlZWQ5ZWQ4YWYxZjk3MDVhZTQ2
N2Q2OGViNmU2MTNmYjAzMjAwLi40OTNkN2YwOGFkOWY4NGM1ZGE2NDk3OTczNjNhMzhjMmJmMjFh
YjFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMv
Q29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAK
QEAgLTEyOCwyOCArMTI4LDE0IEBAIHN0YXRpYyBib29sIGlzVmFsaWRDYXB0dXJlRGV2aWNlKGNv
bnN0IENvcmVBdWRpb0NhcHR1cmVEZXZpY2UmIGRldmljZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAotc3RhdGljIGlubGluZSBPcHRpb25hbDxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBnZXREZWZh
dWx0Q2FwdHVyZUlucHV0RGV2aWNlKCkKK3ZvaWQgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXI6OnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMoKQogewotICAgIEF1ZGlvT2JqZWN0UHJv
cGVydHlBZGRyZXNzIGFkZHJlc3MgeyBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0
RGV2aWNlLCBrQXVkaW9PYmplY3RQcm9wZXJ0eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9w
ZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKLSAgICBVSW50MzIgcHJvcGVydHlTaXplID0gc2l6ZW9mKEF1
ZGlvRGV2aWNlSUQpOwotICAgIEF1ZGlvRGV2aWNlSUQgZGV2aWNlSUQgPSBrQXVkaW9EZXZpY2VV
bmtub3duOwotICAgIGF1dG8gZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlv
T2JqZWN0U3lzdGVtT2JqZWN0LCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJnByb3BlcnR5U2l6ZSwg
JmRldmljZUlEKTsKLQotICAgIGlmIChlcnIgIT0gbm9FcnIgfHwgZGV2aWNlSUQgPT0ga0F1ZGlv
RGV2aWNlVW5rbm93bikKLSAgICAgICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4gQ29yZUF1ZGlv
Q2FwdHVyZURldmljZTo6Y3JlYXRlKGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBl
OjpNaWNyb3Bob25lLCB7IH0pOwotfQotCi1zdGF0aWMgaW5saW5lIE9wdGlvbmFsPENvcmVBdWRp
b0NhcHR1cmVEZXZpY2U+IGdldERlZmF1bHRDYXB0dXJlT3V0cHV0RGV2aWNlKCkKLXsKLSAgICBB
dWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzIHsga0F1ZGlvSGFyZHdhcmVQcm9wZXJ0
eURlZmF1bHRPdXRwdXREZXZpY2UsIGtBdWRpb09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtB
dWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OwotICAgIFVJbnQzMiBwcm9wZXJ0eVNp
emUgPSBzaXplb2YoQXVkaW9EZXZpY2VJRCk7Ci0gICAgQXVkaW9EZXZpY2VJRCBkZXZpY2VJRCA9
IGtBdWRpb0RldmljZVVua25vd247Ci0gICAgYXV0byBlcnIgPSBBdWRpb09iamVjdEdldFByb3Bl
cnR5RGF0YShrQXVkaW9PYmplY3RTeXN0ZW1PYmplY3QsICZhZGRyZXNzLCAwLCBudWxscHRyLCAm
cHJvcGVydHlTaXplLCAmZGV2aWNlSUQpOworICAgIGlmIChtX3VwZGF0ZURldmljZVN0YXRlUXVl
dWUuaGFzUGVuZGluZ1Rhc2tzKCkpCisgICAgICAgIHJldHVybjsKIAotICAgIGlmIChlcnIgIT0g
bm9FcnIgfHwgZGV2aWNlSUQgPT0ga0F1ZGlvRGV2aWNlVW5rbm93bikKLSAgICAgICAgcmV0dXJu
IHsgfTsKLSAgICByZXR1cm4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRlKGRldmljZUlE
LCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpTcGVha2VyLCB7IH0pOworICAgIG1fdXBkYXRl
RGV2aWNlU3RhdGVRdWV1ZS5lbnF1ZXVlVGFzayhbdGhpc10geworICAgICAgICByZWZyZXNoQXVk
aW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNIYXZlQ2hhbmdlZDo6Tm90aWZ5KTsKKyAg
ICB9KTsKIH0KIAogVmVjdG9yPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+JiBDb3JlQXVkaW9DYXB0
dXJlRGV2aWNlTWFuYWdlcjo6Y29yZUF1ZGlvQ2FwdHVyZURldmljZXMoKQpAQCAtMTY1LDcgKzE1
MSw3IEBAIFZlY3RvcjxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiYgQ29yZUF1ZGlvQ2FwdHVyZURl
dmljZU1hbmFnZXI6OmNvcmVBdWRpb0NhcHR1cmVECiAgICAgICAgICAgICAgICAgbm90aWZ5IHw9
IChwcm9wZXJ0aWVzW2ldLm1TZWxlY3RvciA9PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGV2aWNl
cyB8fCBwcm9wZXJ0aWVzW2ldLm1TZWxlY3RvciA9PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVm
YXVsdElucHV0RGV2aWNlIHx8IHByb3BlcnRpZXNbaV0ubVNlbGVjdG9yID09IGtBdWRpb0hhcmR3
YXJlUHJvcGVydHlEZWZhdWx0T3V0cHV0RGV2aWNlKTsKIAogICAgICAgICAgICAgaWYgKG5vdGlm
eSkKLSAgICAgICAgICAgICAgICBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6c2luZ2xl
dG9uKCkucmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoTm90aWZ5SWZEZXZpY2VzSGF2ZUNoYW5n
ZWQ6Ok5vdGlmeSk7CisgICAgICAgICAgICAgICAgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXI6OnNpbmdsZXRvbigpLnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMoKTsKICAgICAgICAg
fTsKIAogICAgICAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzID0geyBrQXVk
aW9IYXJkd2FyZVByb3BlcnR5RGV2aWNlcywga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2Jh
bCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07CkBAIC0yMjMsMTAgKzIwOSw2
IEBAIHN0YXRpYyBpbmxpbmUgVmVjdG9yPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGNvbXB1dGVB
dWRpb0RldmljZUxpc3QoKQogCiAgICAgVmVjdG9yPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGF1
ZGlvRGV2aWNlczsKIAotICAgIGF1dG8gZGVmYXVsdElucHV0RGV2aWNlID0gZ2V0RGVmYXVsdENh
cHR1cmVJbnB1dERldmljZSgpOwotICAgIGlmIChkZWZhdWx0SW5wdXREZXZpY2UpCi0gICAgICAg
IGF1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92ZSgqZGVmYXVsdElucHV0RGV2aWNlKSk7Ci0KICAg
ICAvLyBNaWNyb3Bob25lcwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZGV2aWNlQ291bnQ7
IGkrKykgewogICAgICAgICBBdWRpb09iamVjdElEIGRldmljZUlEID0gZGV2aWNlSURzW2ldOwpA
QCAtMjM5LDEwICsyMjEsNiBAQCBzdGF0aWMgaW5saW5lIFZlY3RvcjxDb3JlQXVkaW9DYXB0dXJl
RGV2aWNlPiBjb21wdXRlQXVkaW9EZXZpY2VMaXN0KCkKICAgICAgICAgICAgIGF1ZGlvRGV2aWNl
cy5hcHBlbmQoV1RGTW92ZShtaWNyb3Bob25lRGV2aWNlLnZhbHVlKCkpKTsKICAgICB9CiAKLSAg
ICBhdXRvIGRlZmF1bHRPdXRwdXREZXZpY2UgPSBnZXREZWZhdWx0Q2FwdHVyZU91dHB1dERldmlj
ZSgpOwotICAgIGlmIChkZWZhdWx0T3V0cHV0RGV2aWNlKQotICAgICAgICBhdWRpb0RldmljZXMu
YXBwZW5kKFdURk1vdmUoKmRlZmF1bHRPdXRwdXREZXZpY2UpKTsKLQogICAgIC8vIFNwZWFrZXJz
CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBkZXZpY2VDb3VudDsgaSsrKSB7CiAgICAgICAg
IEF1ZGlvT2JqZWN0SUQgZGV2aWNlSUQgPSBkZXZpY2VJRHNbaV07CkBAIC0yODUsMjYgKzI2Mywy
NyBAQCB2b2lkIENvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0
dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNIYQogICAgIGJvb2wgaGF2ZURldmljZUNoYW5nZXMg
PSBhdWRpb0RldmljZXMuc2l6ZSgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXMuc2l6ZSgp
OwogICAgIGlmICghaGF2ZURldmljZUNoYW5nZXMpIHsKICAgICAgICAgZm9yIChzaXplX3QgY3B0
ciA9IDA7IGNwdHIgPCBhdWRpb0RldmljZXMuc2l6ZSgpOyArK2NwdHIpIHsKLSAgICAgICAgICAg
IGlmIChhdWRpb0RldmljZXNbY3B0cl0udHlwZSgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmlj
ZXNbY3B0cl0udHlwZSgpIHx8IGF1ZGlvRGV2aWNlc1tjcHRyXS5kZXZpY2VJRCgpICE9IG1fY29y
ZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0uZGV2aWNlSUQoKSB8fCBhdWRpb0RldmljZXNbY3B0
cl0uZW5hYmxlZCgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0uZW5hYmxlZCgp
KSB7CisgICAgICAgICAgICBhdXRvJiBvbGRTdGF0ZSA9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmlj
ZXNbY3B0cl07CisgICAgICAgICAgICBhdXRvJiBuZXdTdGF0ZSA9IGF1ZGlvRGV2aWNlc1tjcHRy
XTsKKyAgICAgICAgICAgIGlmIChuZXdTdGF0ZS50eXBlKCkgIT0gb2xkU3RhdGUudHlwZSgpIHx8
IG5ld1N0YXRlLmRldmljZUlEKCkgIT0gb2xkU3RhdGUuZGV2aWNlSUQoKSB8fCBuZXdTdGF0ZS5p
c0RlZmF1bHQoKSAhPSBvbGRTdGF0ZS5pc0RlZmF1bHQoKSB8fCBuZXdTdGF0ZS5lbmFibGVkKCkg
IT0gb2xkU3RhdGUuZW5hYmxlZCgpIHx8IG5ld1N0YXRlLmlzRGVmYXVsdCgpICE9IG9sZFN0YXRl
LmlzRGVmYXVsdCgpKQogICAgICAgICAgICAgICAgIGhhdmVEZXZpY2VDaGFuZ2VzID0gdHJ1ZTsK
LSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0K
ICAgICBpZiAoIWhhdmVEZXZpY2VDaGFuZ2VzKQogICAgICAgICByZXR1cm47CiAKKyAgICBzdGQ6
OnNvcnQoYXVkaW9EZXZpY2VzLmJlZ2luKCksIGF1ZGlvRGV2aWNlcy5lbmQoKSwgW10gKGF1dG8m
IGZpcnN0LCBhdXRvJiBzZWNvbmQpIC0+IGJvb2wgeworICAgICAgICByZXR1cm4gZmlyc3QuaXNE
ZWZhdWx0KCkgJiYgIXNlY29uZC5pc0RlZmF1bHQoKTsKKyAgICB9KTsKICAgICBtX2NvcmVBdWRp
b0NhcHR1cmVEZXZpY2VzID0gV1RGTW92ZShhdWRpb0RldmljZXMpOwogCiAgICAgbV9jYXB0dXJl
RGV2aWNlcy5jbGVhcigpOwogICAgIG1fc3BlYWtlckRldmljZXMuY2xlYXIoKTsKICAgICBmb3Ig
KGF1dG8mIGRldmljZSA6IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXMpIHsKLSAgICAgICAgQ2Fw
dHVyZURldmljZSBjYXB0dXJlRGV2aWNlIHsgZGV2aWNlLnBlcnNpc3RlbnRJZCgpLCBkZXZpY2Uu
dHlwZSgpLCBkZXZpY2UubGFiZWwoKSwgZGV2aWNlLmdyb3VwSWQoKSB9OwotICAgICAgICBjYXB0
dXJlRGV2aWNlLnNldEVuYWJsZWQoZGV2aWNlLmVuYWJsZWQoKSk7CiAgICAgICAgIGlmIChkZXZp
Y2UudHlwZSgpID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUpCi0gICAg
ICAgICAgICBtX2NhcHR1cmVEZXZpY2VzLmFwcGVuZChXVEZNb3ZlKGNhcHR1cmVEZXZpY2UpKTsK
KyAgICAgICAgICAgIG1fY2FwdHVyZURldmljZXMuYXBwZW5kKGRldmljZSk7CiAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgIG1fc3BlYWtlckRldmljZXMuYXBwZW5kKFdURk1vdmUoY2FwdHVyZURl
dmljZSkpOworICAgICAgICAgICAgbV9zcGVha2VyRGV2aWNlcy5hcHBlbmQoZGV2aWNlKTsKICAg
ICB9CiAKICAgICBpZiAobm90aWZ5ID09IE5vdGlmeUlmRGV2aWNlc0hhdmVDaGFuZ2VkOjpOb3Rp
ZnkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21h
Yy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXgg
NWU5NjYyYmY0Mjc1OWI2ZTVjZTI5OWQ1MzQ1ZGNmYjM1NWFhYjM0MS4uZjBiMjFhNGFiNTFhYTVl
NTFhODRjNzA1ODc2YzBhY2Q0OTBjYzI3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1
cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUgIkNhcHR1cmVE
ZXZpY2UuaCIKICNpbmNsdWRlICJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIgorI2luY2x1ZGUgIkdl
bmVyaWNUYXNrUXVldWUuaCIKICNpbmNsdWRlIDxDb3JlQXVkaW8vQ29yZUF1ZGlvLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC01NywxMCAr
NTgsMTIgQEAgcHJpdmF0ZToKIAogICAgIGVudW0gY2xhc3MgTm90aWZ5SWZEZXZpY2VzSGF2ZUNo
YW5nZWQgeyBOb3RpZnksIERvTm90Tm90aWZ5IH07CiAgICAgdm9pZCByZWZyZXNoQXVkaW9DYXB0
dXJlRGV2aWNlcyhOb3RpZnlJZkRldmljZXNIYXZlQ2hhbmdlZCk7CisgICAgdm9pZCBzY2hlZHVs
ZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCk7CiAKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9j
YXB0dXJlRGV2aWNlczsKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9zcGVha2VyRGV2aWNl
czsKICAgICBWZWN0b3I8Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gbV9jb3JlQXVkaW9DYXB0dXJl
RGV2aWNlczsKKyAgICBHZW5lcmljVGFza1F1ZXVlPFRpbWVyPiBtX3VwZGF0ZURldmljZVN0YXRl
UXVldWU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413825</attachid>
            <date>2020-11-11 08:47:54 -0800</date>
            <delta_ts>2020-11-11 10:07:10 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-211192-20201111084754.patch</filename>
            <type>text/plain</type>
            <size>31435</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTcxYzRkMjY1MWZhYTNi
NzA2MWYyYzM1ODA3YmQ1ZGM5MjM5MWMxNS4uOTRjMWQ0NWE2ODJhZmJkNzlmZmZmMGJlZjIwODU0
ZjUwYjBmMmFlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYzIEBACisyMDIwLTExLTEwICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFVTQiBtaWNyb3Bo
b25lIG5vdCByZWNvZ25pemVkIGlPUyBTYWZhcmkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTE5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjI2
MDczMTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKworICAgICAgICBU
ZXN0aW5nIHJlcXVpcmVzIGhhcmR3YXJlLCB0ZXN0ZWQgbWFudWFsbHkuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmg6IEFkZCBjb25jZXB0IG9mIGRlZmF1
bHQgZGV2aWNlLgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6aXNEZWZhdWx0IGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OnNldElzRGVmYXVsdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjplbmNvZGUgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q2FwdHVyZURldmljZTo6ZGVjb2RlKToKKworICAgICAgICAqIHBsYXRmb3JtL21l
ZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaDogRG9uJ3QgcmV0YWlu
IHBvcnQKKyAgICAgICAgZGVzY3JpcHRpb24sIGl0IGlzIG5ldmVyIHVzZWQuCisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5tbToK
KyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6Y3JlYXRlKTog
QWRkIGRlZmF1bHQgaW5wdXQgcGFyYW1ldGVyLgorICAgICAgICAoV2ViQ29yZTo6QVZBdWRpb1Nl
c3Npb25DYXB0dXJlRGV2aWNlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UpOiBTZXQgZW5h
YmxlZAorICAgICAgICBhbmQgZGVmYXVsdCBhdHRyaWJ1dGVzLgorCisgICAgICAgICogcGxhdGZv
cm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJl
RGV2aWNlTWFuYWdlci5tbToKKyAgICAgICAgKC1bV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJ
bnB1dHNMaXN0ZW5lciBpbml0V2l0aENhbGxiYWNrOmF1ZGlvU2Vzc2lvbjpdKTogVGFrZQorICAg
ICAgICBwYXJlbnQgb2JqZWN0IGFuZCBhdWRpbyBzZXNzaW9uLiBMaXN0ZW4gZm9yIHNlc3Npb24g
cm91dGUgY2hhbmdlIG5vdGlmaWNhdGlvbi4KKyAgICAgICAgKC1bV2ViQVZBdWRpb1Nlc3Npb25B
dmFpbGFibGVJbnB1dHNMaXN0ZW5lciBpbnZhbGlkYXRlXSk6CisgICAgICAgICgtW1dlYkFWQXVk
aW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgcm91dGVEaWRDaGFuZ2U6XSk6CisgICAg
ICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpBVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKToKKyAgICAgICAgQWxsb2NhdGUgYW5kIHVzZSBh
biBhdXhpbGlhcnkgYXVkaW8gc2Vzc2lvbiBiZWNhdXNlIGl0IGlzbid0IHBvc3NpYmxlIHRvIGVu
dW1lcmF0ZQorICAgICAgICBhbGwgYXVkaW8gaW5wdXRzIHdpdGhvdXQgb25lLgorICAgICAgICAo
V2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6YXVkaW9TZXNzaW9u
RGV2aWNlV2l0aFVJRCk6IE5vIG5lZWQKKyAgICAgICAgdG8gY2FsbCByZWZyZXNoQXVkaW9DYXB0
dXJlRGV2aWNlcywgYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXMgZG9lcyBpdCBpZiBuZWNlc3Nh
cnkuCisgICAgICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2Vy
OjpzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKTogTmV3LAorICAgICAgICByZWZyZXNoIGRl
dmljZXMgb24gYSB0YXNrIHF1ZXVlIGJlY2F1c2Ugd2UgZnJlcXVlbnRseSBnZXQgbW9yZSB0aGFu
IG9uZSBub3RpZmljYXRpb24KKyAgICAgICAgd2hlbiBhIHJvdXRlIGNoYW5nZXMuCisgICAgICAg
IChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVk
aW9DYXB0dXJlRGV2aWNlcyk6IFNvcnQgZGV2aWNlcworICAgICAgICBzbyB0aGUgZGVmYXVsdCBp
cyBhbHdheXMgZmlyc3QuIE9ubHkgY2FsbCBkZXZpY2VDaGFuZ2VkIHdoZW4gc29tZXRoaW5nIGFj
dHVhbGx5IGNoYW5nZXMuCisgICAgICAgICgtW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5w
dXRzTGlzdGVuZXIgaW5pdFdpdGhDYWxsYmFjazpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2Vi
QVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciBvYnNlcnZlVmFsdWVGb3JLZXlQ
YXRoOm9mT2JqZWN0OmNoYW5nZTpjb250ZXh0Ol0pOiBEZWxldGVkLgorCisgICAgICAgICogcGxh
dGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Z2V0RGV2aWNlSW5mbyk6IERlYWwgd2l0aCBpbnB1dCBhbmQgb3V0cHV0IGRl
dmljZXMuIFRyYW5zbGF0ZSB0aGUgZGF0YQorICAgICAgICBzb3VyY2UgbmFtZSBpZiBwb3NzaWJs
ZS4KKyAgICAgICAgKFdlYkNvcmU6OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpDb3JlQXVkaW9DYXB0dXJl
RGV2aWNlKTogU2V0IG5ldyBgZGVmYXVsdGAgYXR0cmlidXRlLgorICAgICAgICAoV2ViQ29yZTo6
Q29yZUF1ZGlvQ2FwdHVyZURldmljZTo6ZGVmYXVsdERldmljZSk6IE5ldy4KKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5oOgorCisgICAg
ICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2Vy
OjpzY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKTogTmV3LCBjb2FsZXNjZQorICAgICAgICBj
YWxscyB0byByZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcy4KKyAgICAgICAgKFdlYkNvcmU6OkNv
cmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpjb3JlQXVkaW9DYXB0dXJlRGV2aWNlcyk6IAor
ICAgICAgICAoV2ViQ29yZTo6Y29tcHV0ZUF1ZGlvRGV2aWNlTGlzdCk6IE5vIG5lZWQgdG8gY2hl
Y2sgZm9yIHRoZSBkZWZhdWx0IGRldmljZSBleHBsaWNpdGx5LgorICAgICAgICAoV2ViQ29yZTo6
Q29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2Vz
KToKKyAgICAgICAgKFdlYkNvcmU6OmdldERlZmF1bHRDYXB0dXJlSW5wdXREZXZpY2UpOiBEZWxl
dGVkLgorICAgICAgICAoV2ViQ29yZTo6Z2V0RGVmYXVsdENhcHR1cmVPdXRwdXREZXZpY2UpOiBE
ZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0
dXJlRGV2aWNlTWFuYWdlci5oOgorCiAyMDIwLTExLTA1ICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRml4IGJ1aWxkIGFmdGVyIHIyNjk0MzUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGM5NDZmMDRiYWY5NjA3ZTA5MTU1YTkwYmE5NmE3YzliMDI2
ZmZjZmQuLjk4YTQ0ODU3ZjdjOTUzNjY0OGNiYjc0YTZjZTE2YTVlN2E3ZmViMGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFM
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTExLTEwICBFcmljIENhcmxzb24gIDxl
cmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFVTQiBtaWNyb3Bob25lIG5vdCByZWNv
Z25pemVkIGlPUyBTYWZhcmkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMTE5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjI2MDczMTM+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKworICAgICAgICAqIHBhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmg6IERlY2xhcmUgK1tBVkF1ZGlvU2Vzc2lvbiBpbml0QXV4aWxp
YXJ5U2Vzc2lvbl0uCisKIDIwMjAtMTEtMDQgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxl
LmNvbT4KIAogICAgICAgICBXZWJLaXQgc2hvdWxkIHJlbW92ZSB1bnVzZWQgZGVidWcgdmFyaWFu
dCBzdXBwb3J0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9B
VkZvdW5kYXRpb25TUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91
bmRhdGlvblNQSS5oCmluZGV4IGVjNjhiNzhjMjQ0OGQ4Y2M5ZWE1MzEzZWI0NTJhMmQ2MmI1OTAx
OGEuLjNlZGVkNzBjYWI3NjAzOWVlYTNiNWZlYjJiZDc5MzU4NGUyMGIyYjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oCkBAIC0z
NTQsMTIgKzM1NCwxMyBAQCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIEBlbmQKICNlbmRpZgogCi0j
aWYgIVVTRShBUFBMRV9JTlRFUk5BTF9TREspICYmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmICFQ
TEFURk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKQor
I2lmICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSAmJiBQTEFURk9STShJT1NfRkFNSUxZKSAmJiAh
UExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAjaW1wb3J0IDxBVkZvdW5kYXRpb24vQVZBdWRpb1Nlc3Np
b24uaD4KIAogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIAogQGludGVyZmFjZSBBVkF1ZGlvU2Vz
c2lvbiAoQVZBdWRpb1Nlc3Npb25Qcml2YXRlKQorLSAoaW5zdGFuY2V0eXBlKWluaXRBdXhpbGlh
cnlTZXNzaW9uOwogQHByb3BlcnR5IChyZWFkb25seSkgTlNTdHJpbmcqIHJvdXRpbmdDb250ZXh0
VUlEOwogQGVuZAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9DYXB0dXJlRGV2aWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9DYXB0dXJlRGV2aWNlLmgKaW5kZXggNGE0OGE5NDNhNmUzNTZiYmE0ODc1YzI0YzU1OTNmZTk2
YzQzOWI3Mi4uNTRlOGFhY2Q0ZTYyMzVkOGU0ZTkyZjM0MzRjYTg5MjRiZWY0OWI5MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2Uu
aApAQCAtNjMsNiArNjMsOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBlbmFibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9lbmFibGVkOyB9CiAgICAgdm9pZCBzZXRFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBt
X2VuYWJsZWQgPSBlbmFibGVkOyB9CiAKKyAgICBib29sIGlzRGVmYXVsdCgpIGNvbnN0IHsgcmV0
dXJuIG1fZGVmYXVsdDsgfQorICAgIHZvaWQgc2V0SXNEZWZhdWx0KGJvb2wgaXNEZWZhdWx0KSB7
IG1fZGVmYXVsdCA9IGlzRGVmYXVsdDsgfQorCiAgICAgZXhwbGljaXQgb3BlcmF0b3IgYm9vbCgp
IGNvbnN0IHsgcmV0dXJuIG1fdHlwZSAhPSBEZXZpY2VUeXBlOjpVbmtub3duOyB9CiAKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQpAQCAtNzMsNiArNzYsNyBAQCBwdWJsaWM6CiAgICAgICAgIGVu
Y29kZXIgPDwgbV9sYWJlbDsKICAgICAgICAgZW5jb2RlciA8PCBtX2dyb3VwSWQ7CiAgICAgICAg
IGVuY29kZXIgPDwgbV9lbmFibGVkOworICAgICAgICBlbmNvZGVyIDw8IG1fZGVmYXVsdDsKICAg
ICAgICAgZW5jb2RlciA8PCBtX3R5cGU7CiAgICAgfQogCkBAIC05OSw2ICsxMDMsMTEgQEAgcHVi
bGljOgogICAgICAgICBpZiAoIWVuYWJsZWQpCiAgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxs
b3B0OwogCisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGlzRGVmYXVsdDsKKyAgICAgICAgZGVjb2Rl
ciA+PiBpc0RlZmF1bHQ7CisgICAgICAgIGlmICghaXNEZWZhdWx0KQorICAgICAgICAgICAgcmV0
dXJuIFdURjo6bnVsbG9wdDsKKwogICAgICAgICBPcHRpb25hbDxDYXB0dXJlRGV2aWNlOjpEZXZp
Y2VUeXBlPiB0eXBlOwogICAgICAgICBkZWNvZGVyID4+IHR5cGU7CiAgICAgICAgIGlmICghdHlw
ZSkKQEAgLTEwNiw2ICsxMTUsNyBAQCBwdWJsaWM6CiAKICAgICAgICAgT3B0aW9uYWw8Q2FwdHVy
ZURldmljZT4gZGV2aWNlID0ge3sgV1RGTW92ZSgqcGVyc2lzdGVudElkKSwgV1RGTW92ZSgqdHlw
ZSksIFdURk1vdmUoKmxhYmVsKSwgV1RGTW92ZSgqZ3JvdXBJZCkgfX07CiAgICAgICAgIGRldmlj
ZS0+c2V0RW5hYmxlZCgqZW5hYmxlZCk7CisgICAgICAgIGRldmljZS0+c2V0SXNEZWZhdWx0KCpp
c0RlZmF1bHQpOwogICAgICAgICByZXR1cm4gZGV2aWNlOwogICAgIH0KICNlbmRpZgpAQCAtMTE2
LDYgKzEyNiw3IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIG1fbGFiZWw7CiAgICAgU3RyaW5nIG1f
Z3JvdXBJZDsKICAgICBib29sIG1fZW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2RlZmF1
bHQgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FW
QXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5oCmluZGV4IDA5YjgxMzMwZWM1M2QzMTY0MThmNTE4
MjFjMWNkNmI5YmI2N2Q1NmYuLjExMDE1ZjY0NGQ0NDhlYTFiMmZjN2FkNWJjYTg0Mzc0YzRlZGE5
YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9B
VkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmgKQEAgLTM2LDEz
ICszNiwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEFWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZSA6IHB1YmxpYyBDYXB0dXJlRGV2aWNlIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMg
QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlIGNyZWF0ZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNj
cmlwdGlvbiopOworICAgIHN0YXRpYyBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UgY3JlYXRl
KEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0aW9uICpkZXZpY2VJbnB1dCwgQVZBdWRpb1Nlc3Np
b25Qb3J0RGVzY3JpcHRpb24gKmRlZmF1bHRJbnB1dCk7CiAgICAgdmlydHVhbCB+QVZBdWRpb1Nl
c3Npb25DYXB0dXJlRGV2aWNlKCkgPSBkZWZhdWx0OwogCiBwcml2YXRlOgotICAgIEFWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiosIGNvbnN0
IFN0cmluZyYgcGVyc2lzdGVudElELCBjb25zdCBTdHJpbmcmIGxhYmVsKTsKLQotICAgIFJldGFp
blB0cjxBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbj4gbV9wb3J0RGVzY3JpcHRpb247Cisg
ICAgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlKEFWQXVkaW9TZXNzaW9uUG9ydERlc2NyaXB0
aW9uICpkZXZpY2VJbnB1dCwgQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKmRlZmF1bHRJ
bnB1dCk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9T
ZXNzaW9uQ2FwdHVyZURldmljZS5tbQppbmRleCBmYzQxODAzN2FjMTkwZjViZDQwNDFmYmQ3M2Ni
Nzk2YzI1MDJmNjE5Li4wZmE3MWZhZDE2ZTJkZDU3MjQ3ZGYyM2Y3MmI2NmQ3YTBhYjM5YWVjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UubW0KQEAgLTMyLDE5ICsz
MiwxNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUFWQXVkaW9TZXNzaW9uQ2FwdHVyZURl
dmljZSBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZShBVkF1ZGlvU2Vzc2lvblBv
cnREZXNjcmlwdGlvbiogcG9ydERlc2NyaXB0aW9uKQorQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZTo6Y3JlYXRlKEFWQXVkaW9TZXNzaW9uUG9y
dERlc2NyaXB0aW9uKiBkZXZpY2VJbnB1dCwgQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24g
KmRlZmF1bHRJbnB1dCkKIHsKLSAgICBTdHJpbmcgcGVyc2lzdGVudElEID0gcG9ydERlc2NyaXB0
aW9uLlVJRDsKLSAgICBTdHJpbmcgbGFiZWwgPSBwb3J0RGVzY3JpcHRpb24ucG9ydE5hbWU7Ci0g
ICAgYXV0byBkZXZpY2UgPSBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UocG9ydERlc2NyaXB0
aW9uLCBwZXJzaXN0ZW50SUQsIGxhYmVsKTsKLSAgICBkZXZpY2Uuc2V0RW5hYmxlZChwb3J0RGVz
Y3JpcHRpb24uZGF0YVNvdXJjZXMuY291bnQpOwotICAgIHJldHVybiBkZXZpY2U7CisgICAgcmV0
dXJuIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShkZXZpY2VJbnB1dCwgZGVmYXVsdElucHV0
KTsKIH0KIAotQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2UoQVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24qIHBvcnREZXNjcmlwdGlvbiwg
Y29uc3QgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIGNvbnN0IFN0cmluZyYgbGFiZWwpCi0gICAgOiBD
YXB0dXJlRGV2aWNlKHBlcnNpc3RlbnRJRCwgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6TWlj
cm9waG9uZSwgbGFiZWwpCi0gICAgLCBtX3BvcnREZXNjcmlwdGlvbihwb3J0RGVzY3JpcHRpb24p
CitBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmlj
ZShBVkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqZGV2aWNlSW5wdXQsIEFWQXVkaW9TZXNz
aW9uUG9ydERlc2NyaXB0aW9uICpkZWZhdWx0SW5wdXQpCisgICAgOiBDYXB0dXJlRGV2aWNlKGRl
dmljZUlucHV0LlVJRCwgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6TWljcm9waG9uZSwgZGV2
aWNlSW5wdXQucG9ydE5hbWUpCiB7CisgICAgc2V0RW5hYmxlZCh0cnVlKTsKKyAgICBzZXRJc0Rl
ZmF1bHQoZGVmYXVsdElucHV0ICYmIFtkZWZhdWx0SW5wdXQuVUlEIGlzRXF1YWxUb1N0cmluZzpk
ZXZpY2VJbnB1dC5VSURdKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggMzk5NjE2ODc5YzUxZmE4ODRjYTc4YjMwOGVh
ZDNmN2YzNzQzNGY3MC4uNmFiNGUyYzc0MmQzMWU0YmZjZDhjNWViOTg3ZDkxMTU2MTVkM2NjZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVk
aW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5o
CkBAIC0yOCwxMCArMjgsMTIgQEAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKSAmJiBQTEFURk9S
TShJT1NfRkFNSUxZKQogCiAjaW5jbHVkZSAiQ2FwdHVyZURldmljZU1hbmFnZXIuaCIKKyNpbmNs
dWRlICJHZW5lcmljVGFza1F1ZXVlLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNs
dWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIAorT0JKQ19D
TEFTUyBBVkF1ZGlvU2Vzc2lvbjsKIE9CSkNfQ0xBU1MgV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFi
bGVJbnB1dHNMaXN0ZW5lcjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDgsMTkgKzUwLDIz
IEBAIHB1YmxpYzoKICAgICBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIHNwZWFrZXJEZXZp
Y2VzKCkgY29uc3QgeyByZXR1cm4gbV9zcGVha2VyRGV2aWNlczsgfQogICAgIE9wdGlvbmFsPENh
cHR1cmVEZXZpY2U+IGNhcHR1cmVEZXZpY2VXaXRoUGVyc2lzdGVudElEKENhcHR1cmVEZXZpY2U6
OkRldmljZVR5cGUsIGNvbnN0IFN0cmluZyYpOwogCi0gICAgVmVjdG9yPEFWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZT4mIGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzKCk7CiAgICAgT3B0aW9u
YWw8QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlPiBhdWRpb1Nlc3Npb25EZXZpY2VXaXRoVUlE
KGNvbnN0IFN0cmluZyYpOworICAgIAorICAgIHZvaWQgc2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2
aWNlcygpOwogCiBwcml2YXRlOgotICAgIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFn
ZXIoKSA9IGRlZmF1bHQ7CisgICAgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcigp
OwogICAgIH5BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCk7CiAKICAgICB2b2lk
IHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7CisgICAgVmVjdG9yPEFWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZT4mIGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzKCk7CiAKICAgICBPcHRp
b25hbDxWZWN0b3I8Q2FwdHVyZURldmljZT4+IG1fZGV2aWNlczsKICAgICBWZWN0b3I8Q2FwdHVy
ZURldmljZT4gbV9zcGVha2VyRGV2aWNlczsKICAgICBPcHRpb25hbDxWZWN0b3I8QVZBdWRpb1Nl
c3Npb25DYXB0dXJlRGV2aWNlPj4gbV9hdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlczsKICAgICBS
ZXRhaW5QdHI8V2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lcj4gbV9saXN0
ZW5lcjsKKyAgICBSZXRhaW5QdHI8QVZBdWRpb1Nlc3Npb24+IG1fYXVkaW9TZXNzaW9uOworICAg
IEdlbmVyaWNUYXNrUXVldWU8VGltZXI+IG1fdXBkYXRlRGV2aWNlU3RhdGVRdWV1ZTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZU1hbmFnZXIubW0KaW5kZXggNDYwNTBkOTM4MzRmM2E5MzdmZWUzNzU1NzM3
ZGVhYTRlMmM5YzBhNS4uODE4YzhmNWEwNzk4ZGY4MTVkNjUzNDNkN2UwNjlkYjNkMzNkYjNjZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVk
aW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIu
bW0KQEAgLTI5LDQzICsyOSw1MyBAQAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pICYmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAKICNpbXBvcnQgIkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5o
IgorI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5oIgogI2ltcG9ydCA8QVZGb3VuZGF0aW9uL0FWQXVkaW9TZXNzaW9uLmg+CisjaW1wb3J0IDxw
YWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oPgorI2ltcG9ydCA8d3RmL0Fzc2VydGlvbnMu
aD4KKyNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvVmVjdG9yLmg+CiAK
ICNpbXBvcnQgPHBhbC9jb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oPgogCi12b2lkKiBBdmFp
bGFibGVJbnB1dHNDb250ZXh0ID0gJkF2YWlsYWJsZUlucHV0c0NvbnRleHQ7Ci0KIEBpbnRlcmZh
Y2UgV2ViQVZBdWRpb1Nlc3Npb25BdmFpbGFibGVJbnB1dHNMaXN0ZW5lciA6IE5TT2JqZWN0IHsK
LSAgICBXVEY6OkZ1bmN0aW9uPHZvaWQoKT4gX2NhbGxiYWNrOworICAgIFdlYkNvcmU6OkFWQXVk
aW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIqIF9jYWxsYmFjazsKIH0KIEBlbmQKIAogQGlt
cGxlbWVudGF0aW9uIFdlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIKLS0g
KGlkKWluaXRXaXRoQ2FsbGJhY2s6KFdURjo6RnVuY3Rpb248dm9pZCgpPiYmKWNhbGxiYWNrCist
IChpZClpbml0V2l0aENhbGxiYWNrOihXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyICopY2FsbGJhY2sgYXVkaW9TZXNzaW9uOihBVkF1ZGlvU2Vzc2lvbiAqKXNlc3Np
b24KIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAg
cmV0dXJuIG5pbDsKIAotICAgIF9jYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spOworICAgIFtb
TlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxl
Y3RvcjpAc2VsZWN0b3Iocm91dGVEaWRDaGFuZ2U6KSBuYW1lOlBBTDo6Z2V0X0FWRm91bmRhdGlv
bl9BVkF1ZGlvU2Vzc2lvblJvdXRlQ2hhbmdlTm90aWZpY2F0aW9uKCkgb2JqZWN0OnNlc3Npb25d
OworCisgICAgX2NhbGxiYWNrID0gY2FsbGJhY2s7CisKICAgICByZXR1cm4gc2VsZjsKIH0KIAog
LSAodm9pZClpbnZhbGlkYXRlCiB7CiAgICAgX2NhbGxiYWNrID0gbnVsbHB0cjsKKyAgICBbW05T
Tm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGZdOwog
fQogCi0tICh2b2lkKW9ic2VydmVWYWx1ZUZvcktleVBhdGg6KE5TU3RyaW5nICopa2V5UGF0aCBv
Zk9iamVjdDooaWQpb2JqZWN0IGNoYW5nZTooTlNEaWN0aW9uYXJ5PE5TS2V5VmFsdWVDaGFuZ2VL
ZXksIGlkPiAqKWNoYW5nZSBjb250ZXh0Oih2b2lkICopY29udGV4dAorLSAodm9pZClyb3V0ZURp
ZENoYW5nZTooTlNOb3RpZmljYXRpb24gKilub3RpZmljYXRpb24KIHsKLSAgICBVTlVTRURfUEFS
QU0oa2V5UGF0aCk7Ci0gICAgVU5VU0VEX1BBUkFNKG9iamVjdCk7Ci0gICAgVU5VU0VEX1BBUkFN
KGNoYW5nZSk7Ci0gICAgaWYgKGNvbnRleHQgPT0gQXZhaWxhYmxlSW5wdXRzQ29udGV4dCAmJiBf
Y2FsbGJhY2spCi0gICAgICAgIF9jYWxsYmFjaygpOworICAgIGlmICghX2NhbGxiYWNrKQorICAg
ICAgICByZXR1cm47CisKKyAgICBjYWxsT25XZWJUaHJlYWRPckRpc3BhdGNoQXN5bmNPbk1haW5U
aHJlYWQoW3Byb3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZildKCkgbXV0YWJsZSB7CisgICAg
ICAgIGlmIChhdXRvKiBjYWxsYmFjayA9IHByb3RlY3RlZFNlbGYtPl9jYWxsYmFjaykKKyAgICAg
ICAgICAgIGNhbGxiYWNrLT5zY2hlZHVsZVVwZGF0ZUNhcHR1cmVEZXZpY2VzKCk7CisgICAgfSk7
CisKIH0KKwogQGVuZAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC03Niw2ICs4NiwyNCBAQCBB
VkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyJiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVE
ZXZpY2VNYW5hZ2VyOjpzaW5nbGV0bwogICAgIHJldHVybiBtYW5hZ2VyOwogfQogCitBVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VN
YW5hZ2VyKCkKK3sKKyNpZiAhUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgbV9hdWRpb1Nlc3Np
b24gPSBhZG9wdE5TKFtbUEFMOjpnZXRBVkF1ZGlvU2Vzc2lvbkNsYXNzKCkgYWxsb2NdIGluaXRB
dXhpbGlhcnlTZXNzaW9uXSk7CisjZWxzZQorICAgIC8vIEZJWE1FOiBGaWd1cmUgb3V0IGlmIHRo
aXMgaXMgY29ycmVjdCBmb3IgQ2F0YWx5c3QsIHdoZXJlIGF1eGlsaWFyeSBzZXNzaW9uIGlzbid0
IGF2YWlsYWJsZS4KKyAgICBtX2F1ZGlvU2Vzc2lvbiA9IFtQQUw6OmdldEFWQXVkaW9TZXNzaW9u
Q2xhc3MoKSBzaGFyZWRJbnN0YW5jZV07CisjZW5kaWYKKyAgICAKKyAgICBOU0Vycm9yICplcnJv
ciA9IG5pbDsKKyAgICBhdXRvIG9wdGlvbnMgPSBBVkF1ZGlvU2Vzc2lvbkNhdGVnb3J5T3B0aW9u
QWxsb3dCbHVldG9vdGggfCBBVkF1ZGlvU2Vzc2lvbkNhdGVnb3J5T3B0aW9uTWl4V2l0aE90aGVy
czsKKyAgICBbbV9hdWRpb1Nlc3Npb24gc2V0Q2F0ZWdvcnk6QVZBdWRpb1Nlc3Npb25DYXRlZ29y
eVBsYXlBbmRSZWNvcmQgbW9kZTpBVkF1ZGlvU2Vzc2lvbk1vZGVWaWRlb0NoYXQgb3B0aW9uczpv
cHRpb25zIGVycm9yOiZlcnJvcl07CisgICAgaWYgKGVycm9yKSB7CisgICAgICAgIFJFTEVBU0Vf
TE9HX0VSUk9SKFdlYlJUQywgIkZhaWxlZCB0byBzZXQgYXVkaW8gc2Vzc2lvbiBjYXRlZ29yeSB3
aXRoIGVycm9yOiAlQC4iLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbik7CisgICAgICAgIHJl
dHVybjsKKyAgICB9Cit9CisKIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6On5B
VkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKIHsKICAgICBbbV9saXN0ZW5lciBp
bnZhbGlkYXRlXTsKQEAgLTEwOCw5ICsxMzYsNiBAQCBWZWN0b3I8QVZBdWRpb1Nlc3Npb25DYXB0
dXJlRGV2aWNlPiYgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6YXVkaW9TZQog
CiBPcHRpb25hbDxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+IEFWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZU1hbmFnZXI6OmF1ZGlvU2Vzc2lvbkRldmljZVdpdGhVSUQoY29uc3QgU3RyaW5n
JiBkZXZpY2VJRCkKIHsKLSAgICBpZiAoIW1fYXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZXMpCi0g
ICAgICAgIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7Ci0KICAgICBmb3IgKGF1dG8mIGRl
dmljZSA6IGF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzKCkpIHsKICAgICAgICAgaWYgKGRldmlj
ZS5wZXJzaXN0ZW50SWQoKSA9PSBkZXZpY2VJRCkKICAgICAgICAgICAgIHJldHVybiBkZXZpY2U7
CkBAIC0xMTgsMzAgKzE0Myw1OSBAQCBPcHRpb25hbDxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2U+IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmF1ZGlvUwogICAgIHJldHVy
biBXVEY6Om51bGxvcHQ7CiB9CiAKK3ZvaWQgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFu
YWdlcjo6c2NoZWR1bGVVcGRhdGVDYXB0dXJlRGV2aWNlcygpCit7CisgICAgaWYgKG1fdXBkYXRl
RGV2aWNlU3RhdGVRdWV1ZS5oYXNQZW5kaW5nVGFza3MoKSkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV91cGRhdGVEZXZpY2VTdGF0ZVF1ZXVlLmVucXVldWVUYXNrKFt0aGlzXSB7CisgICAgICAg
IHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZpY2VzKCk7CisgICAgfSk7Cit9CisKIHZvaWQgQVZBdWRp
b1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMo
KQogewotICAgIGlmICghbV9saXN0ZW5lcikgewotICAgICAgICBtX2xpc3RlbmVyID0gYWRvcHRO
UyhbW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgYWxsb2NdIGluaXRX
aXRoQ2FsbGJhY2s6W3RoaXNdIHsKLSAgICAgICAgICAgIHJlZnJlc2hBdWRpb0NhcHR1cmVEZXZp
Y2VzKCk7Ci0gICAgICAgIH1dKTsKLSAgICAgICAgW1tQQUw6OmdldEFWQXVkaW9TZXNzaW9uQ2xh
c3MoKSBzaGFyZWRJbnN0YW5jZV0gYWRkT2JzZXJ2ZXI6bV9saXN0ZW5lci5nZXQoKSBmb3JLZXlQ
YXRoOkAiYXZhaWxhYmxlSW5wdXRzIiBvcHRpb25zOjAgY29udGV4dDpBdmFpbGFibGVJbnB1dHND
b250ZXh0XTsKLSAgICB9CisgICAgaWYgKCFtX2xpc3RlbmVyKQorICAgICAgICBtX2xpc3RlbmVy
ID0gYWRvcHROUyhbW1dlYkFWQXVkaW9TZXNzaW9uQXZhaWxhYmxlSW5wdXRzTGlzdGVuZXIgYWxs
b2NdIGluaXRXaXRoQ2FsbGJhY2s6dGhpcyBhdWRpb1Nlc3Npb246bV9hdWRpb1Nlc3Npb24uZ2V0
KCldKTsKKworICAgIE5TRXJyb3IgKmVycm9yID0gbmlsOworICAgIFttX2F1ZGlvU2Vzc2lvbiBz
ZXRBY3RpdmU6WUVTIHdpdGhPcHRpb25zOjAgZXJyb3I6JmVycm9yXTsKKyAgICBpZiAoZXJyb3Ip
CisgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKFdlYlJUQywgIkZhaWxlZCB0byBhY3RpdmF0ZSBh
dWRpbyBzZXNzaW9uIHdpdGggZXJyb3I6ICVALiIsIGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9u
KTsKIAogICAgIFZlY3RvcjxBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U+IG5ld0F1ZGlvRGV2
aWNlczsKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbmV3RGV2aWNlczsKLQotICAgIGZvciAo
QVZBdWRpb1Nlc3Npb25Qb3J0RGVzY3JpcHRpb24gKnBvcnREZXNjcmlwdGlvbiBpbiBbUEFMOjpn
ZXRBVkF1ZGlvU2Vzc2lvbkNsYXNzKCkgc2hhcmVkSW5zdGFuY2VdLmF2YWlsYWJsZUlucHV0cykg
ewotICAgICAgICBhdXRvIGF1ZGlvRGV2aWNlID0gQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNl
OjpjcmVhdGUocG9ydERlc2NyaXB0aW9uKTsKKyAgICBhdXRvICpkZWZhdWx0SW5wdXQgPSBbbV9h
dWRpb1Nlc3Npb24gY3VycmVudFJvdXRlXS5pbnB1dHMuZmlyc3RPYmplY3Q7CisgICAgZm9yIChB
VkF1ZGlvU2Vzc2lvblBvcnREZXNjcmlwdGlvbiAqcG9ydERlc2NyaXB0aW9uIGluIFttX2F1ZGlv
U2Vzc2lvbiBhdmFpbGFibGVJbnB1dHNdKSB7CisgICAgICAgIGF1dG8gYXVkaW9EZXZpY2UgPSBB
VkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OmNyZWF0ZShwb3J0RGVzY3JpcHRpb24sIGRlZmF1
bHRJbnB1dCk7CiAgICAgICAgIG5ld0RldmljZXMuYXBwZW5kKGF1ZGlvRGV2aWNlKTsKICAgICAg
ICAgbmV3QXVkaW9EZXZpY2VzLmFwcGVuZChXVEZNb3ZlKGF1ZGlvRGV2aWNlKSk7CiAgICAgfQog
CisgICAgYm9vbCBmaXJzdFRpbWUgPSAhbV9kZXZpY2VzOworICAgIGJvb2wgaGF2ZURldmljZUNo
YW5nZXMgPSAhbV9kZXZpY2VzIHx8IG5ld0F1ZGlvRGV2aWNlcy5zaXplKCkgIT0gbV9kZXZpY2Vz
LT5zaXplKCk7CisgICAgaWYgKCFoYXZlRGV2aWNlQ2hhbmdlcykgeworICAgICAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IG5ld0F1ZGlvRGV2aWNlcy5zaXplKCk7ICsraSkgeworICAgICAgICAg
ICAgYXV0byYgb2xkU3RhdGUgPSAoKm1fZGV2aWNlcylbaV07CisgICAgICAgICAgICBhdXRvJiBu
ZXdTdGF0ZSA9IG5ld0F1ZGlvRGV2aWNlc1tpXTsKKyAgICAgICAgICAgIGlmIChuZXdTdGF0ZS50
eXBlKCkgIT0gb2xkU3RhdGUudHlwZSgpIHx8IG5ld1N0YXRlLnBlcnNpc3RlbnRJZCgpICE9IG9s
ZFN0YXRlLnBlcnNpc3RlbnRJZCgpIHx8IG5ld1N0YXRlLmVuYWJsZWQoKSAhPSBvbGRTdGF0ZS5l
bmFibGVkKCkgfHwgbmV3U3RhdGUuaXNEZWZhdWx0KCkgIT0gb2xkU3RhdGUuaXNEZWZhdWx0KCkp
CisgICAgICAgICAgICAgICAgaGF2ZURldmljZUNoYW5nZXMgPSB0cnVlOworICAgICAgICB9Cisg
ICAgfQorCisgICAgaWYgKCFoYXZlRGV2aWNlQ2hhbmdlcyAmJiAhZmlyc3RUaW1lKQorICAgICAg
ICByZXR1cm47CisKICAgICBtX2F1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzID0gV1RGTW92ZShu
ZXdBdWRpb0RldmljZXMpOworICAgIHN0ZDo6c29ydChuZXdEZXZpY2VzLmJlZ2luKCksIG5ld0Rl
dmljZXMuZW5kKCksIFtdIChhdXRvJiBmaXJzdCwgYXV0byYgc2Vjb25kKSAtPiBib29sIHsKKyAg
ICAgICAgcmV0dXJuIGZpcnN0LmlzRGVmYXVsdCgpICYmICFzZWNvbmQuaXNEZWZhdWx0KCk7Cisg
ICAgfSk7CiAgICAgbV9kZXZpY2VzID0gV1RGTW92ZShuZXdEZXZpY2VzKTsKIAotICAgIGRldmlj
ZUNoYW5nZWQoKTsKKyAgICBpZiAoIWZpcnN0VGltZSkKKyAgICAgICAgZGV2aWNlQ2hhbmdlZCgp
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFCTEUoTUVESUFf
U1RSRUFNKSAmJiBQTEFURk9STShNQUMpCisjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkg
JiYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmNw
cAppbmRleCBmNWViNjgwZTRkOTAzYzJmNzc3YzBkZjRjNmZhN2U2OWJiZTkzYzNmLi5iMmJhNmFk
MWVhZDEwNThmYjE1YzE4ODVkMjY1ZWZmOTgwNTkwYjExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0Nh
cHR1cmVEZXZpY2UuY3BwCkBAIC0zOCw3ICszOCw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1
c2luZyBuYW1lc3BhY2UgUEFMOwogCi1zdGF0aWMgYm9vbCBnZXREZXZpY2VJbmZvKHVpbnQzMl90
IGRldmljZUlELCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgU3RyaW5nJiBsYWJlbCkKK3N0YXRpYyBi
b29sIGdldERldmljZUluZm8odWludDMyX3QgZGV2aWNlSUQsIENhcHR1cmVEZXZpY2U6OkRldmlj
ZVR5cGUgdHlwZSwgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIFN0cmluZyYgbGFiZWwpCiB7CiAgICAg
Q0ZTdHJpbmdSZWYgdW5pcXVlSUQ7CiAgICAgQXVkaW9PYmplY3RQcm9wZXJ0eUFkZHJlc3MgYWRk
cmVzcyB7IGtBdWRpb0RldmljZVByb3BlcnR5RGV2aWNlVUlELCBrQXVkaW9EZXZpY2VQcm9wZXJ0
eVNjb3BlSW5wdXQsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OwpAQCAtNTEs
MTQgKzUxLDMwIEBAIHN0YXRpYyBib29sIGdldERldmljZUluZm8odWludDMyX3QgZGV2aWNlSUQs
IFN0cmluZyYgcGVyc2lzdGVudElELCBTdHJpbmcmIGxhYmVsCiAgICAgcGVyc2lzdGVudElEID0g
dW5pcXVlSUQ7CiAgICAgQ0ZSZWxlYXNlKHVuaXF1ZUlEKTsKIAotICAgIENGU3RyaW5nUmVmIGxv
Y2FsaXplZE5hbWU7Ci0gICAgYWRkcmVzcyA9IHsga0F1ZGlvT2JqZWN0UHJvcGVydHlOYW1lLCBr
QXVkaW9PYmplY3RQcm9wZXJ0eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1l
bnRNYXN0ZXIgfTsKLSAgICBkYXRhU2l6ZSA9IHNpemVvZihsb2NhbGl6ZWROYW1lKTsKLSAgICBl
cnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShzdGF0aWNfY2FzdDxVSW50MzI+KGRldmlj
ZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJmxvY2FsaXplZE5hbWUpOwor
ICAgIENGU3RyaW5nUmVmIGxvY2FsaXplZE5hbWUgPSBudWxscHRyOworICAgIEF1ZGlvT2JqZWN0
UHJvcGVydHlTY29wZSBzY29wZSA9IHR5cGUgPT0gQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6
TWljcm9waG9uZSA/IGtBdWRpb0RldmljZVByb3BlcnR5U2NvcGVJbnB1dCA6IGtBdWRpb0Rldmlj
ZVByb3BlcnR5U2NvcGVPdXRwdXQ7CisgICAgYWRkcmVzcyA9IHsga0F1ZGlvRGV2aWNlUHJvcGVy
dHlEYXRhU291cmNlLCBzY29wZSwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07
CisgICAgdWludDMyX3Qgc291cmNlSUQ7CisgICAgZGF0YVNpemUgPSBzaXplb2Yoc291cmNlSUQp
OworICAgIGVyciA9IEF1ZGlvT2JqZWN0R2V0UHJvcGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQz
Mj4oZGV2aWNlSUQpLCAmYWRkcmVzcywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmc291cmNlSUQp
OworICAgIGlmICghZXJyKSB7CisgICAgICAgIEF1ZGlvVmFsdWVUcmFuc2xhdGlvbiB0cmFuc2xh
dGlvbiA9IHsgJmRldmljZUlELCBzaXplb2YoZGV2aWNlSUQpLCAmbG9jYWxpemVkTmFtZSwgc2l6
ZW9mKGxvY2FsaXplZE5hbWUpIH07CisgICAgICAgIGFkZHJlc3MgPSB7IGtBdWRpb0RldmljZVBy
b3BlcnR5RGF0YVNvdXJjZU5hbWVGb3JJRENGU3RyaW5nLCBzY29wZSwga0F1ZGlvT2JqZWN0UHJv
cGVydHlFbGVtZW50TWFzdGVyIH07CisgICAgICAgIGRhdGFTaXplID0gc2l6ZW9mKHRyYW5zbGF0
aW9uKTsKKyAgICAgICAgZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nh
c3Q8VUludDMyPihkZXZpY2VJRCksICZhZGRyZXNzLCAwLCBudWxscHRyLCAmZGF0YVNpemUsICZ0
cmFuc2xhdGlvbik7CisgICAgfQorCisgICAgaWYgKGVyciB8fCAhbG9jYWxpemVkTmFtZSB8fCAh
Q0ZTdHJpbmdHZXRMZW5ndGgobG9jYWxpemVkTmFtZSkpIHsKKyAgICAgICAgYWRkcmVzcyA9IHsg
a0F1ZGlvT2JqZWN0UHJvcGVydHlOYW1lLCBrQXVkaW9PYmplY3RQcm9wZXJ0eVNjb3BlR2xvYmFs
LCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsKKyAgICAgICAgZGF0YVNpemUg
PSBzaXplb2YobG9jYWxpemVkTmFtZSk7CisgICAgICAgIGVyciA9IEF1ZGlvT2JqZWN0R2V0UHJv
cGVydHlEYXRhKHN0YXRpY19jYXN0PFVJbnQzMj4oZGV2aWNlSUQpLCAmYWRkcmVzcywgMCwgbnVs
bHB0ciwgJmRhdGFTaXplLCAmbG9jYWxpemVkTmFtZSk7CisgICAgfQorCiAgICAgaWYgKGVycikg
ewogICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihXZWJSVEMsICJDb3JlQXVkaW9DYXB0dXJlRGV2
aWNlOjpnZXREZXZpY2VJbmZvIGZhaWxlZCB0byBnZXQgZGV2aWNlIG5hbWUgd2l0aCBlcnJvciAl
ZCAoJS40cykiLCAoaW50KWVyciwgKGNoYXIqKSZlcnIpOwogICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgfQorCiAgICAgbGFiZWwgPSBsb2NhbGl6ZWROYW1lOwogICAgIENGUmVsZWFzZShsb2Nh
bGl6ZWROYW1lKTsKIApAQCAtNzAsNyArODYsNyBAQCBPcHRpb25hbDxDb3JlQXVkaW9DYXB0dXJl
RGV2aWNlPiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpjcmVhdGUodWludDMyX3QgZGV2aWNlSQog
ICAgIEFTU0VSVCh0eXBlID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUg
fHwgdHlwZSA9PSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpTcGVha2VyKTsKICAgICBTdHJp
bmcgcGVyc2lzdGVudElEOwogICAgIFN0cmluZyBsYWJlbDsKLSAgICBpZiAoIWdldERldmljZUlu
Zm8oZGV2aWNlSUQsIHBlcnNpc3RlbnRJRCwgbGFiZWwpKQorICAgIGlmICghZ2V0RGV2aWNlSW5m
byhkZXZpY2VJRCwgdHlwZSwgcGVyc2lzdGVudElELCBsYWJlbCkpCiAgICAgICAgIHJldHVybiBX
VEY6Om51bGxvcHQ7CiAKICAgICByZXR1cm4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZShkZXZpY2VJ
RCwgcGVyc2lzdGVudElELCB0eXBlLCBsYWJlbCwgZ3JvdXBJRC5pc051bGwoKSA/IHBlcnNpc3Rl
bnRJRCA6IGdyb3VwSUQpOwpAQCAtODAsNyArOTYsMjIgQEAgQ29yZUF1ZGlvQ2FwdHVyZURldmlj
ZTo6Q29yZUF1ZGlvQ2FwdHVyZURldmljZSh1aW50MzJfdCBkZXZpY2VJRCwgY29uc3QgU3RyaW5n
JgogICAgIDogQ2FwdHVyZURldmljZShwZXJzaXN0ZW50SUQsIGRldmljZVR5cGUsIGxhYmVsLCBn
cm91cElEKQogICAgICwgbV9kZXZpY2VJRChkZXZpY2VJRCkKIHsKLSAgICBzZXRFbmFibGVkKGlz
QWxpdmUoKSk7CisgICAgQXVkaW9PYmplY3RQcm9wZXJ0eUFkZHJlc3MgYWRkcmVzcyB7IGtBdWRp
b0RldmljZVByb3BlcnR5RGV2aWNlSXNBbGl2ZSwga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUds
b2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVtZW50TWFzdGVyIH07CisgICAgVUludDMyIHN0
YXRlID0gMDsKKyAgICBVSW50MzIgZGF0YVNpemUgPSBzaXplb2Yoc3RhdGUpOworICAgIGF1dG8g
ZXJyID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nhc3Q8VUludDMyPihtX2Rl
dmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJnN0YXRlKTsKKyAgICBp
ZiAoZXJyKQorICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihXZWJSVEMsICJDb3JlQXVkaW9DYXB0
dXJlRGV2aWNlOjpDb3JlQXVkaW9DYXB0dXJlRGV2aWNlKCVwKSBmYWlsZWQgdG8gZ2V0IFwiaXMg
YWxpdmVcIiB3aXRoIGVycm9yICVkICglLjRzKSIsIHRoaXMsIChpbnQpZXJyLCAoY2hhciopJmVy
cik7CisgICAgc2V0RW5hYmxlZCghZXJyICYmIHN0YXRlKTsKKworICAgIFVJbnQzMiBwcm9wZXJ0
eSA9IGRldmljZVR5cGUgPT0gQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6TWljcm9waG9uZSA/
IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlEZWZhdWx0SW5wdXREZXZpY2UgOiBrQXVkaW9IYXJkd2Fy
ZVByb3BlcnR5RGVmYXVsdE91dHB1dERldmljZTsKKyAgICBhZGRyZXNzID0geyBwcm9wZXJ0eSwg
a0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVydHlFbGVt
ZW50TWFzdGVyIH07CisgICAgQXVkaW9EZXZpY2VJRCBkZWZhdWx0SUQgPSBrQXVkaW9EZXZpY2VV
bmtub3duOworICAgIGRhdGFTaXplID0gc2l6ZW9mKGRlZmF1bHRJRCk7CisgICAgZXJyID0gQXVk
aW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAmYWRkcmVz
cywgMCwgbnVsbHB0ciwgJmRhdGFTaXplLCAmZGVmYXVsdElEKTsKKyAgICBpZiAoZXJyKQorICAg
ICAgICBSRUxFQVNFX0xPR19FUlJPUihXZWJSVEMsICJDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlKCVwKSBmYWlsZWQgdG8gZ2V0IFwiaXMgZGVmYXVsdFwiIHdp
dGggZXJyb3IgJWQgKCUuNHMpIiwgdGhpcywgKGludCllcnIsIChjaGFyKikmZXJyKTsKKyAgICBz
ZXRJc0RlZmF1bHQoIWVyciAmJiBkZWZhdWx0SUQgPT0gbV9kZXZpY2VJRCk7CiB9CiAKIFZlY3Rv
cjxBdWRpb0RldmljZUlEPiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlOjpyZWxhdGVkQXVkaW9EZXZp
Y2VJRHMoQXVkaW9EZXZpY2VJRCBkZXZpY2VJRCkKQEAgLTExNSwxNiArMTQ2LDYgQEAgUmV0YWlu
UHRyPENNQ2xvY2tSZWY+IENvcmVBdWRpb0NhcHR1cmVEZXZpY2U6OmRldmljZUNsb2NrKCkKICAg
ICByZXR1cm4gbV9kZXZpY2VDbG9jazsKIH0KIAotYm9vbCBDb3JlQXVkaW9DYXB0dXJlRGV2aWNl
Ojppc0FsaXZlKCkKLXsKLSAgICBBdWRpb09iamVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzID0g
eyBrQXVkaW9EZXZpY2VQcm9wZXJ0eURldmljZUlzQWxpdmUsIGtBdWRpb09iamVjdFByb3BlcnR5
U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxlbWVudE1hc3RlciB9OwotICAgIFVJ
bnQzMiBzdGF0ZSA9IDA7Ci0gICAgVUludDMyIGRhdGFTaXplID0gc2l6ZW9mKHN0YXRlKTsKLSAg
ICBpZiAoQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoc3RhdGljX2Nhc3Q8VUludDMyPihtX2Rl
dmljZUlEKSwgJmFkZHJlc3MsIDAsIG51bGxwdHIsICZkYXRhU2l6ZSwgJnN0YXRlKSkKLSAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiBzdGF0ZTsKLX0KLQogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgUExBVEZPUk0oTUFD
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0Nv
cmVBdWRpb0NhcHR1cmVEZXZpY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL21hYy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlLmgKaW5kZXggMjY4N2JmYzYzZjY2M2NjNjIx
YjJlZGU0M2Y0YWFlOTI2OGNlN2E1Yy4uY2RlOTFjMTg0NjEwMTQ1OGIxZTFkZWZlYjRiNzMxMmU0
YTE1MzI5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5oCkBAIC00OCw3ICs0OCw2
IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlKHVpbnQz
Ml90LCBjb25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJRCwgRGV2aWNlVHlwZSwgY29uc3QgU3RyaW5n
JiBsYWJlbCwgY29uc3QgU3RyaW5nJiBncm91cElEKTsKLSAgICBib29sIGlzQWxpdmUoKTsKIAog
ICAgIHVpbnQzMl90IG1fZGV2aWNlSUQgeyAwIH07CiAgICAgUmV0YWluUHRyPENNQ2xvY2tSZWY+
IG1fZGV2aWNlQ2xvY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyLmNwcAppbmRleCA3MDBlZWQ5ZWQ4YWYxZjk3MDVhZTQ2N2Q2OGViNmU2MTNmYjAzMjAwLi5l
NGQ1OThjN2ZkN2IyNDVjOGRlOThmZTYxZTM2MDA4NTA5NmNlMWI4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQ29yZUF1ZGlvQ2FwdHVyZURldmlj
ZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21h
Yy9Db3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKQEAgLTEyOCwyOCArMTI4LDE0IEBA
IHN0YXRpYyBib29sIGlzVmFsaWRDYXB0dXJlRGV2aWNlKGNvbnN0IENvcmVBdWRpb0NhcHR1cmVE
ZXZpY2UmIGRldmljZSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotc3RhdGljIGlubGluZSBPcHRp
b25hbDxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBnZXREZWZhdWx0Q2FwdHVyZUlucHV0RGV2aWNl
KCkKK3ZvaWQgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNjaGVkdWxlVXBkYXRlQ2Fw
dHVyZURldmljZXMoKQogewotICAgIEF1ZGlvT2JqZWN0UHJvcGVydHlBZGRyZXNzIGFkZHJlc3Mg
eyBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlLCBrQXVkaW9PYmplY3RQ
cm9wZXJ0eVNjb3BlR2xvYmFsLCBrQXVkaW9PYmplY3RQcm9wZXJ0eUVsZW1lbnRNYXN0ZXIgfTsK
LSAgICBVSW50MzIgcHJvcGVydHlTaXplID0gc2l6ZW9mKEF1ZGlvRGV2aWNlSUQpOwotICAgIEF1
ZGlvRGV2aWNlSUQgZGV2aWNlSUQgPSBrQXVkaW9EZXZpY2VVbmtub3duOwotICAgIGF1dG8gZXJy
ID0gQXVkaW9PYmplY3RHZXRQcm9wZXJ0eURhdGEoa0F1ZGlvT2JqZWN0U3lzdGVtT2JqZWN0LCAm
YWRkcmVzcywgMCwgbnVsbHB0ciwgJnByb3BlcnR5U2l6ZSwgJmRldmljZUlEKTsKLQotICAgIGlm
IChlcnIgIT0gbm9FcnIgfHwgZGV2aWNlSUQgPT0ga0F1ZGlvRGV2aWNlVW5rbm93bikKLSAgICAg
ICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4gQ29yZUF1ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRl
KGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lLCB7IH0pOwot
fQotCi1zdGF0aWMgaW5saW5lIE9wdGlvbmFsPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGdldERl
ZmF1bHRDYXB0dXJlT3V0cHV0RGV2aWNlKCkKLXsKLSAgICBBdWRpb09iamVjdFByb3BlcnR5QWRk
cmVzcyBhZGRyZXNzIHsga0F1ZGlvSGFyZHdhcmVQcm9wZXJ0eURlZmF1bHRPdXRwdXREZXZpY2Us
IGtBdWRpb09iamVjdFByb3BlcnR5U2NvcGVHbG9iYWwsIGtBdWRpb09iamVjdFByb3BlcnR5RWxl
bWVudE1hc3RlciB9OwotICAgIFVJbnQzMiBwcm9wZXJ0eVNpemUgPSBzaXplb2YoQXVkaW9EZXZp
Y2VJRCk7Ci0gICAgQXVkaW9EZXZpY2VJRCBkZXZpY2VJRCA9IGtBdWRpb0RldmljZVVua25vd247
Ci0gICAgYXV0byBlcnIgPSBBdWRpb09iamVjdEdldFByb3BlcnR5RGF0YShrQXVkaW9PYmplY3RT
eXN0ZW1PYmplY3QsICZhZGRyZXNzLCAwLCBudWxscHRyLCAmcHJvcGVydHlTaXplLCAmZGV2aWNl
SUQpOworICAgIGlmIChtX3VwZGF0ZURldmljZVN0YXRlUXVldWUuaGFzUGVuZGluZ1Rhc2tzKCkp
CisgICAgICAgIHJldHVybjsKIAotICAgIGlmIChlcnIgIT0gbm9FcnIgfHwgZGV2aWNlSUQgPT0g
a0F1ZGlvRGV2aWNlVW5rbm93bikKLSAgICAgICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4gQ29y
ZUF1ZGlvQ2FwdHVyZURldmljZTo6Y3JlYXRlKGRldmljZUlELCBDYXB0dXJlRGV2aWNlOjpEZXZp
Y2VUeXBlOjpTcGVha2VyLCB7IH0pOworICAgIG1fdXBkYXRlRGV2aWNlU3RhdGVRdWV1ZS5lbnF1
ZXVlVGFzayhbdGhpc10geworICAgICAgICByZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3Rp
ZnlJZkRldmljZXNIYXZlQ2hhbmdlZDo6Tm90aWZ5KTsKKyAgICB9KTsKIH0KIAogVmVjdG9yPENv
cmVBdWRpb0NhcHR1cmVEZXZpY2U+JiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29y
ZUF1ZGlvQ2FwdHVyZURldmljZXMoKQpAQCAtMTY1LDcgKzE1MSw3IEBAIFZlY3RvcjxDb3JlQXVk
aW9DYXB0dXJlRGV2aWNlPiYgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OmNvcmVBdWRp
b0NhcHR1cmVECiAgICAgICAgICAgICAgICAgbm90aWZ5IHw9IChwcm9wZXJ0aWVzW2ldLm1TZWxl
Y3RvciA9PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGV2aWNlcyB8fCBwcm9wZXJ0aWVzW2ldLm1T
ZWxlY3RvciA9PSBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGVmYXVsdElucHV0RGV2aWNlIHx8IHBy
b3BlcnRpZXNbaV0ubVNlbGVjdG9yID09IGtBdWRpb0hhcmR3YXJlUHJvcGVydHlEZWZhdWx0T3V0
cHV0RGV2aWNlKTsKIAogICAgICAgICAgICAgaWYgKG5vdGlmeSkKLSAgICAgICAgICAgICAgICBD
b3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6c2luZ2xldG9uKCkucmVmcmVzaEF1ZGlvQ2Fw
dHVyZURldmljZXMoTm90aWZ5SWZEZXZpY2VzSGF2ZUNoYW5nZWQ6Ok5vdGlmeSk7CisgICAgICAg
ICAgICAgICAgQ29yZUF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNpbmdsZXRvbigpLnNjaGVk
dWxlVXBkYXRlQ2FwdHVyZURldmljZXMoKTsKICAgICAgICAgfTsKIAogICAgICAgICBBdWRpb09i
amVjdFByb3BlcnR5QWRkcmVzcyBhZGRyZXNzID0geyBrQXVkaW9IYXJkd2FyZVByb3BlcnR5RGV2
aWNlcywga0F1ZGlvT2JqZWN0UHJvcGVydHlTY29wZUdsb2JhbCwga0F1ZGlvT2JqZWN0UHJvcGVy
dHlFbGVtZW50TWFzdGVyIH07CkBAIC0yMjMsMTAgKzIwOSw2IEBAIHN0YXRpYyBpbmxpbmUgVmVj
dG9yPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGNvbXB1dGVBdWRpb0RldmljZUxpc3QoKQogCiAg
ICAgVmVjdG9yPENvcmVBdWRpb0NhcHR1cmVEZXZpY2U+IGF1ZGlvRGV2aWNlczsKIAotICAgIGF1
dG8gZGVmYXVsdElucHV0RGV2aWNlID0gZ2V0RGVmYXVsdENhcHR1cmVJbnB1dERldmljZSgpOwot
ICAgIGlmIChkZWZhdWx0SW5wdXREZXZpY2UpCi0gICAgICAgIGF1ZGlvRGV2aWNlcy5hcHBlbmQo
V1RGTW92ZSgqZGVmYXVsdElucHV0RGV2aWNlKSk7Ci0KICAgICAvLyBNaWNyb3Bob25lcwogICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZGV2aWNlQ291bnQ7IGkrKykgewogICAgICAgICBBdWRp
b09iamVjdElEIGRldmljZUlEID0gZGV2aWNlSURzW2ldOwpAQCAtMjM5LDEwICsyMjEsNiBAQCBz
dGF0aWMgaW5saW5lIFZlY3RvcjxDb3JlQXVkaW9DYXB0dXJlRGV2aWNlPiBjb21wdXRlQXVkaW9E
ZXZpY2VMaXN0KCkKICAgICAgICAgICAgIGF1ZGlvRGV2aWNlcy5hcHBlbmQoV1RGTW92ZShtaWNy
b3Bob25lRGV2aWNlLnZhbHVlKCkpKTsKICAgICB9CiAKLSAgICBhdXRvIGRlZmF1bHRPdXRwdXRE
ZXZpY2UgPSBnZXREZWZhdWx0Q2FwdHVyZU91dHB1dERldmljZSgpOwotICAgIGlmIChkZWZhdWx0
T3V0cHV0RGV2aWNlKQotICAgICAgICBhdWRpb0RldmljZXMuYXBwZW5kKFdURk1vdmUoKmRlZmF1
bHRPdXRwdXREZXZpY2UpKTsKLQogICAgIC8vIFNwZWFrZXJzCiAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBkZXZpY2VDb3VudDsgaSsrKSB7CiAgICAgICAgIEF1ZGlvT2JqZWN0SUQgZGV2aWNl
SUQgPSBkZXZpY2VJRHNbaV07CkBAIC0yODUsMjYgKzI2MywyNyBAQCB2b2lkIENvcmVBdWRpb0Nh
cHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcyhOb3RpZnlJZkRl
dmljZXNIYQogICAgIGJvb2wgaGF2ZURldmljZUNoYW5nZXMgPSBhdWRpb0RldmljZXMuc2l6ZSgp
ICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXMuc2l6ZSgpOwogICAgIGlmICghaGF2ZURldmlj
ZUNoYW5nZXMpIHsKICAgICAgICAgZm9yIChzaXplX3QgY3B0ciA9IDA7IGNwdHIgPCBhdWRpb0Rl
dmljZXMuc2l6ZSgpOyArK2NwdHIpIHsKLSAgICAgICAgICAgIGlmIChhdWRpb0RldmljZXNbY3B0
cl0udHlwZSgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0udHlwZSgpIHx8IGF1
ZGlvRGV2aWNlc1tjcHRyXS5kZXZpY2VJRCgpICE9IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXNb
Y3B0cl0uZGV2aWNlSUQoKSB8fCBhdWRpb0RldmljZXNbY3B0cl0uZW5hYmxlZCgpICE9IG1fY29y
ZUF1ZGlvQ2FwdHVyZURldmljZXNbY3B0cl0uZW5hYmxlZCgpKSB7CisgICAgICAgICAgICBhdXRv
JiBvbGREZXZpY2UgPSBtX2NvcmVBdWRpb0NhcHR1cmVEZXZpY2VzW2NwdHJdOworICAgICAgICAg
ICAgYXV0byYgbmV3RGV2aWNlID0gYXVkaW9EZXZpY2VzW2NwdHJdOworICAgICAgICAgICAgaWYg
KG5ld0RldmljZS50eXBlKCkgIT0gb2xkRGV2aWNlLnR5cGUoKSB8fCBuZXdEZXZpY2UuZGV2aWNl
SUQoKSAhPSBvbGREZXZpY2UuZGV2aWNlSUQoKSB8fCBuZXdEZXZpY2UuaXNEZWZhdWx0KCkgIT0g
b2xkRGV2aWNlLmlzRGVmYXVsdCgpIHx8IG5ld0RldmljZS5lbmFibGVkKCkgIT0gb2xkRGV2aWNl
LmVuYWJsZWQoKSB8fCBuZXdEZXZpY2UuaXNEZWZhdWx0KCkgIT0gb2xkRGV2aWNlLmlzRGVmYXVs
dCgpKQogICAgICAgICAgICAgICAgIGhhdmVEZXZpY2VDaGFuZ2VzID0gdHJ1ZTsKLSAgICAgICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KICAgICBpZiAo
IWhhdmVEZXZpY2VDaGFuZ2VzKQogICAgICAgICByZXR1cm47CiAKKyAgICBzdGQ6OnNvcnQoYXVk
aW9EZXZpY2VzLmJlZ2luKCksIGF1ZGlvRGV2aWNlcy5lbmQoKSwgW10gKGF1dG8mIGZpcnN0LCBh
dXRvJiBzZWNvbmQpIC0+IGJvb2wgeworICAgICAgICByZXR1cm4gZmlyc3QuaXNEZWZhdWx0KCkg
JiYgIXNlY29uZC5pc0RlZmF1bHQoKTsKKyAgICB9KTsKICAgICBtX2NvcmVBdWRpb0NhcHR1cmVE
ZXZpY2VzID0gV1RGTW92ZShhdWRpb0RldmljZXMpOwogCiAgICAgbV9jYXB0dXJlRGV2aWNlcy5j
bGVhcigpOwogICAgIG1fc3BlYWtlckRldmljZXMuY2xlYXIoKTsKICAgICBmb3IgKGF1dG8mIGRl
dmljZSA6IG1fY29yZUF1ZGlvQ2FwdHVyZURldmljZXMpIHsKLSAgICAgICAgQ2FwdHVyZURldmlj
ZSBjYXB0dXJlRGV2aWNlIHsgZGV2aWNlLnBlcnNpc3RlbnRJZCgpLCBkZXZpY2UudHlwZSgpLCBk
ZXZpY2UubGFiZWwoKSwgZGV2aWNlLmdyb3VwSWQoKSB9OwotICAgICAgICBjYXB0dXJlRGV2aWNl
LnNldEVuYWJsZWQoZGV2aWNlLmVuYWJsZWQoKSk7CiAgICAgICAgIGlmIChkZXZpY2UudHlwZSgp
ID09IENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmUpCi0gICAgICAgICAgICBt
X2NhcHR1cmVEZXZpY2VzLmFwcGVuZChXVEZNb3ZlKGNhcHR1cmVEZXZpY2UpKTsKKyAgICAgICAg
ICAgIG1fY2FwdHVyZURldmljZXMuYXBwZW5kKGRldmljZSk7CiAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgIG1fc3BlYWtlckRldmljZXMuYXBwZW5kKFdURk1vdmUoY2FwdHVyZURldmljZSkpOwor
ICAgICAgICAgICAgbV9zcGVha2VyRGV2aWNlcy5hcHBlbmQoZGV2aWNlKTsKICAgICB9CiAKICAg
ICBpZiAobm90aWZ5ID09IE5vdGlmeUlmRGV2aWNlc0hhdmVDaGFuZ2VkOjpOb3RpZnkpIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9Db3JlQXVk
aW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggNWU5NjYyYmY0
Mjc1OWI2ZTVjZTI5OWQ1MzQ1ZGNmYjM1NWFhYjM0MS4uZjBiMjFhNGFiNTFhYTVlNTFhODRjNzA1
ODc2YzBhY2Q0OTBjYzI3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0NvcmVBdWRpb0NhcHR1cmVEZXZpY2VN
YW5hZ2VyLmgKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2UuaCIK
ICNpbmNsdWRlICJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIgorI2luY2x1ZGUgIkdlbmVyaWNUYXNr
UXVldWUuaCIKICNpbmNsdWRlIDxDb3JlQXVkaW8vQ29yZUF1ZGlvLmg+CiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC01NywxMCArNTgsMTIgQEAg
cHJpdmF0ZToKIAogICAgIGVudW0gY2xhc3MgTm90aWZ5SWZEZXZpY2VzSGF2ZUNoYW5nZWQgeyBO
b3RpZnksIERvTm90Tm90aWZ5IH07CiAgICAgdm9pZCByZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNl
cyhOb3RpZnlJZkRldmljZXNIYXZlQ2hhbmdlZCk7CisgICAgdm9pZCBzY2hlZHVsZVVwZGF0ZUNh
cHR1cmVEZXZpY2VzKCk7CiAKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9jYXB0dXJlRGV2
aWNlczsKICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9zcGVha2VyRGV2aWNlczsKICAgICBW
ZWN0b3I8Q29yZUF1ZGlvQ2FwdHVyZURldmljZT4gbV9jb3JlQXVkaW9DYXB0dXJlRGV2aWNlczsK
KyAgICBHZW5lcmljVGFza1F1ZXVlPFRpbWVyPiBtX3VwZGF0ZURldmljZVN0YXRlUXVldWU7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>